论文地址:a survey
URL或者说恶意网站,通过劫持用户信息、发布垃圾信息或诱导用户受骗等方式,使用户收到经济损失,或者信息泄露。所以需要探测到。传统方法利用黑名单的方式,可以通过快速查询判断链接的好坏,同时不断添加新的恶意url信息,然而,这种方式过于被动,因为URL可以随时生成,而黑名单的却不能及时更新,而且也不能保证完全的覆盖。所以需要采用机器学习的方法进行分类,探测。
利用机器学习,首先需要足够的训练样本(黑名单);然后是特征的提取,主要是文本特征(string,n-gram等)和host信息(地址,主机信息等),特征的表达是关键问题,需要能够反应出特点,从而优化分类;最后训练,可用的分类算法很多,比如SVM,NB等等,但是需要考虑数据(特征)维度的问题,比如当以string为特征的时候。所以重点在于对于特征的选择表示和算法学习开发。
主要方法:黑名单;启发式;机器学习(不同特征,不同算法)
黑名单:简单,高效;无法全部覆盖,快速更新
启发式:类似黑名单(url签名),基于行为识别和攻击类型签名(异常访问,重复,重定向等)。可以放在新url(可更新),覆盖更窄(部分攻击类型),也无法识别新的攻击行为,
机器学习:分析URL信息和对应网页内容。提取良好的表示特征,训练预测模型,基于恶意和良性url样本。特征又分为动态特征和静态特征。静态分析不运行网页代码,只分析文本url string ,host信息和源码;动态需要对系统进行监控,分析序列行为。
首要的是将URL信息转换为特征向量,对于信息的不同类型,采用不同的方法。利用爬虫技术得到信息,lexical information (length of URL, the words used in the URL, etc.) to host-based information (WHOIS info, IP address, location, etc.).——训练二分类,最小化损失函数。
特征:特征收集,特征表示。
可用特征包括:Blacklist Features, URL-based Lexical Features, Host-based features,Content-based Features, and Others (Context, Popularity, etc.).
1,启发的黑名单特征:判断url的变种,包括名称,域名,词典等。
2,语法特征:统计属性,长度,组件长度,特殊字符数量(BoW,取权重),无法应对新词 ——》 提高抵抗力,提出新特征,比如文件名,领域特征等。还有复杂度分析(相似度临近)
3,host特征:包括host地址,身份和管理方式(属性)等,IP Address properties, WHOIS information(注册信息,人,时间等),, Location, Domain Name Properties, and Connection Speed.;DNS日期和可信度
4,内容特征:HTML,JavaScript,控件,视觉(图片等)特征,
5,其他特征:short URL ,需要用到上下文信息,点击数据流,click信息(分享,点击的用户信息),流行度等。
特征收集和提取,是个资源密集的任务。特征比如:
算法:
批处理——可以对全部数据进行训练
带标签训练:
最小化损失函数,预测函数f可以是线性或非线性。以SVM和LR为代表。
也包括NB,决策树等;集成学习,多标签学习(分类)
在线学习:
(i) First-order online algorithms, and (ii) Second-order online algorithms
前者比如感知器、在线梯度下降、等,直接利用一阶信息对参数向量进行更新;
特征表示:
特征选择——过滤(filter)和打包(wrapper),基于收益得分,特诊独立选择;稀疏特征优化等。
所以,主要问题:信息的收集,特征的表示和处理,算法的选择(在线更新)等。