钓鱼网站的多特征维度检测

admin 2023年10月30日02:06:08评论17 views字数 7146阅读23分49秒阅读模式


01
引言

随着钓鱼攻击数量增多,钓鱼网站的检测与防御逐渐成为维护网络空间安全的重要研究课题。尽管黑白名单机制可以通过对钓鱼网站域名的快速匹配实现高效、快捷、准确的钓鱼防御效果,然而黑白名单机制过度依赖知识库的更新,维护成本较高。如今钓鱼攻击通常具有增长迅速、复制成本低、生命周期短等特点。Oest A.等人[1]研究显示,钓鱼网站从诞生到消亡的全过程生存期平均只有21小时。而从钓鱼网站上线到进入黑名单存在空档期,47%-83%的钓鱼网站在12小时后才被更新到黑名单中[2]。这就催生出了大量生存周期短的0-day钓鱼网站,对网络空间安全带来了极大的威胁。

当前,各种钓鱼网站检测技术蓬勃发展,但大多存在低分类准确性、弱时效性或弱适应性等一个或多个缺陷。黑白名单机制存在后效性,即钓鱼网站的发现往往在受害者出现以后,已经难以适应当前钓鱼网站低成本、数量激增的发展趋势。传统的规则性或启发式钓鱼网站检测技术也大多存在适应性差及防御能力弱等缺点。因此,本文采取主动的、基于深度学习的反钓鱼网站技术,旨在克服前人检测技术方法的不足,设计一个鲁棒性强,综合性强,融合多种检测方法的优点的模型。


02
模型设计

我们设计了一套端到端的钓鱼网站检测架构,用户在输入端仅需输入希望检测的可疑网站URL地址,由架构负责完整的网站数据爬取、数据处理、模型预测与输出结果的操作。完整的钓鱼网站检测架构包含三大部分,数据获取部分、特征预处理部分和神经网络部分。检测模型结构见图1。

用户在输入端输入可疑网站的URL地址,如“https://www.baidu.com/”,数据处理部分根据用户输入地址利用webdriver获取网站的HTML文档及网页截图,即网站的文本数据与图像数据。接下来,特征处理部分将对获取的数据进行特征提取的预处理,包括自定义特征、文本特征与图像特征。提取出的三种特征信息将作为神经网络的输入数据送入神经网络,由模型计算并输出分类结果。

钓鱼网站的多特征维度检测

图1 多特征检测模型结构


03
特征设计

3.1自定义特征

首先,我们观察并分析了钓鱼网站和合法网站的数据特征,并手动选择了一些在钓鱼数据和合法数据之间表现出明显的分布差异的自定义特征,这些自定义的特征可以帮助模型进行分类。这些特征如表1所示。这些特征项分为图像类、HTML类和URL类。除了常见的钓鱼特征项,我们还增设了新的特征项,包括与截图相关的特征项"网页截图白色区域比例",以及与超链接相关的特征项"异域超链接比例"和"超链接总数量"。以上自定义特征将被作为训练与测试集的主干输入数据送入8层Relu激活的全连接神经网络,作为钓鱼检测网络的主要分类依据。

表1 自定义特征

钓鱼网站的多特征维度检测

3.2文本特征

URL和HTML文档这两种具有序列性质的带语义的特征数据便是钓鱼网站检测模型文本特征的两个来源。文本特征的提取主要分为三个步骤:分词、建立词典以及序列补全。文本特征提取与文本特征网络结构如图2所示。

(1)分词

分词任务是自然语言处理领域的经典基础任务之一。文本作为一种非结构化的数据,其本身必须先被转化为结构化的序列,进而才能被模型识别与运算。序列化的第一步就是分词,即将文本分割为粒度始终,能表示准确语义的词序列。在本任务中,需要被分词的文本数据是网站URL与HTML文档,其作为代码形式的文本数据,天然具有易分词的特性。因此,为了提升文本特征提取的效率,我们仅仅简单地采取标点符号分词的方式获取词序列。以URL“https://novelschools.com/home/aiares/”为例,分词后的词序列为[“https”,“novelschools”,“com”,“home”,“aiares”]。
然而,由于HTML文档文本量级比较大,标点分词会导致分出的词序列过长、词典过大等问题。我们基于取舍性的考虑,只保留了HTML分词序列的标签部分,而抛弃标签间的文本。如“<title>FujiElectric</title>”,分词后的词集为['<title>', '</title>']。这样,在有效降低数据复杂度的同时,抛弃了信息密度较低的具体文本,而保留了网站的HTML标签的基本架构。

(2)构建词典

构建词典,即对于完整数据集中分词后的词序列数据建立与具体数值的一一映射关系,通过将词映射为具体数值才能作为模型的输入。对于建立的词典我们还进行了过滤,去除了出现次数小于2的单词,并设置了最大词典大小,只保留出现频率最高的256个词。

(3)序列补全

为了规范化输入模型的序列数据,我们在利用词典映射为词序列后还需要标准化词序列的长度,对短序列进行0值补全,对长序列进行截断处理。经过对数据的观察,我们设定URL数据的标准化长度为16,HTML的标准化长度为256。

钓鱼网站的多特征维度检测

图2 文本特征提取与神经网络

经过以上文本特征提取步骤后,每一个网站的URL与HTML都会被转化为长度分别为16与256的整型数值序列,作为钓鱼检测模型文本网络部分的标准化输入。文本特征网络为辅助特征网络之一,实现文本特征的字级特征分析与词级特征分析,每种特征分析都由Embedding层与文本特征分析的循环神经网络层组成。同时,两种文本特征URL与HTML文档又分别享有一个参数独立的文本特征网络。
Embedding层的主要作用是给数据编码,实现数据降维。本文使用32维的词级Embedding和字级Embedding映射,后接隐藏层维度为32的LSTM,分别提取分析URL与HTML的文本特征,最终输出两个32维的URL特征向量与HTML特征向量。


3.3图像特征

图像特征是第二种钓鱼网站检测的辅助特征。由于钓鱼网站不可避免地具有视觉合理性和与目标网站视觉相似性的要求,其向普通用户所展示的视觉页面必须与合法网站在设计布局、色彩主题等一致,故目前理论上没有能在网页截图方面实现规避钓鱼检测模型的方案。作为自定义特征的辅助特征,使用图像特征具有增强模型适应性、降低被反钓鱼侦察手段破解的概率的重要能力。

钓鱼数据集网页截图如图3所示。可以观察到,图片尺寸相对较大,各网页布局元素较小。在这种情况下,直接将原始图片送入卷积神经网络进行处理是不可取的,因为卷积神经网络存在下采样,如果网络直接进行下采样,很容易丢失信息,难以从中学习提取特征,不利于网络的训练。因而,对网页截图进行预处理来预先分割提取网页截图中信息量较大的区域,如网页的品牌图标、登陆操作输入栏位等,再通过神经网络特征提取分析是很有必要的。

钓鱼网站的多特征维度检测

网页截图示例

Geng G.等[3]通过直接提取网页标题栏的icon图标获取图像特征,具有提取简单,数据量小,易处理等优点,但可能存在无icon的网站。另一种方案是利用深度学习的目标检测与图像分割的相关算法对网页截图进行预分割,但这种方法实现较为复杂,且需要大量的框选数据进行训练,不适用于钓鱼网站检测的课题。本文参考Dooremaal B. V.等[4]的基于图形学数字图像处理的网页截图分割方案并对其进行改进,我们的分割方案分为以下四个步骤:

(1) 图像二值化。图像二值化的作用主要是区分图像前景与后景信息,作为后续区域分割的参考依据。首先我们需要获取图像的灰度版本,并使用阈值算法根据获得的灰度图来构建直方图,最后转化为纯黑白的二值化图像。图像二值化的关键在于阈值算法,我们测试了otsu算法[5]、niblack算法和sauvola算法(见图4),并最终使用前后

钓鱼网站的多特征维度检测

图4 二值化

景分割效果较好的ostu算法。并最终使用前后景分割效果较好的ostu算法。ostu算法的原理是,对于分割阈值钓鱼网站的多特征维度检测,将所有像素分为小于钓鱼网站的多特征维度检测钓鱼网站的多特征维度检测和大于钓鱼网站的多特征维度检测钓鱼网站的多特征维度检测两类,计算两类的均值与全局均值钓鱼网站的多特征维度检测钓鱼网站的多特征维度检测钓鱼网站的多特征维度检测,假设像素被分为两类的概率分别为钓鱼网站的多特征维度检测钓鱼网站的多特征维度检测,则有

钓鱼网站的多特征维度检测

由方差的概念得类间方差钓鱼网站的多特征维度检测

钓鱼网站的多特征维度检测

只需求得分割阈值钓鱼网站的多特征维度检测使得类间方差钓鱼网站的多特征维度检测最大即可。


(2) 形态学闭运算。形态学闭运算可以达到相邻前景区域融合的效果。首先对前景(白色)区域的边界进行扩张使得相邻的区域连接起来,再进行收缩,使得未连接的区域分开。图5为形态学闭运算核尺寸设置为钓鱼网站的多特征维度检测的运算结果。

钓鱼网站的多特征维度检测

图5 形态学闭运算

(3) 拓扑结构分析。在这一步中,我们对闭运算后的图像的每一个独立连通区域画出边界线,再对每一条边界线画出包围的外切矩形,获取图像分割的区域。但这样分割出的区域还是不够的,因为存在黑底白字的部分没有被合理分割出来。故我们从第一步图像二值化开始做反相操作,再重复上述闭运算与拓扑结构分析操作并与第一次结果合并。最终效果见图6。

钓鱼网站的多特征维度检测

图6 拓扑结构分析

(4) 过滤。通过规则性的方法,筛选掉有更高概率无有效信息的区域。这一步我们控制分割出矩形区域的大小,长或宽小于20像素的往往是信息含量低的文字部分,总面积大于钓鱼网站的多特征维度检测的区域分割粒度又过大,故对这些区域进行去除。过滤后分割结果见图7。

钓鱼网站的多特征维度检测

图7 过滤

通过以上步骤即可获取一张网页截图的多个分割区域,之后我们将每个区域标准化大小为钓鱼网站的多特征维度检测,保持长宽比例不变,不足区域用黑色补齐,就可以作为钓鱼检测模型的图像特征送入深度学习神经网络(图8)。

钓鱼网站的多特征维度检测

图8 图像特征网络

图像特征网络采用注意力机制优化的卷积神经网络,实现网页截图分割区域的图像特征提取与分析。由于网页截图分割区域,本文设置固定从分割区域中随机选取5张图片,若数量不足则用黑色图片代替。故网络输入为每个网站钓鱼网站的多特征维度检测钓鱼网站的多特征维度检测的矩阵,5张图片共享同一个卷积神经网络,即网络参数对每张图片相同。
卷积神经网络主要由四层核大小为钓鱼网站的多特征维度检测、步长为钓鱼网站的多特征维度检测的卷积层组成,每层后接一个钓鱼网站的多特征维度检测激活层、钓鱼网站的多特征维度检测注意力层和钓鱼网站的多特征维度检测的最大池化层。钓鱼网站的多特征维度检测用于获取通道维度与空间维度的注意力信息,提升网络的特征提取能力。最后获得的特征图被展平后送入一层的全连接映射层,映射为32维的图像特征向量。


3.4分类网络

上述三种特征网络接受三种预处理特征的输入数据,并输出长度为32的特征向量。特征融合后,分类网络计算并输出最终分类结果。特征向量首先被拼接起来,然后输入一个三层全连接神经网络进行特征融合和分类。全连接神经网络的输入向量大小为32 × 特征向量数,然后使用ReLU激活函数。最后,网络输出一个二维向量。通过Softmax函数计算得出分类结果,即网站属于某一类的置信度。


04
实验

4.1数据集与训练

机器学习或深度学习算法最关键的资源就是数据集,能否获取一个覆盖率高,可信度高的数据集对检测模型的训练至关重要。常见的公开的钓鱼数据来源,如PhishTank[6]、OpenPhish[7]、PhishStats[8]等,均具有较强的实时性,即保持定时更新,保证其所公开的链接为最新发现或用户提交的钓鱼网站。我们对上述三个网站的公开钓鱼数据集进行以天为单位的爬取工作,获取并保存了公开数据集中提供的钓鱼网站URL,并利用URL集合访问并获取网站的具体数据,包括网站的截图和HTML文档,来构建我们自己的钓鱼数据集,用于后续的模型训练与测试。
Alexa Top Sites[9]是一个公开web服务,提供按Alexa Traffic Rank排序的网站列表。研究与开发人员可以利用此web服务,浏览并使用列出的顶级网站数据。尽管Alexa已经于2022年5月关停,其仍然是具有可信度的合法网站数据来源。我们获取了Alexa公开的Top Sites网站数据集,并采取与爬取钓鱼网站相同的方法获取合法网站的网页截图和HTML文档,构建了与钓鱼数据集相当的合法网站数据集。
本文采取钓鱼网站的多特征维度检测分布数据集,其中包含钓鱼网站与合法网站各3000个样本,并采用钓鱼网站的多特征维度检测随机划分训练集与测试集大小。训练参数设置上,训练批大小设置为32(不使用图像特征网络时批大小扩张为256),初始学习率设置为0.01,训练优化器使用Adam,损失函数为交叉熵。


4.2测试结果与分析

为了对比分析网络的分类性能,本文实现了支持向量机与随机森林对自定义特征部分进行分类测试,还对前人的模型进行测试[10][11][12],数据集设置与本文的训练网络保持一致。此外,本文除了完整的多特征信息钓鱼检测网络,还对主干的自定义特征网络以及文本特征与图像特征分别作为辅助网络情况下进行对比测试。完整的对比测试结果见表2。

表2 训练测试结果

钓鱼网站的多特征维度检测

通过结果分析,对于简单的自定义特征分析,随机森林算法的分类检测效果相对最好,优于支持向量机和深度学习神经网络。但随机森林算法的多特征融合能力相对较弱,适应性较差,在多特征条件下的分类性能不如神经网络。

在这两个辅助特征中,文本特征包含了网站的完整代码信息,具有更显著的钓鱼特征,如URL长度和复杂性,其分类性能优于图像特征。然而,由于"视觉合理性"这一客观因素,即钓鱼网站必须在视觉上合理以欺骗用户,图像特征在理论上更能抵御反钓鱼攻击,也是钓鱼检测模型中不可或缺的一部分。

自定义特征方面,为了验证各项自定义特征对网络分类的实际贡献,我们利用随机森林算法的特性,计算了每种自定义特征的贡献权重,如表3所示。由表可以看出,“异域超链接比例”、“超链接总数量”、“HTML长度”和“域名所含点数”是相对贡献值最高的几种特征。我们可以推断认为这四种特征在钓鱼网站与合法网站的分布上有较大的不同。比如“异域超链接比例”和“超链接总数量”在钓鱼网站上体现为:由于钓鱼网站往往为了降低成本,只开发网站的主页面或登陆页面,所以只要钓鱼网站页面内存在超链接,往往100%指向其它的域名,且大多数指向自身所仿冒的目标网站本身的链接。再比如,为了仿冒目标网站的域名(如“www.paypal.com”),钓鱼网站的域名有时会基于目标域名作扩充(如“www.paypal.com.as2.2u.se”),其导致的结果就是域名所含点数或URL长度会较长。特别的,“域名是否为IP地址”这一项贡献为0的主要原因是本文训练所用数据集中不包含域名为IP地址的数据项,而实际网络空间中,钓鱼域名也常以IP地址形式出现。

表3 自定义特征分类权重(随机森林)

钓鱼网站的多特征维度检测

05
总结

在本文中,我们建立了一个钓鱼网站和合法网站训练/测试数据集,并通过提取多特征数据对其进行预处理;我们设计、实现并测试了一个基于深度学习的多特征钓鱼网站检测模型。模型在测试集上表现优秀,优于其它机器学习算法,可以作为黑白名单机制的有效补充,加固反钓鱼网站的防火墙。


参考文献

1. Oest A, Zhang P, Wardman B, et al. Sunrise to sunset: Analyzing the end-to-end life cycle and effectiveness of phishing attacks at scale[C]//29th {USENIX} Security Symposium ({USENIX} Security 20). 2020: 361-377.


2. Sheng S ,  Wardman B ,  Warner G , et al. An Empirical Analysis of Phishing Blacklists[J].  2009.


3. Geng G G ,  Lee X D ,  Wang W , et al. Favicon - A clue to phishing sites detection[C]// 2013 eCrime Researchers Summit (eCRS). IEEE, 2013.


4. Dooremaal B V ,  Burda P ,  Allodi L , et al. Combining Text and Visual Features to Improve the Identification of Cloned Webpages for Early Phishing Detection[C]// ARES 2021: The 16th International Conference on Availability, Reliability and Security. 2021:1-10 .


5. Otsu N . A Threshold Selection Method from Gray-Level Histograms[J]. IEEE Transactions on Systems Man & Cybernetics, 2007, 9(1):62-66.


6. PhishTank[EB/OL]. https://phishtank.org/.


7. OpenPhish[EB/OL]. https://openphish.com/.


8. PhishStats[EB/OL]. https://phishstats.info/.


9. Alexa Top Sites Service[EB/OL]. https://www.alexa.com/topsites.


10. Zhang L ,  Zhang P ,  Liu L , et al. Multiphish: Multi-Modal Features Fusion Networks for Phishing Detection[C]// ICASSP 2021 - 2021 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2021: 3520-3524.


11. Bahnsen A C ,  Bohorquez E C ,  Villegas S , et al. Classifying phishing URLs using recurrent neural networks[C]// Electronic Crime Research. IEEE, 2017.


12. Opara C ,  Wei B ,  Chen Y . HTMLPhish: Enabling Accurate Phishing Web Page Detection by Applying Deep Learning Techniques on HTML Analysis[J].  2019.

钓鱼网站的多特征维度检测


       

原文始发于微信公众号(风眼实验室):钓鱼网站的多特征维度检测

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年10月30日02:06:08
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   钓鱼网站的多特征维度检测http://cn-sec.com/archives/2152838.html

发表评论

匿名网友 填写信息