议题作者:nickchang
信息来源:邪恶八进制信息安全团队(
www.eviloctal.com)
最近想选一个毕业论文课题,认识一个博士生叫我和他研究spyware, 课题是根据EULA分析一个软件有没有包含间谍软件的功能,比如上传用户信息,弹出广告等等。EULA是最终用户许可协议,就是在安装一个软件的时候你要填我同意或者我不同意的那个,大多数用户是不看的,有一个例子是AUTOCAD的EULA里面就有一句“This Agreement and the applicable User Documentation constitute the entire agreement between us and supersede any other previous or contemporaneous communications, agreements, representations, or advertising with respect to the Software and User Documentation.”说明它会弹出广告,而至于kazaa的EULA中,“We share certain anonymous information we collect in aggregated form with some of our partners and prospective partners.”说明它会收集用户信息。
从这些文本中得到信息用来判断这个软件是间谍软件的百分比。一开始我想用分类垃圾邮件的naive bayes算法来做,结果发现根本不行,因为在垃圾邮件中,作者往往是为了宣传某个主题,所以关键字出现的频率会很高,而在EULA中,作者并不愿意将自己软件有害的一面过分宣扬,以至于关键字的频率非常低,远远达不到naive bayes分类的要求。由于对人工智能的算法不是很熟悉,希望和大家讨论一下采用哪些算法比较适合于这个领域。