http://www.paper.edu.cn
基于 TF-IDF 和 SVM 的恶意 URL 识别
莫玉力,亓峰
北京邮电大学网络与交换技术国家重点实验室,北京 100876
摘要:随着互联网尤其是移动互联网的快速发展,全球范围内出现了越来越多带欺诈和破坏性
质的站点。本文通过分析 URL 的文本特征和站点特征,提出了基于机器学习的 URL 检测方
案,用 TF-IDF 算法细化了 URL 的站点特征,并结合以上特征用基于 RBF 核的 SVM 进行
URL 安全检测,得到了 96%的准确率和 0.95 的 F1 分数。
关键词:网络安全;URL 检测;TF-IDF;SVM
中图分类号: TP393.4
Malicious URL detection based on TF-IDF and
SVM
MO Yuli, QI Feng
State Key Laboratory of Networking and Switching Technology, Beijing University of Posts
and Telecommunications, Beijing 100876
Abstract: Web vulnerabilities are on the rise especially with the use of cellphones and
mobile devices. This paper focuses on a machine learning solution that identifies malicious
URLs using a combination of URL lexical features and host features. We use SVM with a
RBF kernel to achieve an accuracy of 0.96 and an F1 score of 0.95 with the help if TF-IDF to
detail the feature of URL token.
Key words: network security; URL detection; TF-IDF; SVM
0 引言
随着计算机网络技术的高速发展,网络犯罪行为也日益严重。根据赛门铁克 (Symentec) 公
司的 2014 年年度报告 [1],平均每 1126 个网站中就含有一个恶意网站,而每个社交网络中平
均包含 3829 个钓鱼网站。这些流氓网站之中存在着各式各样的欺诈犯罪行为,包括出售虚假
商品、开展网络钓鱼、传播病毒及木马等,对用户的信息和财产安全造成了巨大的安全隐患。
业界对此的主要防御手段之一为主动拦截,即在浏览器或软件客户端中加入安全模块,在
用户访问恶意网站之前,检测出该 URL 对应的站点为恶意站点,阻断用户对恶意站点内容的
下载和访问。
作者简介:莫玉力(1991-),男,硕士研究生,主要研究方向:网络管理,E-mail:myl2821@bupt.edu.cn 。通信作者:亓峰(1971-),
男,教授,主要研究方向:网络管理与通信软件,E-mail:qifeng@bupt.edu.cn
- 1 -
http://www.paper.edu.cn
相对于传统的黑名单检测和内容检测,学界的研究更多地集中向机器学习方向。即从 URL
对应的站点和域名信息中挖掘出特征,通过大量标注数据训练出分类器模型,再通过该模型判
断未知 URL 的安全性。本文在已有相关研究基础上,对 URL 地址进行分词处理,用 TF-IDF
算法 [2] 计算各个分词的权重作为统计特征,利用 SVM 作为分类判决模型,在 Alexa 和 url-
blacklist 提供的真实数据中取得了 96%的准确率。
1 研究现状
传统的 URL 安全检测主要基于黑名单检测。URL 黑名单通常由具有公信力的第三方网站
根据用户反馈、网络爬虫、站点内容分析等手段生成并发布,其内容为已知的恶意 URL 列表。
Web 应用、浏览器、搜索引擎等可通过黑名单来过滤 URL 地址并监控用户 URL 跳转来保护
用户上网安全。然而,黑名单列表只能给用户提供最低程度的防护,全球 URL 总数一直在不
断地增长,截止至 2014 年 6 月,全球已有近 10 亿个注册站点 [3]。期待维护一份黑名单列表
能实时更新所有的恶意 URL 是不现实的,因此,用户很可能在黑名单更新前访问未被黑名单
包含的有害 URL,遭受相关安全威胁。因此需要更为智能的判决机制来解决这一问题。
Justin Ma 等人分析 URL 的域名和站点信息,对域名进行分词处理作为选择特征,利用机
器学习算法构建了 URL 判决分类器,取得了较好的效果 [4]。但将分词作为选择特征意味着特
征值只用 0/1 二值表示,无法体现出各个分词的权重信息,对各个分词的特征描述不够准确。
Leyla Bilge 等人使用被动 DNS 分析来检测域名的安全性 [5], 使用了基于时间、基于 DNS
应答、基于 TTL 和基于简单域名信息的特征。但其对 URL 的文本特征挖掘过少,仅使用了
数字占 URL 字符比例和最长单词占 URL 比例两个特征,拥有较大改进空间。
本文将在现有的机器学习研究基础上,用 TF-IDF 算法细化分词权重特征,用 SVM 作为
判决器,以取得更好的分类判决效果。
2 数据获取
为了获取数据,本次研究用爬虫从 Alexa(http://www.alexa.cn) 收集了全球排名前 50000
的网站信息,作为正常网站数据;从 urlblacklist(http://www.urlblacklist.com/) 中收集了 50000
条 URL 数据作为恶意网站数据。从正常 URL 和恶意 URL 数据中各筛选了 20000 条作为训
练集和测试集。
3 特征提取
本研究使用了文本和站点两类特征来共同构成 URL 的特征向量。
- 2 -
3.1 文本特征
http://www.paper.edu.cn
URL 文本包括域名和资源路径,本文将 URL 的文本特征看作一个 NLP(Natural Language
Processing)[6] 问题,使用 TF-IDF 算法计算语素的权重值。
TF-IDF 是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文
件的重要程度。字词的重要性随在文件中出现的次数成正比增加,但同时会随在语料库中出现
的频率成反比下降。该算法可用以下公式定义:
tf · idf = tf (t, d) · idf (t, D)
其中 tf 为词频,idf 为逆向文件频率,D 为语料库文件。tf 和 idf 的定义如下:
tf (t, d) =
f (t, d)
max{f (w, d) : w ∈ d}
idf (t, D) = log
|D|
|{f (d, D) : t ∈ d}|
表 1和表 2举例计算了正常网站和钓鱼网站中关键语素 ccb 和非关键语素 com 的 tf-idf
值,由于恶意网站常常使用大量非关键语素混淆 URL 地址,较正常网站相比,恶意网站中关
键语素的 tf-idf 值较低,非关键语素的 tf-idf 值较高。
表 1: 正常网站与钓鱼网站的关键语素 TF-IDF 值对比
URL
语素 文档总数 文档出现次数 tf
0.333
ccb
0.250
ccb.com.phishing.com ccb
www.ccb.com
10000
10000
20
0.250
idf
2.700
2.700
tf-idf
0.899
0.675
表 2: 正常网站与钓鱼网站的 com 语素 TF-IDF 值对比
URL
语素 文档总数 文档出现次数 tf
0.333
com
ccb.com.phishing.com com
0.500
www.ccb.com
10000
10000
8528
8528
idf
0.069
0.069
tf-idf
0.023
0.035
作为对照,本次实验将同时对比使用选择特征情况下的判决结果,选择特征只是单纯地以
0/1 二值标记单词 t 是否在文档 d 中出现,其定义如下:
t ∈ d
t /∈ d
f (t, d) =
1,
0,
在本次研究中,我们抽取了 100 个语素作为词汇特征,语素中包含 50 个诸如 bank、down-
load、taobao、login、secure 等关键语素和 50 个诸如 www、com、cn、jp、en 等非关键语素。
- 3 -
http://www.paper.edu.cn
3.2 站点特征
本研究中采用的站点特征主要包含 WHOIS 和域名特征,主要包括以下几个方面:
1. 域名注册日期:域名注册越久的站点越可靠。
2. 域名是否过期:过期的域名可靠性降低。
3. 服务器与 DNS 服务器之间的 TTL :一般网站倾向于使用距服务器地理位置接近的 DNS
服务商,两者之间的 TTL 值较高。
4. 域名是否为纯 IP 地址:未注册域名的服务一般可靠性较低。
5. 域名是否为 cn 域名:cn 域名一般需要 ICP 备案,其可靠性较高。
4 实验过程
4.1 实验设计
图 1 诠释了 URL 检测的基本流程。首先获取大量的以标注 URL 训练样本,接着计算样
本中各个分词的 TF-IDF 值并抽取出特征向量,用这些特征向量训练 SVM 模型,最后用 SVM
模型对未知的 URL 进行判决。
图 1: 实验设计图
- 4 -
http://www.paper.edu.cn
4.2 实验结果
本次研究采用了基于 RBF 核的 SVM 分类器,对 40000 个 URL 进行 50/50 划分,作为
训练集和测试集。试验采用了对特征的不同类型组合:(1) 仅使用站点特征;(2) 站点特征与 URL
语素的选择特征 (0/1 特征);(3) 站点特征与 URL 语素的 TF-IDF 特征。
在本次实验中,采用准确率、召回率、精确度和 F1 分数来评价实验结果。最好的实验结果
来自于特征组合 (3),达到了 96%的正确率和 0.95 的 F1 分数。表 3 和图 2 总结了本次实验。
表 3: 三种特征选择下的判决结果
URL
仅站点特征
准确率 召回率 精确度 F1 分数
0.8499
91.1% 96.5% 75.9%
0.9309
95.6% 96.3% 90.1%
站点特征与 TF-IDF 特征 96.7% 97.2% 94.0%
0.9555
站点特征与选择特征
图 2: 结果对比图
4.3 攻击策略
根据前文可知,攻击者可以针对本次研究选择的 URL 特征和模型训练方式作出妥协,从
而欺骗过自动检测系统,然而,其中的代价是较为高昂的。例如,攻击者可以使用申请时间较
- 5 -
http://www.paper.edu.cn
长、价值较高的域名进行钓鱼攻击以绕过对其站点特征的检测,但这面临着高价值域名被封禁
的危险;攻击者可以使用不含关键语素的域名进行欺骗,克服其关键语素 TF-IDF 值低的问题,
例如使用与银行无关的域名诱骗用户银行信息,但这会增加用户对该站点的怀疑程度;攻击者
也可以使用短域名进行诈骗,增加关键语素的 TF-IDF 值和减少非关键语素的 TF-IDF 值,但
是这些短域名的价值同样非常之高。
绝对安全的判决模型是不存在的,但是本次研究提出的防御手段可以大大增加欺诈者的犯
罪成本,迫使其在犯罪行为上作出让步,甚至中止犯罪行为。
5 结论
本文分析了 URL 的地址的文本和站点特征, 利用 TF-IDF 算法对文本特征进行了优化,
并用基于 RBF 核的 SVM 对 URL 进行判决。实验对比结果表明,在恶意 URL 识别问题上,
利用机器学习算法对未知 URL 进行检测拥有极高的准确率,能有效地弥补传统检测方法的不
足。并且,TF-IDF 特征相对于传统的选择特征而言,能够更详细地描述文本特征各个语素,
给出更好的分类效果,足以应用在将来的研究和工程应用中。在将来的研究中,可以考虑选取
更多的特征词汇,进一步完善判决模型,以期待取得更好的效果。
参考文献(References)
[1] Symantec.
Internet Security Threat Report, Volume 20.
tec.com/threatreport/, 2015.
[OL]. http://www.syman-
[2] Juan Ramos. Using TF-IDF to Determine Word Relevance in Document Queries[J]. the
Journal of machine Learning research, 2003.
[3] Total
number
websites/, 2015.
of Websites[OL].
http://www.internetlivestats.com/total-number-of-
[4] Justin Ma, Lawrence K. Saul, Stefan Savage, et al. Identifying Suspicious URLs: an Appli-
cation of Large-scale Online Learning[C]. InProc. of the 26th International Conference on
Machine Learning, Montreal Canada, June, 14-18, 2009.
[5] Bilge, Leyla, Engin Kirda et al. EXPOSURE: Finding Malicious Domains Using Passive
DNS Analysis[J]. NDSS, 2011.
[6] Gobinda G. Chowdhury. Natural Language Processing[J]. Annual Review of Information
Science and Technology, 2003.
- 6 -