CN110602113A - 一种基于深度学习的层次化钓鱼网站检测方法 - Google Patents
一种基于深度学习的层次化钓鱼网站检测方法 Download PDFInfo
- Publication number
- CN110602113A CN110602113A CN201910886251.7A CN201910886251A CN110602113A CN 110602113 A CN110602113 A CN 110602113A CN 201910886251 A CN201910886251 A CN 201910886251A CN 110602113 A CN110602113 A CN 110602113A
- Authority
- CN
- China
- Prior art keywords
- url
- capsule
- layer
- phishing
- website
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 89
- 238000013135 deep learning Methods 0.000 title claims abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 14
- 239000002775 capsule Substances 0.000 claims description 106
- 238000013528 artificial neural network Methods 0.000 claims description 28
- 230000006870 function Effects 0.000 claims description 26
- 239000011159 matrix material Substances 0.000 claims description 21
- 230000004913 activation Effects 0.000 claims description 9
- 230000002457 bidirectional effect Effects 0.000 claims description 8
- 230000007246 mechanism Effects 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 7
- 230000015654 memory Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 238000012549 training Methods 0.000 claims description 7
- 230000006835 compression Effects 0.000 claims description 5
- 238000007906 compression Methods 0.000 claims description 5
- 238000010606 normalization Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000012935 Averaging Methods 0.000 claims description 3
- 230000009193 crawling Effects 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 3
- 238000010801 machine learning Methods 0.000 description 6
- 238000011897 real-time detection Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 230000007787 long-term memory Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000006403 short-term memory Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1483—Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明为基于深度学习的层次化钓鱼网站检测方法,该方法结合了URL和网页内容进行钓鱼网站检测,能够自适应地选择使用不同层次的钓鱼检测模块进行快速、准确的钓鱼网站检测。本发明首先对输入的URL进行检测,输出该URL属于钓鱼网站的概率,若所输出的概率大于预设阈值,则判断待检测网站为钓鱼网站,否则下载待检测URL对应的网页,统计所述网页的HTML标签数量,利用HTML标签列表对统计结果进行向量化,根据向量化后的HTML标签序列提取精确的网页内容特征表示,通过全连接层进行分类,得到该URL属于钓鱼网站的概率。
Description
技术领域
本发明涉及网络空间安全技术领域,具体为基于深度学习的层次化钓鱼网站检测方法。
背景技术
网络钓鱼是一种利用社会工程学以及复杂的信息技术来窃取用户隐私的网络攻击手段。攻击者通过发送有迷惑性的电子邮件或其他通讯消息来诱导用户访问事先设计好的钓鱼网站,进而引诱用户泄露其隐私如信用卡账号等数据。随着互联网的快速发展,网络钓鱼攻击技术也变得越来越复杂,对社会经济造成的损失日渐增多,如何快速有效地进行钓鱼网站检测成为了网络空间安全领域中的一个研究热点。
钓鱼网站的检测方法经历了从基于黑白名单的检测,到基于启发式规则的检测,再到当前主流的基于机器学习的检测的演变。得益于其极低的误报率,基于黑白名单的检测方法自发明以来被业界广泛地应用。但是由于基于黑白名单的检测方法具有较高的漏报率,后来研究者提出了基于启发式规则的检测方法。虽然相比于基于黑白名单的检测方法来说,基于启发式规则的检测方法具有较强的泛化能力,可以检测部分未知的钓鱼网站,但是这种方法的自适应性较差,且严重依赖所设计的启发式规则,因此在实施当中容易被攻击者规避。为了增强钓鱼网站检测方法的自适应性,研究者提出了基于机器学习的检测方法:通过从网站的URL、网页内容中提取特征,然后利用机器学习算法来进行网站分类,从而判断该网站是否属于钓鱼网站。但是这种基于机器学习的检测方法的性能严重依赖于手工特征设计的好坏,容易被攻击者规避,其泛化能力仍然不足,难以检测新型的未知钓鱼网站。
于2018年12月28日公开的、公开号为CN109101552A的中国发明专利申请“一种基于深度学习的钓鱼网站URL检测方法”提出了一种针对钓鱼网站URL的检测方案。但该专利仅针对网站URL进行检测,无法满足对短链接(社交软件如微博,会将较长的URL进行压缩,得到一个较短的链接,在用户访问该短链接的时候再重定向到原来的网站中)的检测,这个缺点极大地限制了仅针对钓鱼网站URL进行检测的技术方案的应用场景。
于2018年11月9日公开的、公开号为CN108777674A的中国发明专利申请“一种基于多特征融合的钓鱼网站检测方法”提出了一种利用URL特征和网页内容特征进行钓鱼网站检测的方案。但该方法完成一次钓鱼网站检测需要先提取URL特征、网页内容特征后再利用机器学习算法进行分类,检测速度慢,很难在真实场景下使用。
于2019年3月22日公开的、公开号为CN109510815A的中国发明专利申请“一种基于有监督学习的多级钓鱼网站检测方法及检测系统”提出了一种分级的钓鱼网站检测方案。该专利的问题在于其分类器是通过提取URL和网页内容中的固定特征后利用机器学习算法训练得到的,固定的特征设计容易被攻击者探测,从而被攻击者刻意规避,降低该方法的泛化能力。
发明内容
为了解决现有技术所存在的问题,本发明提供一种检测速度快、准确率高的基于深度学习的层次化钓鱼网站检测方法。相比已有方法,本发明能自动提取待检测网站的有效特征,而非通过特征工程或凭借经验人为地选择固定特征,从而提高了对未知钓鱼网站的检测能力,实现对未知钓鱼网站的实时检测。
根据本发明的基于深度学习的层次化钓鱼网站检测方法,包括以下步骤:
步骤1、输入待检测网站的URL;
步骤2、对输入的URL进行检测,输出该URL属于钓鱼网站的概率,若所输出的概率大于预设阈值,则进行步骤4,否则进行步骤3;
步骤3、下载待检测URL对应的网页,统计所述网页的HTML标签数量,利用HTML标签列表对统计结果进行向量化,将向量化后的HTML标签序列输入到带注意力机制的双向长短时记忆网络层以提取精确的网页内容特征表示,通过全连接层进行分类,得到该URL属于钓鱼网站的概率;
步骤4、判断待检测网站是否为钓鱼网站。
在优选的实施例中,步骤2对输入的URL进行检测的过程包括:对输入的待检测网站的URL进行预处理、获取URL的分布式表示、将URL的分布式表示输入到卷积-胶囊神经网络,由所述卷积-胶囊神经网络对URL属于钓鱼网站的概率进行预测计算。
在优选的实施例中,步骤2包括以下步骤:
步骤2-1、将输入的待检测网站的URL的长度通过末尾截断或补零的方式限定在某个长度,并对所有可能出现在URL中的字符赋予唯一数字编号,构建字符映射表,然后根据字符映射表将该URL的字符转换成对应的编号以得到该URL的整数向量表示;
步骤2-2、通过从互联网爬取URL作为语料进行词嵌入训练,得到字符级别的嵌入矩阵,通过查询该嵌入矩阵,将步骤2-1获得的URL的整数向量表示转换成URL的分布式表示矩阵;
步骤2-3、将URL的分布式表示矩阵输入到卷积-胶囊神经网络中,预测该URL属于钓鱼网站的概率。
在优选的实施例中,所述卷积-胶囊神经网络包括若干条并行路径,每路均包括依次连接的卷积层、基本胶囊层及分类胶囊层,各路卷积层所使用的卷积核大小不同;卷积层用于从URL的分布式表示矩阵中提取URL的浅层特征;基本胶囊层用于从浅层特征中提取精确的URL特征表示,并经处理后输出长度在0到1之间的向量,作为基本胶囊层的输出DF;分类胶囊层通过动态路由算法对输出DF进行加权求和,经归一化指数函数得到分类胶囊层的输出,即URL属于钓鱼网站的概率。
相对于现有技术,本发明的有益效果包括:
1、结合了网站URL和网页内容进行钓鱼网站检测,通过先使用URL级钓鱼检测模块进行检测,然后根据URL级钓鱼检测模块的分类置信度自适应地选择是否使用网页内容级钓鱼检测模块进行检测,本发明具有检测速度快、准确率高的优点。
2、通过使用深度神经网络自动抽取特征,避免了低效的手动特征设计,有效地提高了本发明对未知钓鱼网站的检测能力,实现了对未知钓鱼网站的实时检测。
3、在层次化钓鱼网站检测框架下,设计了两个专用的深度神经网络,分别针对网站的URL和网页内容进行检测,避免在检测URL合法性时受到网页内容特征的干扰,同时也避免了在检测网页内容合法性时受到URL特征的干扰。其中URL级钓鱼检测模块创新地结合了卷积神经网络和胶囊神经网络的优点,可以有效地提高URL合法性检测的准确性,能更好地检测未知钓鱼网站、提高检测速度;网页内容级钓鱼检测模块利用HTML标签序列作为特征,然后经过带注意力机制的双向长短时记忆网络进行特征提取,既保证了检测准确率又提高了对未知钓鱼网络的检测能力。这种层次化钓鱼网站检测框架提高了本发明对未知钓鱼网站的检测能力,实现了对未知钓鱼网站的实时检测。
附图说明
图1是本发明检测方法的整体流程图;
图2是URL级钓鱼检测模块神经网络架构图;
图3是网页内容级钓鱼检测模块神经网络架构图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例
本发明基于深度学习的层次化钓鱼网站检测方法,对于一个待检测的网站,首先提取其URL并利用低层次的URL级钓鱼检测模块对该URL进行检测,然后根据URL级钓鱼检测模块的分类置信度自适应地选择是否进一步使用高层次的网页内容级钓鱼检测模块进行检测,这样既可以保证钓鱼网站检测的快速进行,又能确保较高的检测准确性。如图1所示,本实施例包括以下步骤:
步骤1、输入待检测网站的URL。
本发明中,在模型训练阶段,待检测网站的URL为训练样本,在实际的检测阶段即为测试样本。
步骤2、利用URL级钓鱼检测模块对输入的URL进行检测,输出该URL属于钓鱼网站的概率,若所输出的概率大于预设阈值,则进行步骤4,否则进行步骤3。
该模块可以对输入的待检测网站的URL进行钓鱼检测,输出该URL属于钓鱼网站的概率,这种轻量级的检测方法可以有效检测大多数简单的钓鱼网站、提高钓鱼网站的检测速度、实现对未知钓鱼网站的实时检测。
如图2所示,首先对输入的待检测网站的URL进行预处理,将URL的字符串长度通过末尾截断或补零方式限定在某一长度(例如200个字符),然后查询预先训练好的字符级别的嵌入矩阵(Embedding Matrix),得到URL的分布式表示,接着利用专门设计的四路卷积-胶囊神经网络进行URL级的钓鱼网站检测,最后根据该神经网络的分类结果计算分类置信度,若分类置信度大于所设阈值,则进行步骤4,否则,进行步骤3。
本实施例中,构建了一个可用字符表。在对URL进行预处理的时候,将URL中的字符根据映射表转换成对应的编号,并通过末尾截断或补零的方式将每个URL的长度限定成200个字符。一个URL经过预处理后得到一个长度为200的整数向量。字符映射表如表1所示。
表1字符映射表
字符 | 编号 |
abcdefghijklmnopqrstuvwxyz | 1-26 |
ABCDEFGHIJKLMNOPQRSTUVWXYZ | 27-52 |
0123456789 | 53-62 |
.-+/=_&,:;><{}?”~!@#$%’*\()[] | 63-91 |
空格 | 92 |
未知字符 | 93 |
补齐字符 | 0 |
本实施例通过从互联网(例如网站commoncrawl.org)中爬取大量URL语料后利用Skip-Gram算法训练得到一个大小为94x 128的字符级别的嵌入矩阵。通过查询该嵌入矩阵,将一个URL转换成低维稠密的矩阵,这样低维稠密的分布式表示相比高维稀疏的表示来说包含更多的语义信息,且大大减小了计算量。具体而言,由于一个URL经预处理后得到一个200维的向量,则在经过字符级别的嵌入矩阵转换后得到一个200x 128的分布式表示矩阵X={x0,x1,...,x199},其中xi为128维的列向量,i=0,1,...,199。
本发明中,为提高本发明对未知钓鱼网站的检测能力,更准确地检测未知的钓鱼网站,提出了如图2所示的卷积-胶囊神经网络来检测钓鱼网站,其包括若干条并行路径,每条路径均包括依次连接的卷积层、基本胶囊层及分类胶囊层,各路径的卷积层所使用的卷积核大小不同,从而更高效地提取URL的多尺度局部特征。在本实施例中,卷积-胶囊神经网络设有四条并行路径,每一路均由一个卷积层、一个基本胶囊层和一个分类胶囊层组成。
卷积层用于从URL的分布式表示矩阵中提取URL的浅层特征,然后输入到基本胶囊层中。卷积层包括依次连接的卷积操作层、ReLU激活函数和二维Dropout操作层。具体而言,每路卷积层中包含64个卷积核,通过对不同路的卷积层设置不同大小的卷积核,从而更高效地提取URL的局部特征。对于第L路卷积层中的第c个卷积核,设其滑动窗口大小为Lc,其在第j个滑动窗口处的URL嵌入矩阵为则卷积核c在第j个滑动窗口处计算得到的新特征为fj c=ReLU(Wc·Xj+Bc),其中Wc和Bc为卷积核c的权重和偏置参数;ReLU激活函数是一种非线性的激活函数,用于增强神经网络的表达能力,使其具有拟合非线性函数的能力,其函数表达式为ReLU(x)=max(0,x)。特别地,在卷积层中的卷积核滑动步长为1,则卷积核c滑过URL嵌入矩阵X后得到的特征为每路卷积层含有64个卷积核,将64个卷积核产生的特征依次堆叠得到URL的浅层特征SF={f0,f1,...,f63},然后对浅层特征SF应用二维Dropout操作,通过设置Dropout率为0.5,使得对于任意的i和j,fi向量中的元素fj i均有50%的概率被置为0,从而达到防止神经网络过拟合、提高神经网络模型对未知钓鱼网站的检测能力的目的。
基本胶囊层包括依次连接的卷积操作层、ReLU激活函数、批标准化处理层、Squeeze向量压缩函数。其中卷积操作层用于从浅层特征中提取精确的URL特征表示;ReLU激活函数是非线性函数,用于提高模型的表示能力;批标准化处理层通过将ReLU激活函数的输出进行均值为0、方差为1的归一化后达到增强模型对未知钓鱼网站的检测能力的目的;Squeeze向量压缩函数用于将胶囊层的输出向量压缩成长度在0到1之间的向量,以使得向量的长度可以表示概率,是一种作用于向量的特殊的激活函数。具体而言,每路基本胶囊层均包含32个胶囊,每个胶囊含8个神经元,在基本胶囊层中使用256个卷积核从浅层特征中提取精确的URL特征表示,卷积核大小为9x1,卷积核滑动步长为2。对于第L路基本胶囊层中的卷积核d,其在第j个滑动窗口处的输入为浅层特征SFj={fj,fj+1,...,fj+8},则卷积核d在第j个滑动窗口处计算得到的新特征为dfj d=ReLU(Wd·SFj+Bd),其中Wd和Bd为卷积核d的权重和偏置参数,由于第L路卷积层的卷积核滑动窗口大小为Ld,则卷积核d滑过浅层输入特征SF后得到的特征为将基本胶囊层中的256个卷积核产生的新特征堆叠起来得到精确的URL特征表示DF={df0,df1,...,df255}。然后对输出DF应用批标准化策略进行处理,批标准化是优化神经网络性能的一种策略,通过将分散的数据进行统一,使得输出结果各个维度的均值为0,方差为1,避免训练过程中各网络层的输入落入饱和区域导致梯度消失,从而加速神经网络的训练并提高对未知钓鱼网站的检测能力。最后对批标准化处理后的精确的URL特征表示DF应用Squeeze向量压缩函数进行处理,对于dfi,应用如下Squeeze向量压缩函数压缩其长度在0到1之间:从而能够用于表示概率。
最后将基本胶囊层的输出DF输入到分类胶囊层中,分类胶囊层通过动态路由算法对输出DF进行加权求和,然后经归一化指数函数得到分类胶囊层的输出。四路分类胶囊层的输出经过求平均后输入到归一化指数函数中,得到模型最终的输出,即该URL属于钓鱼网站的概率。具体而言,对于基本胶囊层中的胶囊i的输出ui,其对于分类胶囊层中的胶囊j的初始有效输入为其中Wij为权重矩阵。特别地,基本胶囊层中的胶囊i和分类胶囊层中的胶囊j的关联性强弱由bij表示,bij是一个先验概率,代表胶囊i与胶囊j有关的概率。对bij应用Softmax归一化指数函数后得到cii,代表胶囊i占胶囊j最终有效输入的比例,其中Softmax归一化函数表达式为其中xk为向量x的元素之一,因此:分类胶囊层所用动态路由算法如下所示:
动态路由算法的输入为基本胶囊层的胶囊i对于分类胶囊层的胶囊j的初始有效输入以及迭代次数r;输出为压缩后的向量vj;对于所有基本胶囊层中的胶囊i和所有分类胶囊层中的胶囊j,初始化bij=0;将下列步骤循环r次:
(1)、为所有基本胶囊层中的胶囊i和所有分类胶囊层中的胶囊j计算
(2)、对于所有分类胶囊层中的胶囊j,计算
(3)、对于所有分类胶囊层中的胶囊j,计算
(4)、对于所有基本胶囊层中的胶囊i和所有分类胶囊层中的胶囊j,更新
将四路分类胶囊层的输出vj进行求平均后,得到均值计算均值的长度‖v‖后输入到归一化指数函数(Softmax)中,得到分类胶囊层的输出作为卷积-胶囊神经网络最终的输出,即该URL属于钓鱼网站的概率。
卷积-胶囊神经网络的主要参数设置如表2所示。
表2卷积-胶囊神经网络主要参数设置
本发明中,URL级钓鱼检测模块的分类置信度(confidence)计算公式为:confidence=max{output,1-output},其中,output为分类胶囊层的输出结果,若分类置信度大于所设置的阈值,则直接进入步骤4,否则进入步骤3。特别地,本实施例将阈值设置为0.8,即当URL级钓鱼检测模块有80%以上的把握可以正确分类该URL的时候,不再进行高层次的检测,进入步骤4;反之进入步骤3。
步骤3、下载待检测URL对应的网页,输入到网页内容级钓鱼检测模块进行检测,该模块首先统计待检测网页的HTML标签数量,然后利用根据W3C组织公布的文档而整理出的一个HTML标签列表对统计结果进行向量化,将向量化后的HTML标签序列输入到一个带注意力机制的双向长短时记忆网络层以提取精确的网页内容特征表示,最后通过全连接层进行分类、通过归一化指数函数对输出进行归一化得到最终的结果,代表该URL属于钓鱼网站的概率。
本实施例中,将统计后的HTML标签数量作为网页内容的特征。根据W3C组织公布的文档整理出一个具有115个HTML标签的列表,然后从下载得到的网页内容中统计各个HTML标签的数量,最后得到一个包含该网页内容中各个HTML标签数量信息的向量,作为网页内容的量化表示。通过这种创新的网页内容特征选择,避免了传统的网页视觉相似度、文本相似度匹配中计算量过大的缺陷,增加了本方法对未知钓鱼网站的检测能力。
本发明提出了一种基于注意力机制的双向长短时记忆神经网络模型。如图3所示,将量化后的网页内容特征输入到带注意力机制的双向长短时记忆网络中,然后带注意力机制的双向长短时记忆网络对网页内容进一步提取精确的特征表示,随后输入到全连接层进行最后的分类。模型的输出经过归一化指数函数处理后得到一个介于0到1之间的值,表示该网站属于钓鱼网站的概率。具体而言,长短时记忆网络的隐藏单元数量为128,全连接层的神经元数量为2,则带注意力机制的双向长短时记忆网络提取到的网页内容特征表示H={h0,h1,…,h127},其中H表示该层网络最后时刻的隐藏状态,则将H输入到全连接层后得到最终的输出O=Softmax(W·H+B),其中W和B分别为全连接层的权重和偏置参数。
步骤4、判断待检测网站是否为钓鱼网站。
本发明中,若进入步骤4时的神经网络输出概率大于0.5,则判定为钓鱼网站,否则判定为合法网站。
由上可知,本发明使用URL级钓鱼网站检测模块所检测的分类置信度作为自适应控制依据,能够自适应地控制检测过程,对于简单的钓鱼网站采用URL级钓鱼检测模块进行检测,对于URL级钓鱼检测模块难以判定的复杂钓鱼网站采用网页内容级钓鱼检测模块进行检测。这种自适应的基于深度学习的层次化钓鱼网站检测方法在检测简单的钓鱼网站时避免了提取网页内容这一环节,直接对该网站的URL进行检测,具有检测速度快的优点,可以实现对未知钓鱼网站的实时监测;在检测复杂的钓鱼网站时加入了网页内容特征进行检测,具有准确率高的优点,可以提高对未知钓鱼网站的检测能力,减少漏报率。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (7)
1.一种基于深度学习的层次化钓鱼网站检测方法,其特征在于,包括以下步骤:
步骤1、输入待检测网站的URL;
步骤2、对输入的URL进行检测,输出该URL属于钓鱼网站的概率,若所输出的概率大于预设阈值,则进行步骤4,否则进行步骤3;
步骤3、下载待检测URL对应的网页,统计所述网页的HTML标签数量,利用HTML标签列表对统计结果进行向量化,将向量化后的HTML标签序列输入到带注意力机制的双向长短时记忆网络层以提取精确的网页内容特征表示,通过全连接层进行分类,得到该URL属于钓鱼网站的概率;
步骤4、判断待检测网站是否为钓鱼网站。
2.根据权利要求1所述的层次化钓鱼网站检测方法,其特征在于,步骤2对输入的URL进行检测的过程包括:对输入的待检测网站的URL进行预处理、获取URL的分布式表示、将URL的分布式表示输入到卷积-胶囊神经网络,由所述卷积-胶囊神经网络对URL属于钓鱼网站的概率进行预测计算。
3.根据权利要求2所述的层次化钓鱼网站检测方法,其特征在于,步骤2包括以下步骤:
步骤2-1、将输入的待检测网站的URL的长度通过末尾截断或补零的方式限定在某个长度,并对所有可能出现在URL中的字符赋予唯一数字编号,构建字符映射表,然后根据字符映射表将该URL的字符转换成对应的编号以得到该URL的整数向量表示;
步骤2-2、通过从互联网爬取URL作为语料进行词嵌入训练,得到字符级别的嵌入矩阵,通过查询该嵌入矩阵,将步骤2-1获得的URL的整数向量表示转换成URL的分布式表示矩阵;
步骤2-3、将URL的分布式表示矩阵输入到卷积-胶囊神经网络中,预测该URL属于钓鱼网站的概率。
4.根据权利要求3所述的层次化钓鱼网站检测方法,其特征在于,所述卷积-胶囊神经网络包括若干条并行路径,每路均包括依次连接的卷积层、基本胶囊层及分类胶囊层,各路卷积层所使用的卷积核大小不同;卷积层用于从URL的分布式表示矩阵中提取URL的浅层特征;基本胶囊层用于从浅层特征中提取精确的URL特征表示,并经处理后输出长度在0到1之间的向量,作为基本胶囊层的输出DF;分类胶囊层通过动态路由算法对输出DF进行加权求和,经归一化指数函数得到分类胶囊层的输出,即URL属于钓鱼网站的概率。
5.根据权利要求4所述的层次化钓鱼网站检测方法,其特征在于,所述卷积层包括依次连接的卷积操作层、ReLU激活函数和二维Dropout操作层;所述基本胶囊层包括依次连接的卷积操作层、ReLU激活函数、批标准化处理层及Squeeze向量压缩函数。
6.根据权利要求4所述的层次化钓鱼网站检测方法,其特征在于,所述分类胶囊层通过动态路由算法对输出DF进行加权求和的过程为:
动态路由算法的输入为基本胶囊层的胶囊i对于分类胶囊层的胶囊j的初始有效输入以及迭代次数r;输出为压缩后的向量vj;设基本胶囊层中的胶囊i和分类胶囊层中的胶囊j的关联性强弱由bij表示,对于所有基本胶囊层中的胶囊i和所有分类胶囊层中的胶囊j,初始化bij=0;将下列步骤循环r次:
(1)、为所有基本胶囊层中的胶囊i和所有分类胶囊层中的胶囊j计算
(2)、对于所有分类胶囊层中的胶囊j,计算
(3)、对于所有分类胶囊层中的胶囊j,计算
(4)、对于所有基本胶囊层中的胶囊i和所有分类胶囊层中的胶囊i,更新
将若干路分类胶囊层的输出vj进行求平均后得到均值v,计算均值v的长度||v||后输入到归一化指数函数中,得到分类胶囊层的输出作为卷积-胶囊神经网络最终的输出,即该URL属于钓鱼网站的概率。
7.根据权利要求3所述的层次化钓鱼网站检测方法,其特征在于,步骤2-3通过卷积-胶囊神经网络计算分类结果,根据分类结果计算分类置信度,若分类置信度大于所设阈值,则进行步骤4,否则,进行步骤3。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910886251.7A CN110602113B (zh) | 2019-09-19 | 2019-09-19 | 一种基于深度学习的层次化钓鱼网站检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910886251.7A CN110602113B (zh) | 2019-09-19 | 2019-09-19 | 一种基于深度学习的层次化钓鱼网站检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110602113A true CN110602113A (zh) | 2019-12-20 |
CN110602113B CN110602113B (zh) | 2021-05-25 |
Family
ID=68861085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910886251.7A Active CN110602113B (zh) | 2019-09-19 | 2019-09-19 | 一种基于深度学习的层次化钓鱼网站检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110602113B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111556065A (zh) * | 2020-05-08 | 2020-08-18 | 鹏城实验室 | 钓鱼网站检测方法、装置及计算机可读存储介质 |
CN112468501A (zh) * | 2020-11-27 | 2021-03-09 | 安徽大学 | 一种面向url的钓鱼网站检测方法 |
CN112508684A (zh) * | 2020-12-04 | 2021-03-16 | 中信银行股份有限公司 | 一种基于联合卷积神经网络的催收风险评级方法及系统 |
CN112860976A (zh) * | 2021-03-11 | 2021-05-28 | 合肥工业大学 | 一种基于多模态层次注意力机制的欺诈网站检测方法 |
CN113312622A (zh) * | 2021-06-09 | 2021-08-27 | 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) | 一种检测url的方法及装置 |
CN114095278A (zh) * | 2022-01-19 | 2022-02-25 | 南京明博互联网安全创新研究院有限公司 | 一种基于混合特征选择框架的钓鱼网站检测方法 |
CN114500071A (zh) * | 2022-02-10 | 2022-05-13 | 江苏大学 | 一种针对目标网站动态增长的自适应指纹攻击方法和系统 |
CN114638984A (zh) * | 2022-02-17 | 2022-06-17 | 南京邮电大学 | 一种基于胶囊网络的恶意网站url检测方法 |
CN115622739A (zh) * | 2022-09-20 | 2023-01-17 | 浪潮云信息技术股份公司 | 一种面向url和标签结合的泛化钓鱼网站检测方法及系统 |
US20230224303A1 (en) * | 2022-01-07 | 2023-07-13 | Axis Cyber Security Ltd. | Techniques for providing long uniform resource locators through a secure environment |
CN117828479A (zh) * | 2024-02-29 | 2024-04-05 | 浙江鹏信信息科技股份有限公司 | 诈骗网站识别检测方法、系统及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9027128B1 (en) * | 2013-02-07 | 2015-05-05 | Trend Micro Incorporated | Automatic identification of malicious budget codes and compromised websites that are employed in phishing attacks |
CN108763384A (zh) * | 2018-05-18 | 2018-11-06 | 北京慧闻科技发展有限公司 | 用于文本分类的数据处理方法、数据处理装置和电子设备 |
CN109101552A (zh) * | 2018-07-10 | 2018-12-28 | 东南大学 | 一种基于深度学习的钓鱼网站url检测方法 |
CN109510815A (zh) * | 2018-10-19 | 2019-03-22 | 杭州安恒信息技术股份有限公司 | 一种基于有监督学习的多级钓鱼网站检测方法及检测系统 |
CN110442823A (zh) * | 2019-08-06 | 2019-11-12 | 北京智游网安科技有限公司 | 网站分类方法、网站类型判断方法、存储介质及智能终端 |
-
2019
- 2019-09-19 CN CN201910886251.7A patent/CN110602113B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9027128B1 (en) * | 2013-02-07 | 2015-05-05 | Trend Micro Incorporated | Automatic identification of malicious budget codes and compromised websites that are employed in phishing attacks |
CN108763384A (zh) * | 2018-05-18 | 2018-11-06 | 北京慧闻科技发展有限公司 | 用于文本分类的数据处理方法、数据处理装置和电子设备 |
CN109101552A (zh) * | 2018-07-10 | 2018-12-28 | 东南大学 | 一种基于深度学习的钓鱼网站url检测方法 |
CN109510815A (zh) * | 2018-10-19 | 2019-03-22 | 杭州安恒信息技术股份有限公司 | 一种基于有监督学习的多级钓鱼网站检测方法及检测系统 |
CN110442823A (zh) * | 2019-08-06 | 2019-11-12 | 北京智游网安科技有限公司 | 网站分类方法、网站类型判断方法、存储介质及智能终端 |
Non-Patent Citations (1)
Title |
---|
SHIVANGI S: "Chrome Extension For Malicious URLs detection in Social Media Applications Using Artificial Neural Networks And Long Short Term Memory Networks", 《IEEE》 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111556065A (zh) * | 2020-05-08 | 2020-08-18 | 鹏城实验室 | 钓鱼网站检测方法、装置及计算机可读存储介质 |
CN112468501A (zh) * | 2020-11-27 | 2021-03-09 | 安徽大学 | 一种面向url的钓鱼网站检测方法 |
CN112508684A (zh) * | 2020-12-04 | 2021-03-16 | 中信银行股份有限公司 | 一种基于联合卷积神经网络的催收风险评级方法及系统 |
CN112860976B (zh) * | 2021-03-11 | 2022-08-19 | 合肥工业大学 | 一种基于多模态层次注意力机制的欺诈网站检测方法 |
CN112860976A (zh) * | 2021-03-11 | 2021-05-28 | 合肥工业大学 | 一种基于多模态层次注意力机制的欺诈网站检测方法 |
CN113312622A (zh) * | 2021-06-09 | 2021-08-27 | 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) | 一种检测url的方法及装置 |
US20230224303A1 (en) * | 2022-01-07 | 2023-07-13 | Axis Cyber Security Ltd. | Techniques for providing long uniform resource locators through a secure environment |
CN114095278A (zh) * | 2022-01-19 | 2022-02-25 | 南京明博互联网安全创新研究院有限公司 | 一种基于混合特征选择框架的钓鱼网站检测方法 |
CN114500071A (zh) * | 2022-02-10 | 2022-05-13 | 江苏大学 | 一种针对目标网站动态增长的自适应指纹攻击方法和系统 |
CN114500071B (zh) * | 2022-02-10 | 2024-04-16 | 江苏大学 | 一种针对目标网站动态增长的自适应指纹攻击方法和系统 |
CN114638984A (zh) * | 2022-02-17 | 2022-06-17 | 南京邮电大学 | 一种基于胶囊网络的恶意网站url检测方法 |
CN114638984B (zh) * | 2022-02-17 | 2024-03-15 | 南京邮电大学 | 一种基于胶囊网络的恶意网站url检测方法 |
CN115622739A (zh) * | 2022-09-20 | 2023-01-17 | 浪潮云信息技术股份公司 | 一种面向url和标签结合的泛化钓鱼网站检测方法及系统 |
CN117828479A (zh) * | 2024-02-29 | 2024-04-05 | 浙江鹏信信息科技股份有限公司 | 诈骗网站识别检测方法、系统及计算机可读存储介质 |
CN117828479B (zh) * | 2024-02-29 | 2024-06-11 | 浙江鹏信信息科技股份有限公司 | 诈骗网站识别检测方法、系统及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110602113B (zh) | 2021-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110602113B (zh) | 一种基于深度学习的层次化钓鱼网站检测方法 | |
CN109101552B (zh) | 一种基于深度学习的钓鱼网站url检测方法 | |
CN111371806B (zh) | 一种Web攻击检测方法及装置 | |
CN109005145B (zh) | 一种基于自动特征抽取的恶意url检测系统及其方法 | |
CN110351301B (zh) | 一种http请求双层递进式异常检测方法 | |
US20220382553A1 (en) | Fine-grained image recognition method and apparatus using graph structure represented high-order relation discovery | |
CN111027069B (zh) | 恶意软件家族检测方法、存储介质和计算设备 | |
CN111198995B (zh) | 一种恶意网页识别方法 | |
CN113596007B (zh) | 一种基于深度学习的漏洞攻击检测方法和设备 | |
US20230385409A1 (en) | Unstructured text classification | |
CN109413028A (zh) | 基于卷积神经网络算法的sql注入检测方法 | |
Naiemi et al. | An efficient character recognition method using enhanced HOG for spam image detection | |
CN109873810B (zh) | 一种基于樽海鞘群算法支持向量机的网络钓鱼检测方法 | |
CN110019790B (zh) | 文本识别、文本监控、数据对象识别、数据处理方法 | |
US20170289082A1 (en) | Method and device for identifying spam mail | |
CN110830489B (zh) | 基于内容抽象表示的对抗式欺诈网站检测方法及系统 | |
CN109190698B (zh) | 一种网络数字虚拟资产的分类识别系统及方法 | |
CN112232079B (zh) | 一种微博评论数据分类方法及系统 | |
CN112651025A (zh) | 一种基于字符级嵌入编码的webshell检测方法 | |
CN111967503A (zh) | 多类型异常网页分类模型的构建方法、异常网页检测方法 | |
CN111859979A (zh) | 讽刺文本协同识别方法、装置、设备及计算机可读介质 | |
CN115757991A (zh) | 一种网页识别方法、装置、电子设备和存储介质 | |
CN116722992A (zh) | 一种基于多模态融合的诈骗网站识别方法及装置 | |
Kasim | Automatic detection of phishing pages with event-based request processing, deep-hybrid feature extraction and light gradient boosted machine model | |
CN113037729B (zh) | 基于深度学习的钓鱼网页层次化检测方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |