CN115994351A - 一种恶意网站检测方法、装置、系统及设备 - Google Patents
一种恶意网站检测方法、装置、系统及设备 Download PDFInfo
- Publication number
- CN115994351A CN115994351A CN202211213957.5A CN202211213957A CN115994351A CN 115994351 A CN115994351 A CN 115994351A CN 202211213957 A CN202211213957 A CN 202211213957A CN 115994351 A CN115994351 A CN 115994351A
- Authority
- CN
- China
- Prior art keywords
- website
- value
- detected
- websites
- webpage
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 77
- 239000013598 vector Substances 0.000 claims abstract description 160
- 238000000034 method Methods 0.000 claims abstract description 52
- 238000013528 artificial neural network Methods 0.000 claims abstract description 51
- 238000000605 extraction Methods 0.000 claims abstract description 45
- 238000012549 training Methods 0.000 claims abstract description 26
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 13
- 238000005070 sampling Methods 0.000 claims abstract description 4
- 239000011159 matrix material Substances 0.000 claims description 67
- 238000004364 calculation method Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 24
- 230000001965 increasing effect Effects 0.000 claims description 21
- 230000003416 augmentation Effects 0.000 claims description 20
- 238000004422 calculation algorithm Methods 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 15
- 239000000284 extract Substances 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 10
- 230000007246 mechanism Effects 0.000 claims description 10
- 238000013016 damping Methods 0.000 claims description 8
- 238000012546 transfer Methods 0.000 claims description 7
- 230000004913 activation Effects 0.000 claims description 6
- 238000013527 convolutional neural network Methods 0.000 claims description 6
- 230000003190 augmentative effect Effects 0.000 claims description 5
- 230000000644 propagated effect Effects 0.000 claims description 5
- 230000004931 aggregating effect Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 description 5
- 230000000875 corresponding effect Effects 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000007480 spreading Effects 0.000 description 2
- 238000003892 spreading Methods 0.000 description 2
- 239000011800 void material Substances 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- -1 carrier Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003153 chemical reaction reagent Substances 0.000 description 1
- 239000000306 component Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000001976 improved effect Effects 0.000 description 1
- 239000012535 impurity Substances 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004445 quantitative analysis Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 239000007858 starting material Substances 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Abstract
本发明公开了一种恶意网站攻击检测方法、装置、系统及设备,方法包括:步骤1,网站定量特征提取:从待检测网站网页源码提取待检测网站的定量特征;步骤2,网站语义特征提取:从网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,将各个标签的语义信息合成为待检测网站的语义特征;步骤3,生成网站的特征向量:将定量特征与语义特征合成为特征向量;步骤4,检测恶意网站:以待检测网站的特征向量为输入,利用以过采样拓展图拓扑结构方式构建的增广图数据为训练数据预先训练好的图卷积神经网络分类器进行预测得出该待检测网站的类型分类,类型分类包括:恶意网站与合法网站。该方法能准确检测恶意网站。
Description
技术领域
本发明涉及网络安全领域,尤其涉及一种恶意网站检测方法、装置、系统及设备。
背景技术
恶意网站是试图通过漏洞,安装恶意软件的方式来干扰计算机操作,收集用户个人信息甚至完全控制用户机器的网站。在多数情况下,恶意网站往往伪装成合法网站的样子,它可以让人们正常浏览页面内容,同时非法获取用户机器中的各种数据。恶意网站不仅是传播电脑病毒的重要源头,还会善用“伪装”手段,传播不良信息或者实现欺诈行为。严重影响了网民利益以及上网的安全性。
恶意网站一般有三种表现形式:钓鱼网站,垃圾邮件网站以及恶意软件网站。钓鱼网站会尽可能的模仿正常网站的表现形式,通过视觉上欺骗用户来窃取用户的隐私信息。当访问者输入自己的个人信息或者银行卡信息时,这些数据将会被不法分子窃取,甚至可能出售用户的个人信息,造成严重损失。垃圾网站是指通过一系列技术颠覆搜索引擎排名算法导致其搜索结果优先的不良网站。垃圾网站中可能含有指向不良网站的链接,虚假或非法的内容等。通过增加用户搜索的几率来像用户传播不良信息。恶意软件网站会在用户未注意时在用户设备上安装恶意软件。通过部署恶意软件来作为提取设备数据,控制设备的切入点。
传统的检测方法主要利用人为选定的网站定量特征结合机器学习方法进行检测,该方法在特征选择上过于依赖专家经验,并且仅考虑单个网站节点的特征,没有将网站节点放在网络整体环境中,忽略了相邻网站节点对于该网站的重要影响关系。基于单个网站节点的机器学习方法无法充分考虑网站的空间特性。
恶意网站作为一种重要的网络攻击手段,近年来随着网络技术的发展,恶意网站形式越来越多样化,增强了恶意网站的隐蔽性与加密性,使得检测越来越困难,对于恶意网站的检测需求也日益增加。传统的检测方法主要使用模式匹配算法或者机器学习算法对单个网站节点的相关统计特征进行检测,该类方法仅考虑了单个网站节点的特征,不能有效的表现相邻网站节点之间的强关系性以及空间特性,且没有考虑现实存在的网站种类数量严重不平衡问题。特征的提取方式也较为依赖专家经验。
近年来,随着自然语言处理的兴起,提供了许多抽取文本信息的方法。在网页中,文本是重要的组成部分,网页的文本语义是判断网页好坏的重要依据。依靠自然语言分析处理网页文本信息,不仅可以强化网页语义表示,还可以不完全依赖专家经验而获取网站特征信息。
有鉴于此,特提出本发明。
发明内容
本发明的目的是提供了一种恶意网站检测方法、装置、系统及设备,能通过检测网站的节点特征以及与网络的拓扑关系对恶意网站准确识别,进而解决现有技术中存在的上述技术问题。
本发明的目的是通过以下技术方案实现的:
本发明实施方式提供一种恶意网站攻击检测方法,包括:
步骤1,网站定量特征提取:获取待检测网站的网页源码,从网页源码中提取待检测网站的定量特征,所述定量特征包括:内容特征和链接特征;
步骤2,网站语义特征提取:从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,将各个标签的语义信息合成为待检测网站的语义特征;
步骤3,生成网站的特征向量:将所述步骤1得出的待检测网站的定量特征与所述步骤2得出的待检测网站的语义特征合成为待检测网站的特征向量;
步骤4,检测恶意网站:以待检测网站的特征向量为输入,利用以过采样拓展图拓扑结构方式构建的网站拓扑增广图数据作为训练数据预先训练好的图卷积神经网络分类器进行预测得出该待检测网站的类型分类,所述类型分类包括:恶意网站与合法网站。
本发明实施例还提供一种恶意网站攻击检测装置,包括:网站定量特征提取模块、网站语义特征提取模块、网站特征向量生成模块和恶意网站检测模块;其中,
所述网站定量特征提取模块,与所述网站特征向量生成模块通信连接,能获取待检测网站的网页源码,从网页源码中提取待检测网站的定量特征,所述定量特征包括:内容特征和链接特征;
所述网站语义特征提取模块,与所述网站特征向量生成模块通信连接,能从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,将各个标签的语义信息合成为待检测网站的语义特征;
所述网站特征向量生成模块,与所述恶意网站检测模块通信连接,能将所述网站定量特征提取模块得出的待检测网站的定量特征与所述网站语义特征提取模块得出的待检测网站的语义特征合成为待检测网站的特征向量;
所述恶意网站检测模块,能以所述网站特征向量生成模块输出的待检测网站的特征向量为输入,利用以过采样拓展图拓扑结构方式构建的网站拓扑增广图数据作为训练数据预先训练好的图卷积神经网络分类器进行预测得出该待检测网站的类型分类,所述类型分类包括:恶意网站与合法网站。
本发明实施方式还提供一种恶意网站攻击检测系统包括若干终端设备和至少一个应用数据安全网关,所述应用数据安全网关采用本发明所述的恶意网站攻击检测装置;
各终端设备均通过应用数据安全网关访问互联网的网站,在任一终端设备通过应用数据安全网关访问互联网的网站时,由所述应用数据安全网关对所访问的网站进行检测,若检测确认所访问网站为恶意网站时,则禁止终端设备对该恶意网站的访问。
本发明实施方式进一步提供一种处理设备,包括:
至少一个存储器,用于存储一个或多个程序;
至少一个处理器,能执行所述存储器所存储的一个或多个程序,在一个或多个程序被处理器执行时,使得所述处理器能实现本发明所述的方法。
与现有技术相比,本发明所提供的恶意网站检测方法、装置、系统及设备,其有益效果包括:
通过网站语义特征提取将网站标签文本语义引入特征提取环节,摒弃了传统特征提取方式过于依赖专家经验的缺陷,强化表达了网站文本标签主题的相关性以及相邻网页的语义连接性;在预先训练阶段,利用过采样处理方式得到网站拓扑增广图数据训练图卷积神经网络分类器,充分考虑到恶意网站与合法网站数据不平衡的问题,避免了恶意网站样本量不足,若直接用于训练,存在过拟合降低检测准确率的问题;检测恶意网站步骤利用图卷积神经网络作为特征提取器以及分类器,不同于传统方式考虑单节点特征,能挖掘网站之间的关联关系,以构建拓扑图的方式将邻居节点网站的属性融入网站特征学习中,可以更有效地检测网站是否为恶意网站。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的恶意网站检测方法的流程图。
图2为本发明实施例提供的恶意网站检测方法的训练阶段流程图。
图3为本发明实施例提供的恶意网站检测方法的网站语义特征提取步骤的page2vec算法流程图。
图4为本发明实施例提供的恶意网站检测方法的图卷积神经网络分类器的训练框架图。
图5为本发明实施例提供的恶意网站检测装置的构成示意图。
图6为本发明实施例提供的恶意网站检测系统的构成示意图。
具体实施方式
下面结合本发明的具体内容,对本发明实施例中的技术方案进行清楚、完整地描述;显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,这并不构成对本发明的限制。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
首先对本文中可能使用的术语进行如下说明:
术语“和/或”是表示两者任一或两者同时均可实现,例如,X和/或Y表示既包括“X”或“Y”的情况也包括“X和Y”的三种情况。
术语“包括”、“包含”、“含有”、“具有”或其它类似语义的描述,应被解释为非排它性的包括。例如:包括某技术特征要素(如原料、组分、成分、载体、剂型、材料、尺寸、零件、部件、机构、装置、步骤、工序、方法、反应条件、加工条件、参数、算法、信号、数据、产品或制品等),应被解释为不仅包括明确列出的某技术特征要素,还可以包括未明确列出的本领域公知的其它技术特征要素。
术语“由……组成”表示排除任何未明确列出的技术特征要素。若将该术语用于权利要求中,则该术语将使权利要求成为封闭式,使其不包含除明确列出的技术特征要素以外的技术特征要素,但与其相关的常规杂质除外。如果该术语只是出现在权利要求的某子句中,那么其仅限定在该子句中明确列出的要素,其他子句中所记载的要素并不被排除在整体权利要求之外。
除另有明确的规定或限定外,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如:可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本文中的具体含义。
下面对本发明所提供的恶意网站检测方法、装置、系统及设备进行详细描述。本发明实施例中未作详细描述的内容属于本领域专业技术人员公知的现有技术。本发明实施例中未注明具体条件者,按照本领域常规条件或制造商建议的条件进行。本发明实施例中所用试剂或仪器未注明生产厂商者,均为可以通过市售购买获得的常规产品。
如图1所示,本发明实施例提供一种恶意网站攻击检测方法,包括:
步骤1,网站定量特征提取:获取待检测网站的网页源码,从网页源码中提取待检测网站的定量特征,所述定量特征包括:内容特征和链接特征;
步骤2,网站语义特征提取:从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,将各个标签的语义信息合成为待检测网站的语义特征;
步骤3,生成网站的特征向量:将所述步骤1得出的待检测网站的定量特征与所述步骤2得出的待检测网站的语义特征合成为待检测网站的特征向量;
步骤4,检测恶意网站:以待检测网站的特征向量为输入,利用以过采样拓展图拓扑结构方式构建的网站拓扑增广图数据作为训练数据预先训练好的图卷积神经网络分类器进行预测得出该待检测网站的类型分类,所述类型分类包括:恶意网站与合法网站。
上述方法中,按以下方式以过采样拓展图拓扑结构方式构建的网站拓扑增广图数据作为训练数据训练图卷积神经网络分类器,包括:
步骤401,对现有网站拓扑进行特征提取:通过图神经网络分类器对输入的网站的特征向量进行提取,学习网站节点表示,得出网站节点属性和图拓扑信息;
步骤402,在嵌入空间中生成少数类节点的特征属性:利用恶意网站的特征值与它们在嵌入空间中最近的邻域进行插值生成新节点属性,该新节点属性属于恶意网站节点类别;
步骤403,构造新合成节点与旧节点之间的链接关系:
新合成节点后需要构造新、旧节点的链接关系,对网站原拓扑图进行扩充,采用带权内积解码器计算新合成节点与旧节点之间的相关性,推导边的生成,根据生成的边在网站原拓扑图上链接新合成节点完成网站原拓扑图的扩充得到网站拓扑增广图数据;
步骤404,以得到的网站拓扑增广图数据作为训练数据训练图卷积神经网络分类器。
上述方法中,所述图卷积神经网络分类器的结构是由输入层、隐藏层和输出层组成的双层图卷积神经网络;
其中,输入层的输入为网站拓扑增广图数据的邻接矩阵以及各网站的特征向量,输入层的图卷积公式为:
其中,gθ为图卷积神经网络分类器的卷积核;x是输入的网站节点;θ是切比雪夫系数向量;是的度矩阵;A是网络中网站拓扑图的邻接矩阵,IN为网络中网站拓扑图的单位矩阵;
隐藏层作为特征提取器,接收所述输入层的输出,该隐藏层的传递函数为:
其中,各参数含义为:σ是非线性激活函数;是的度矩阵;A是网络中网站拓扑图的的邻接矩阵,IN为网络中网站拓扑图的单位矩阵;H(l)是图神经网络层的特征,W(l)是图神经网络层的权重;
输出层的前向传播公式为:
其中,W(0)为输入层-到-隐藏层的权重矩阵;W(1)为隐藏层-到-输出层的权重矩阵,X是节点嵌入特征;
输出层分类的损失函数为:
其中,Loss是输出层的分类损失函数;YL是具有标签的节点索引集;F表示特征向量的数量;Z是经过图卷积神经网络分类器传播后的输出向量。
上述方法的步骤1中,按以下方式从网页源码中提取待检测网站的内容特征和链接特征,包括:
以标签为单位对网页源码进行拆分,拆分后得到以标签为单位的HTML代码,从<title>、<meta>、<body>、<a>各标签对应的HTML代码提取待检测网站的内容特征及链接特征;其中,
所述待检测网站的内容特征包括:停用词数量特征值、错误词数量特征值、关键字数量特征值、网页文本词汇数量特征值;
所述待检测网站的链接特征包括:网页排名值、空链接数量特征值、网页重定向链接数量特征值、网页外部链接数量特征值。
上述方法中,所述停用词数量特征值的停用词指网页文本中没有实际意义的词汇,该停用词数量特征值的计算方式如下:
其中,F1为停用词数量特征值;stop_rate是停用词比率,指网页中停用词数量占总字数的比率,Ns和Nt分别是网页中停用词数量与总字数;是停用词比率的阈值,取值为0-1,按逐次升高0.1,其他特征向量保持不变,来记录准确率最高时的值作为基值;
所述错误词数量特征值的错误词汇指网页文本中拼写错误或者不存在的词汇,该错误词数量特征值的计算方式如下:
其中,F2为错误词数量特征值;error_rate为错误词比率,指网页中错误的词数量占总字数的比率,Ne和Nt分别是网页中的错误字数和总字数;是错误词比率的阈值,取值为0-1,按逐次升高0.1,其他特征向量保持不变,来记录准确率最高时的值作为基值;
所述关键字数量特征值的计算方式如下:
其中,F3为关键字数量特征值;Nk表示网页中的关键字;是关键字个数的参数,在网页中取值为100以内,按逐次升高10,其他特征向量保持不变,来记录准确率最高时的值作为基值;
所述网页排名值的计算方式如下:
其中,F5为网页排名值;PR是网络拓扑图中网站节点的PageRank值;d是阻尼因子,一般取0.85;pk是当前计算的网站页面;是指向网站pk的网站页面集合;L(pk)是pk链出网站页面的数量;N是所有页面的数量;
所述空链接数量特征值的计算方式如下:
其中,F6为空链接数量特征值;null_rate是网页空链接率,Le和Lt分别是网页中空链接和总链接的数量;是网页空链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值;
所述网页重定向链接数量特征值的计算方式如下:
其中,F7为网页重定向链接数量特征值;redirect_rate是网页重定向链接率,Lr和Lt分别是重定向链接数量和总链接数量;是网页重定向链接率的阈值,取值为0~1之间,以逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值;
所述网页外部链接数量特征值的计算方式如下:
其中,F8为网页外部链接数量特征值;out_rate是网页重定向链接率,Lex和Lt分别是重定向链接数量和总链接数量;是网页重定向链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值。
上述方法的步骤2中,按以下方式从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,合成待检测网站的语义特征,包括:
从待检测网站的网页源码中选定<body>、<keyword>、<description>和<title>四种标签作为与网站语义密切相关的重要标签;
将选定的同一标签内的文本视为整体,采用word2vec算法从各标签中的上下文词汇,预测当前词汇得到当前词汇的向量化表示,将得到的每个词汇的输出向量以标签为单位聚合成为标签向量,将所有标签向量结合生成标签矩阵,利用标签矩阵通过自注意力机制得出查询向量序列、关键向量序列和值向量序列,通过查询向量序列、关键向量序列和值向量序列计算得出各标签的注意力值,标签的注意力值的计算公式为:
其中,D是注意力值;Q,K,V分别为查询向量序列、关键向量序列和值向量序列,是尺度;
利用上述方式计算得出的<body>、<keyword>、<description>和<title>标签的注意力值,按以下方式计算合成待检测网站的语义特征,为:
oi=vi·d′i,j
其中,各参数含义为:F9为待检测网站的语义特征;oi为输出向量的行向量,其中每一行分别代表<body>、<keyword>,<description>和<title>标签的注意力值;Opage为网页语义向量;obody,okeyword,odescription,otitle分别为<body>,<keyword>,<description>,<title>标签的语义向量。
本发明实施例还提供一种恶意网站攻击检测装置,包括:网站定量特征提取模块、网站语义特征提取模块、网站特征向量生成模块和恶意网站检测模块;其中,
所述网站定量特征提取模块,与所述网站特征向量生成模块通信连接,能获取待检测网站的网页源码,从网页源码中提取待检测网站的定量特征,所述定量特征包括:内容特征和链接特征;
所述网站语义特征提取模块,与所述网站特征向量生成模块通信连接,能从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,将各个标签的语义信息合成为待检测网站的语义特征;
所述网站特征向量生成模块,与所述恶意网站检测模块通信连接,能将所述网站定量特征提取模块得出的待检测网站的定量特征与所述网站语义特征提取模块得出的待检测网站的语义特征合成为待检测网站的特征向量;
所述恶意网站检测模块,能以所述网站特征向量生成模块输出的待检测网站的特征向量为输入,利用以过采样拓展图拓扑结构方式构建的网站拓扑增广图数据作为训练数据预先训练好的图卷积神经网络分类器进行预测得出该待检测网站的类型分类,所述类型分类包括:恶意网站与合法网站。
上述装置中,所述网站定量特征提取模块按以下方式从网页源码中提取待检测网站的内容特征和链接特征,包括:
以标签为单位对网页源码进行拆分,拆分后得到以标签为单位的HTML代码,从<title>、<meta>、<body>、<a>各标签对应的HTML代码提取待检测网站的内容特征及链接特征;其中,
所述待检测网站的内容特征包括:停用词数量特征值、错误词数量特征值、关键字数量特征值、网页文本词汇数量特征值;
其中,所述停用词数量特征值的停用词指网页文本中没有实际意义的词汇,该停用词数量特征值的计算方式如下:
其中,F1为停用词数量特征值;stop_rate是停用词比率,指网页中停用词数量占总字数的比率,Ns和Nt分别是网页中停用词数量与总字数;是停用词比率的阈值,取值为0-1,按逐次升高0.1,其他特征向量保持不变,来记录准确率最高时的值作为基值;
所述错误词数量特征值的错误词汇指网页文本中拼写错误或者不存在的词汇,该错误词数量特征值的计算方式如下:
其中,F2为错误词数量特征值;error_rate为错误词比率,指网页中错误的词数量占总字数的比率,Ne和Nt分别是网页中的错误字数和总字数;是错误词比率的阈值,取值为0-1,按逐次升高0.1,其他F1、F3-F9特征向量保持不变,来记录准确率最高时的值作为基值;
所述关键字数量特征值的计算方式如下:
其中,F3为关键字数量特征值;Nk表示网页中的关键字,是关键字个数的参数,在网页中的取值为100以内,按逐次升高10,其他特征向量保持不变,来记录准确率最高时的作为基值;
所述待检测网站的链接特征包括:网页排名值、空链接数量特征值、网页重定向链接数量特征值、网页外部链接数量特征值;
其中,所述网页排名值的计算方式如下:
其中,F5为网页排名值;PR是网络拓扑图中网站节点的PageRank值;d是阻尼因子;是指向pk的页面集,pk是当前页面;L(pk)是来自网页u的链接数;d是阻尼因子;是指向pk的页面集;L(pk)是来自网页u的链接数;
所述空链接数量特征值的计算方式如下:
其中,F6为空链接数量特征值;null_rate是网页空链接率,Le和Lt分别是网页中空链接和总链接的数量;是网页空链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值;
所述网页重定向链接数量特征值的计算方式如下:
其中,F7为网页重定向链接数量特征值;out_rate是网页重定向链接率,Lex和Lt分别是重定向链接数量和总链接数量;是网页重定向链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值;
所述网页外部链接数量特征值的计算方式如下:
其中,F8为网页外部链接数量特征值;out_rate是网页重定向链接率,Lex和Lt分别是重定向链接数量和总链接数量;是网页重定向链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值;
所述网站语义特征提取模块按以下方式从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,合成待检测网站的语义特征,包括:
从待检测网站的网页源码中选定<body>、<keyword>、<description>和<title>四种标签作为与网站语义密切相关的重要标签;
将选定的同一标签内的文本视为整体,采用word2vec算法从各标签中的上下文词汇,预测当前词汇得到当前词汇的向量化表示,将得到的每个词汇的输出向量以标签为单位聚合成为标签向量,将所有标签向量结合生成标签矩阵,利用标签矩阵通过自注意力机制得出查询向量序列、关键向量序列和值向量序列,通过查询向量序列、关键向量序列和值向量序列计算得出各标签的注意力值,标签的注意力值的计算公式为:
其中,D是注意力值;Q,K,V分别为查询向量序列、关键向量序列和值向量序列,是尺度;
利用上述方式计算得出的<body>、<keyword>、<description>和<title>标签的注意力值,按以下方式计算合成待检测网站的语义特征,为:
oi=vi·d′i,j
其中,各参数含义为:F9为待检测网站的语义特征;oi为输出向量的行向量,其中每一行分别代表<body>、<keyword>,<description>和<title>标签的注意力值;Opage为网页语义向量;obody,okeyword,odescription,otitle分别为<body>、<keyword>、<description>、<title>标签的语义向量;
所述恶意网站检测模块的图卷积神经网络分类器的结构是由输入层、隐藏层和输出层组成的双层图卷积神经网络;
其中,输入层的输入为网站拓扑增广图数据的邻接矩阵以及各网站的特征向量,输入层的图卷积公式为:
其中,gθ为图卷积神经网络分类器的卷积核;切比雪夫多项式的递归定义为Tk(x)=2xTk-1(x)-Tk-2(x),T0(x)=1,T1(x)=x;L为网站拓扑增广图数据的拉普拉斯矩阵,等于D–A,D为对角度矩阵,Dii=∑jAij,A为图的邻接矩阵,标准化为IN为单位矩阵;
隐藏层作为特征提取器,接收所述输入层的输出,该隐藏层的传递函数为:
其中,各参数含义为:A是图的邻接矩阵,IN为单位矩阵;是的度矩阵,H是每层的特征,σ是非线性激活函数;
输出层的前向传播公式为:
其中,W(0)为输入层-到-隐藏层的权重矩阵;W(1)为隐藏层-到-输出层的权重矩阵,X是网站嵌入特征;
输出层分类的损失函数为:
其中,Loss是输出层的分类损失函数;YL是具有标签的网站索引集;F表示特征向量的数量;Z是经过图卷积神经网络分类器传播后的输出向量。
本发明实施例又提供一种恶意网站攻击检测系统,包括若干终端设备和至少一个应用数据安全网关,所述应用数据安全网关采用上述的恶意网站攻击检测装置;
各终端设备均通过应用数据安全网关访问互联网的网站,在任一终端设备通过应用数据安全网关访问互联网的网站时,由所述应用数据安全网关对所访问的网站进行检测,若检测确认所访问网站为恶意网站时,则禁止终端设备对该恶意网站的访问。
本发明实施例进一步提供一种处理设备,包括:
至少一个存储器,用于存储一个或多个程序;
至少一个处理器,能执行所述存储器所存储的一个或多个程序,在一个或多个程序被处理器执行时,使得所述处理器能实现上述的方法。这种处理设备也可以用于应用数据安全网关,在恶意网站攻击检测系统中检测恶意网站。
本发明实施例进一步提供一种可读存储介质,存储有计算机程序,当计算机程序被处理器执行时能实现上述的方法。
综上可见,本发明实施例的检测方法、装置及系统,通过网站语义特征提取步骤,利用page2vec算法将网站标签文本语义引入特征提取环节,摒弃了传统特征提取方式过于依赖专家经验的缺陷,强化表达了网站文本标签主题的相关性以及相邻网页的语义连接性;在预先训练阶段,利用过采样处理方式得到增广图数据训练图卷积神经网络分类器,充分考虑到恶意网站与合法网站数据不平衡的问题,避免了恶意网站样本量不足,直接用于训练,过拟合降低检测准确率的问题;检测恶意网站步骤利用图卷积神经网络作为特征提取器以及分类器,不同于传统方式考虑单节点特征,能挖掘网站之间的关联关系,以构建拓扑图的方式将邻居节点的属性融入网站特征学习中,可以更有效地检测网站是否为恶意网站。
为了更加清晰地展现出本发明所提供的技术方案及所产生的技术效果,下面以具体实施例对本发明实施例所提供的恶意网站检测方法、装置及系统进行详细描述。
实施例1
本发明提供一种恶意网站检测方法,是一种基于图卷积神经网络的检测方法,该方法先提取待检测网站进行定量特征与语义特征,根据定量特征与语义特征生成待检测网站的特征向量,通过预先利用增广图数据训练好的图卷积神经网络分类器,通过检测网络与节点特征对恶意网站准确识别。
具体的,该恶意网站检测方法如图1所示,包括如下步骤:
步骤1,网站定量特征提取:通过爬虫获取待检测网站的网页源码,从网页源码中提取待检测网站的定量特征,所述定量特征包括:内容特征和链接特征;
步骤2,网站语义特征提取:从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,将各个标签的语义信息合成为待检测网站的语义特征;
步骤3,生成网站的特征向量:将所述步骤1得出的待检测网站的定量特征与所述步骤2得出的待检测网站的语义特征合成为待检测网站的特征向量;
步骤4,检测恶意网站:以待检测网站的特征向量为输入,利用以过采样拓展图拓扑结构方式构建的增广图数据作为训练数据预先训练好的图卷积神经网络分类器进行预测得出该待检测网站的类型分类,所述类型分类包括:恶意网站与合法网站。
如图2所示,该检测方法的检测过程主要分为四个阶段,分别是:网络定量特征提取,网络语义特征提取,使用过采样方法拓展图拓扑结构和利用图卷积神经网络分类器检测恶意网站。第一个阶段将通过定量分析方法,从网站的内容以及链接两个方面提取一些代表性的统计特征;第二阶段将使用page2vec算法,从标签角度向量化网站语义特征;第三阶段采用GraphSmote方法对图进行过采样处理,构建增广图缓解数据不平衡问题;第四阶段使用图卷积神经网络作为分类器进行恶意网站检测。
下面对上述各处理步骤进行具体说明。
(1)网站定量特征提取:
恶意网站一般通过网站的内容或者网站的链接实施攻击,本发明旨在通过对恶意网站一些典型的内容或者链接特征进行定量分析来进行网站定量特征提取。网站的特征提取通过对网页HTML源码分析的方式。
首先通过爬虫得到网站的HTML源码,由于网站源码信息比较复杂,本发明以标签为单位对源码进行拆分,着重对网页中<title>,<meta>,<body>,<a>这些标签进行分析并生成特征向量F,F=<F1,F2,F3,F4,F5,F6,F7,F8,F9>。其中前4个F1,F2,F3,F4为网站的内容特征,F5、F6、F7、F8为网站的链接特征,最后一个F9为网站的语义特征。
对于网站的内容特征,主要分析<body>,<meta>标签以及JavaScript代码。主要的网站的内容特征有:
停用词数量特征值:停用词是网页文本中没有实际意义的词汇,如it、she、or、a、the、am等。恶意网站会采用机器自动填充内容或者用关键词填充文本,使得停用词较合法网站少,网页停用词数量特征值的定义如下:
其中,其中,F1为停用词数量特征值;stop_rate是停用词比率,指网页中停用词数量占总字数的比率,Ns和Nt分别是网页中停用词数量与总字数;是停用词比率的阈值,取值为0-1,该阈值的基值按以下实验方式确定:按逐次升高0.1,其他特征向量保持不变,来记录准确率最高时的值作为基值。
错误词数量特征值:恶意网站为了避免搜索引擎的检测,通常使用错误或者不存在的词汇,而合法网站中几乎没有拼写错误。恶意网站与合法网站较为突出的区别就是错误词汇的数量,使用常用词汇库对网站内容错误词汇进行检查,网页错误词数量特征值的定义如下:
其中,F2为错误词数量特征值;error_rate为错误词比率,指网页中错误的词数量占总字数的比率,Ne和Nt分别是网页中的错误字数和总字数;是错误词比率的阈值,取值为0-1,该阈值的基值按以下实验方式确定:按逐次升高0.1,其他特征向量(即F1,F3-F9)保持不变,来记录准确率最高时的值作为基值。
关键字个数特征值:恶意网站会在网页内容中尽可能多的添加关键字,从而欺骗搜索引擎,诱导用户点击网页。合法网站的关键词描述精确而且数量较少,能够较为准确的概括文本信息,而恶意网站的关键词个数较多,而且没有关联性。关键字个数特征值的定义如下:
其中,F3为关键字数量特征值;Nk表示网页中的关键字,是关键字个数的参数,在网页中的取值为100以内,该阈值的基值按以下实验方式确定:按逐次升高10,其他特征向量保持不变,来记录准确率最高时的作为基值。
网页文本词汇数量特征值F4:一般来说,合法网站中的字数可能高于恶意网站。恶意网站可能包含不良图像或者能够重定向到恶意网站,例如,通过<iframe>标签嵌套页面。网页文本词汇数量较少,是恶意网站的可能性会增大。
网站链接特征主要分析网页源码中的<a>标签以及一些可获得的链接数据来提取网页链接定量特征,主要的网站内容特征有:
网页PageRank值,即网页排名值:PageRank是最早由Google提出的网页排名算法,根据网页之间的链接关系,可靠性越高的网站会获得更高的PR值(网站的重要性)。将PageRank值添加到基于链接的特征中,以对网页的可靠性做出初步判断。PageRank值的计算公式为:
其中,F5为网页排名值;PR是网络拓扑图的网站节点的PageRank值;d是阻尼因子;Opk是指向pk的页面集,pk是当前页面;L(pk)是来自网页u的链接数;d是阻尼因子;Opk是指向pk的页面集;L(pk)是来自网页u的链接数。
空链接数量特征值:空链接是出现在网页上没有指向目标端点的链接。当用户点击空链接时,它会保持静止。恶意网站为了伪装地像合法网站,会放一些空链接伪造链接数量。恶意网站可使用一些设计空链接的代码,例如<a href=””></a>,<a href=”#”></a>,<a href=”###”></a>,或使用JavaScript伪协议,<a href=”javascript:void(0);”></a>,<a href=”javascript:void(0)”></a>,<a href=”javascript:;”></a>,<a href=”javascript:”></a>等。空链接数量特征值的定义如下:
其中,F6为空链接数量特征值;null_rate是网页空链接率,Le和Lt分别是网页中空链接和总链接的数量;是网页空链接率的阈值,取值为0~1之间,该阈值的基值按以下实验方式确定:按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值。
网页重定向链接数量特征值:重定向链接是指网页通过链接可以跳转到另一个地方,可能处于页面内也可能在页面外部。恶意网站会设计重定向链接,将用户重定向到其他网站,例如广告或恶意网站等。通常,可以通过<meta http-equiv=”refresh”>或使用JavaScript进行重定向,例如设置window.location或document.location值进行重定向。网页重定向链接的参数定义如下:
其中,F7为网页重定向链接数量特征值;out_rate是网页重定向链接率,Lex和Lt分别是重定向链接数量和总链接数量;是网页重定向链接率的阈值,取值为0~1之间,该阈值的基值按以下实验方式确定:按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值。
网页外部链接数量特征值:外部链接是指能够链接到与网站不同的域的链接。恶意网站通常情况下经常链接到不同域名网站或提升自身排名,或指向不同的恶意网站。因此恶意网站可能比合法网站拥有更多的外部链接。网页外部链接数的参数定义如下:
其中,F8为网页外部链接数量特征值;out_rate是网页重定向链接率,Lex和Lt分别是重定向链接数量和总链接数量;是网页重定向链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值。
(2)网站语义特征提取:
将采用网站源码中与网站语义密切相关的标签进行语义分析,并使用page2vec算法提取各个标签的语义信息,合成网站的语义特征。page2vec算法流程如图3所示。
网站的定量特征的选择依赖专家经验。由于恶意网站常采用机器填充字段或者添加多种关键词混淆浏览器检测机制,因此恶意网站的标签语义关联性较合法网站弱,因此本发明考虑了将网站语义特征融入特征提取阶段。本发明使用标签语义融合的方式向量化网站语义特征。对于爬虫得到的网页源码,提取重要的标签,简化多于的网页文本,这里采用的主要标签有<body>、<keyword>、<description>和<title>四种标签。将同一标签内的文本视为整体,并分别处理这四个标签,可以更好地拟合网页的文本特征。
网页的文本向量嵌入方法是采用word2vec算法,通过同一标签中的上下文词汇,预测当前词汇从而得到当前词汇的向量化表示。同一标签中的词汇表示为{w1,w2,w3…wn}。该步骤旨在最大化对数函数L:
其中,wi为当前预测的词汇;c为训练集上下文的窗口大小,{b1……bn}代表单个标签中的词汇;
将所有单词的one-hot编码作为输入。在输入层,它将使用目标词i之前和之后的c个词来预测词i。在投影层,将输入层的2c个向量相加,将得到Kw:
结合哈夫曼树以及梯度上升方法,最终得到的预测单词的向量化表示为:
其中η是学习率,取值为0.1。
通过word2vec嵌入单词后,将得到每个单词的输出向量以标签为单位聚合,以<body>标签为例,合成的标签向量可以表示为:
在网站的标签属性上,选择的标签之间应有语义关联性,它们相互影响。合法网站的标签语义应高度关联而恶意网站不同标签的关联性可能较低。使用自注意力机制的目的是充分地考虑了标签之间的语义联系,衡量标签向量之间的关联性,突出表示较为重要的网页内容。
使用xbody,xkeyword,xdescription,xtitle表示合成的标签的向量,并结合生成矩阵表现形式,记为Xpage。对于自注意力机制,定义查询向量序列、关键向量序列和值向量序列分别为Q、K、V,公式表示为:
Q=WQXpage
K=WKXpage
V=WVXpage
为了计算不同标签之间的相关性,在合成了上述向量之后,通过以下方式计算标签注意力值,为:
其中,是尺度。
为了合成网页向量表示,在得到了经过自注意力机制的输出向量之后,将标签分离并融合,使得网站特征可以由向量形式表示,而非矩阵形式。便于后续图卷积神经网络分类器处理。网页语义向量合成公式为:
oi=vi·d′i,j
(3)图卷积神经网络检测模型:
在检测模型方面,本发明采用图卷积神经网络,并结合GraphSmote算法对网站拓扑进行过采样处理,平衡网络中恶意网站与合法网站数量极度不平衡问题。使用获取得到的网站定量特征与语义特征,结合网络中网站间的拓扑关系捕获相邻节点的特征进行学习,并使用双层图卷积神经网络进行恶意网站检测,检测模型的总体框架如图3所示。
无论是现实检测场景中或者是采样获得的数据集中,合法网站的数量都远大于真实网站的数量。如果不经过处理,仅仅依据少量的恶意网站数据训练的模型,不仅泛化能力较差而且严重影响了检测的准确性。为了解决这个问题,本发明在模型训练阶段进行了数据过采样处理,与恶意网站分类器进行结合。
对图结构进行过采样处理利用GraphSmote算法构建网站拓扑增广图数据,针对已有样本特征进行图的扩展,主要分为以下几个阶段:
401)对现有网站拓扑进行特征提取:
本发明实施例中,利用图神经网络对现有的网站拓扑结构进行特征学习。图神经网络对输入的网站节点特征进行提取,学习网站节点表示,保留了网站节点属性以及图拓扑信息。图神经网络隐藏层消息传播和融合的过程可以表示为:
hv=σ(W·concat(Xv,M,Av))
其中,hv是网站节点v的嵌入,W是权重参数,σ是激活函数,M表示输入节点的属性矩阵,Xv表示网站节点v的特征,A是网站图的邻接矩阵。
402)在嵌入空间中生成少数类的特征属性:
新节点属性生成利用恶意网站的特征值与它们在嵌入空间中最近的邻域进行插值,合成的属性值应同样属于恶意网站节点类别。取少数类样本v,获得同标签样本的最近邻域样本为:
其中,cn(v)指的是来自同一类的样本v的最近邻,使用嵌入空间中的欧几里德距离测量。通过获得的最近邻域样本,通过插值方法合成新的恶意网站节点属性:
hnew=(1-δ)·hv+δ·hcn(v)
403)构造新合成节点与旧结点之间的链接关系:
合成新的少数类节点后需要构造新、旧节点的链接关系,对旧的网站拓扑图进行扩充。采用带权内积解码器来计算节点之间的相关性,从而推导边的生成。利用带权内积解码器计算节点u和节点v的相关性的方式为:
Edu,v=softmax(σ(hv·S·hu))
其中,Edu,v是指节点u和节点v之间的预测关系信息,S是捕获节点之间交互的参数矩阵。
通过原始图来训练解码器的权重矩阵S,计算得到原始的网站拓扑图的重构邻接矩阵,用E表示,重构误差可计算为:
Costedge=||Ed-A||2 M
解码器训练好后,可利用解码器预测新、旧网站节点间边的关系,这里设置每条边没有权重,节点间有边则邻接矩阵设为1,否则为0,则新的增广图的邻接矩阵为:
其中,γ是阈值,是网络拓扑图经过GraphSMOTE之后的邻接矩阵,Edu,v′是指节点u和节点v′之间的预测关系信息。
(4)图卷积神经网络分类器:
图卷积神经网络将卷积运算推广到图结构的数据。本发明在网站拓扑上采用基于谱图方法的图卷积处理网站单节点信息,处理相邻网站之间的强关系性。在谱图方法中,图由相应的拉普拉斯矩阵表示,通过分析拉普拉斯矩阵及其特征值,可以得到图结构的性质。定义图的拉普拉斯矩阵L=D–A,其中D为对角度矩阵,Dii=∑jAij,A为邻接矩阵,标准化为IN为单位矩阵。拉普拉斯矩阵的特征值分解为L=UΛUT,Λ=diag([λ0,…,λN-1]),根据拉普拉斯矩阵性质,U是一个正交矩阵。信号的傅里叶变换为与之的逆变换为因此可得,图G上的信号x通过卷积核gθ:
gθ*x=UgθUTx
其中gθ是卷积核。图信号的卷积运算等于图傅里叶变换到谱域的这些信号的乘积,因此上述公式可以理解为分别将gθ和x通过傅里叶变换到谱域,将结果相乘再进行傅里叶逆变换,得到卷积运算的最终结果。由于本发明针对的网站拓扑图的规模比较大,为了减轻计算量,根据切比雪夫多项式进行逼近处理。同时,在网站拓扑图中存在许多孤立的网站节点,这些网站与其他网站没有链接关系,为了避免孤立网站节点与梯度爆炸问题,对每个网站节点添加一个自循环处理。优化后的图卷积公式为:
其中切比雪夫多项式的递归定义为Tk(x)=2xTk-1(x)-Tk-2(x),T0(x)=1,T1(x)=x。图卷积使用线性整流函数作为激活函数,输入为网站拓扑增广图的邻接矩阵以及各节点的特征向量,图卷积捕获了空间维度中的每个节点的相邻信息后,卷积更新当前节点的属性特征,利用图卷积神经网络作为特征提取器的隐藏层传递函数为:
经过上述的图卷积神经网络方法可以较好的传递并预测网站的特征,将真实的网站特征与预测值做差值,将结果经过下一层图卷积神经网络并使用损失函数优化模型参数。对网站的分类是一个二分类问题,将网站类型分为合法网站与恶意网站两种类别。为了实现图卷积神经网络二分类,双层图卷积神经网络的前向传播公式可以计算为:
其中,W(0)为输入层-到-隐藏层的权重矩阵,W(1)为隐藏层-到-输出层的权重矩阵,X是节点嵌入特征。分类的损失函数为:
其中,YL是具有标签的节点索引集,F表示特征数量,Z是卷积输出矩阵。即可准确检测恶意网站。
本实施例的基于图卷积神经网络机制的恶意网站检测方法,利用page2vec算法首次将网站标签文本语义引入特征提取环节。摒弃了传统特征提取方式过于依赖专家经验的缺陷。强化表达了网站文本标签主题的相关性以及相邻网页的语义连接性。利用过采样处理方式结合图卷积神经网络分类器,充分考虑到网站数据不平衡的现实问题,避免了过拟合降低检测准确率的问题。不同于传统方式考虑单节点特征,利用图卷积神经网络作为特征提取器以及分类器,可以通过图的方式,挖掘网站之间的关联关系,以构建拓扑图的方式将邻居节点的属性融入网站特征学习中,可以有效地检测网站是否为恶意网站。
本实施例的方法可部署在安全检测软件中,实现检测恶意网站的准确识别,提高恶意网站检测的准确度。
实施例2
图6示意了恶意网站检测系统的部署。将对应于检测方法实现的恶意网站检测装置部署在应用数据安全网关上,通过互联网传递的各种网站数据可分为正常网站与恶意网站。通过应用数据安全网管上部署的恶意网站检测系统,如果网站检测为恶意网站,则过滤掉恶意网站,由网关进行告警处理。若为合法网站,则终端用户可以正常访问,进行数据传输,防止网站通过漏洞或内容攻击而收集用户个人信息,造成用户信息以及财产安全威胁。
本领域普通技术人员可以理解:实现上述实施例方法中的全部或部分流程是可以通过程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。本文背景技术部分公开的信息仅仅旨在加深对本发明的总体背景技术的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。
Claims (10)
1.一种恶意网站攻击检测方法,其特征在于,包括:
步骤1,网站定量特征提取:获取待检测网站的网页源码,从网页源码中提取待检测网站的定量特征,所述定量特征包括:内容特征和链接特征;
步骤2,网站语义特征提取:从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,将各个标签的语义信息合成为待检测网站的语义特征;
步骤3,生成网站的特征向量:将所述步骤1得出的待检测网站的定量特征与所述步骤2得出的待检测网站的语义特征合成为待检测网站的特征向量;
步骤4,检测恶意网站:以待检测网站的特征向量为输入,利用以过采样拓展图拓扑结构方式构建的网站拓扑增广图数据作为训练数据预先训练好的图卷积神经网络分类器进行预测得出该待检测网站的类型分类,所述类型分类包括:恶意网站与合法网站。
2.根据权利要求1所述的恶意网站攻击检测方法,其特征在于,所述方法中,按以下方式以过采样拓展图拓扑结构方式构建的网站拓扑增广图数据作为训练数据训练图卷积神经网络分类器,包括:
步骤401,对现有网站拓扑进行特征提取:通过图神经网络分类器对输入的网站的特征向量进行提取,学习网站节点表示,得出网站节点属性和图拓扑信息;
步骤402,在嵌入空间中生成少数类节点的特征属性:利用恶意网站的特征值与它们在嵌入空间中最近的邻域进行插值生成新节点属性,该新节点属性属于恶意网站节点类别;
步骤403,构造新合成节点与旧节点之间的链接关系:
新合成节点后需要构造新、旧节点的链接关系,对网站原拓扑图进行扩充,采用带权内积解码器计算新合成节点与旧节点之间的相关性,推导边的生成,根据生成的边在网站原拓扑图上链接新合成节点完成网站原拓扑图的扩充得到网站拓扑增广图数据;
步骤404,以得到的网站拓扑增广图数据作为训练数据训练图卷积神经网络分类器。
3.根据权利要求1或2所述的恶意网站攻击检测方法,其特征在于,所述方法中,所述图卷积神经网络分类器的结构是由输入层、隐藏层和输出层组成的双层图卷积神经网络;
其中,输入层的输入为网站拓扑增广图数据的邻接矩阵以及各网站的特征向量,输入层的图卷积公式为:
其中,gθ为图卷积神经网络分类器的卷积核;x是输入的网站节点;θ是切比雪夫系数向量;是的度矩阵;A是图的邻接矩阵;IN为单位矩阵;
隐藏层作为特征提取器,接收所述输入层的输出,该隐藏层的传递函数为:
其中,各参数含义为:σ是非线性激活函数;是的度矩阵;A是网络中网站拓扑图的邻接矩阵,IN为网络中网站拓扑图的单位矩阵;H(l)是图神经网络层的特征,W(l)是图神经网络层的权重;
输出层的前向传播公式为:
其中,W(0)为输入层-到-隐藏层的权重矩阵;W(1)为隐藏层-到-输出层的权重矩阵,X是网站节点嵌入特征;
输出层分类的损失函数为:
其中,Loss是输出层的分类损失函数;YL是具有标签的网站节点索引集;F表示特征向量的数量;Z是经过图卷积神经网络分类器传播后的输出向量。
4.根据权利要求1或2所述的恶意网站攻击检测方法,其特征在于,所述步骤1中,按以下方式从网页源码中提取待检测网站的内容特征和链接特征,包括:
以标签为单位对网页源码进行拆分,拆分后得到以标签为单位的HTML代码,从<title>、<meta>、<body>、<a>各标签对应的HTML代码提取待检测网站的内容特征及链接特征;其中,
所述待检测网站的内容特征包括:停用词数量特征值、错误词数量特征值、关键字数量特征值、网页文本词汇数量特征值;
所述待检测网站的链接特征包括:网页排名值、空链接数量特征值、网页重定向链接数量特征值、网页外部链接数量特征值。
5.根据权利要求4所述的恶意网站攻击检测方法,其特征在于,所述停用词数量特征值的停用词指网页文本中没有实际意义的词汇,该停用词数量特征值的计算方式如下:
其中,F1为停用词数量特征值;stop_rate是停用词比率,指网页中停用词数量占总字数的比率,Ns和Nt分别是网页中停用词数量与总字数;是停用词比率的阈值,取值为0-1,按逐次升高0.1,其他特征向量保持不变,来记录准确率最高时的值作为基值;
所述错误词数量特征值的错误词汇指网页文本中拼写错误或者不存在的词汇,该错误词数量特征值的计算方式如下:
其中,F2为错误词数量特征值;error_rate为错误词比率,指网页中错误的词数量占总字数的比率,Ne和Nt分别是网页中的错误字数和总字数;是错误词比率的阈值,取值为0-1,按逐次升高0.1,其他特征向量保持不变,来记录准确率最高时的值作为基值;
所述关键字数量特征值的计算方式如下:
其中,F3为关键字数量特征值;Nk表示网页中的关键字;是关键字个数的参数,在网页中取值为100以内,按逐次升高10,其他特征向量保持不变,来记录准确率最高时的值作为基值;
所述网页排名值的计算方式如下:
其中,F5为网页排名值;PR是网络拓扑图中网站节点的PageRank值;d是阻尼因子,一般取0.85;pk是当前计算的网站页面;是指向网站pk的网站页面集合;L(pk)是pk链出网站页面的数量;N是所有页面的数量;
所述空链接数量特征值的计算方式如下:
其中,F6为空链接数量特征值;null_rate是网页空链接率,Le和Lt分别是网页中空链接和总链接的数量;是网页空链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值;
所述网页重定向链接数量特征值的计算方式如下:
其中,F7为网页重定向链接数量特征值;redirect_rate是网页重定向链接率,Lr和Lt分别是重定向链接数量和总链接数量;是网页重定向链接率的阈值,取值为0~1之间,以逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值;
所述网页外部链接数量特征值的计算方式如下:
其中,F8为网页外部链接数量特征值;out_rate是网页重定向链接率,Lex和Lt分别是重定向链接数量和总链接数量;是网页重定向链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值。
6.根据权利要求1或2所述的恶意网站攻击检测方法,其特征在于,所述步骤2中,按以下方式从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,合成待检测网站的语义特征,包括:
从待检测网站的网页源码中选定<body>、<keyword>、<description>和<title>四种标签作为与网站语义密切相关的重要标签;
将选定的同一标签内的文本视为整体,采用word2vec算法从各标签中的上下文词汇,预测当前词汇得到当前词汇的向量化表示,将得到的每个词汇的输出向量以标签为单位聚合成为标签向量,将所有标签向量结合生成标签矩阵,利用标签矩阵通过自注意力机制得出查询向量序列、关键向量序列和值向量序列,通过查询向量序列、关键向量序列和值向量序列计算得出各标签的注意力值,标签的注意力值的计算公式为:
其中,D是注意力值;Q,K,V分别为查询向量序列、关键向量序列和值向量序列,是尺度;
利用上述方式计算得出的<body>、<keyword>、<description>和<title>标签的注意力值,按以下方式计算合成待检测网站的语义特征,为:
oi=vi·d′i,j
其中,各参数含义为:F9为待检测网站的语义特征;oi为输出向量的行向量,其中每一行分别代表<body>、<keyword>,<description>和<title>标签的注意力值;Opage为网页语义向量;obody,okeyword,odescription,otitle分别为<body>,<keyword>,<description>,<title>标签的语义向量。
7.一种恶意网站攻击检测装置,其特征在于,包括:网站定量特征提取模块、网站语义特征提取模块、网站特征向量生成模块和恶意网站检测模块;其中,
所述网站定量特征提取模块,与所述网站特征向量生成模块通信连接,能获取待检测网站的网页源码,从网页源码中提取待检测网站的定量特征,所述定量特征包括:内容特征和链接特征;
所述网站语义特征提取模块,与所述网站特征向量生成模块通信连接,能从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,将各个标签的语义信息合成为待检测网站的语义特征;
所述网站特征向量生成模块,与所述恶意网站检测模块通信连接,能将所述网站定量特征提取模块得出的待检测网站的定量特征与所述网站语义特征提取模块得出的待检测网站的语义特征合成为待检测网站的特征向量;
所述恶意网站检测模块,能以所述网站特征向量生成模块输出的待检测网站的特征向量为输入,利用以过采样拓展图拓扑结构方式构建的网站拓扑增广图数据作为训练数据预先训练好的图卷积神经网络分类器进行预测得出该待检测网站的类型分类,所述类型分类包括:恶意网站与合法网站。
8.根据权利要求所述的恶意网站攻击检测装置,其特征在于,所述网站定量特征提取模块按以下方式从网页源码中提取待检测网站的内容特征和链接特征,包括:
以标签为单位对网页源码进行拆分,拆分后得到以标签为单位的HTML代码,从<title>、<meta>、<body>、<a>各标签对应的HTML代码提取待检测网站的内容特征及链接特征;其中,
所述待检测网站的内容特征包括:停用词数量特征值、错误词数量特征值、关键字数量特征值、网页文本词汇数量特征值;
其中,所述停用词数量特征值的停用词指网页文本中没有实际意义的词汇,该停用词数量特征值的计算方式如下:
其中,F1为停用词数量特征值;stop_rate是停用词比率,指网页中停用词数量占总字数的比率,Ns和Nt分别是网页中停用词数量与总字数;是停用词比率的阈值,取值为0-1,按逐次升高0.1,其他特征向量保持不变,来记录准确率最高时的值作为基值;
所述错误词数量特征值的错误词汇指网页文本中拼写错误或者不存在的词汇,该错误词数量特征值的计算方式如下:
其中,F2为错误词数量特征值;error_rate为错误词比率,指网页中错误的词数量占总字数的比率,Ne和Nt分别是网页中的错误字数和总字数;是错误词比率的阈值,取值为0-1,按逐次升高0.1,其他特征向量保持不变,来记录准确率最高时的值作为基值;
所述关键字数量特征值的计算方式如下:
其中,F3为关键字数量特征值;Nk表示网页中的关键字,是关键字个数的参数,在网页中的取值为100以内,按逐次升高10,其他特征向量保持不变,来记录准确率最高时的作为基值;
所述待检测网站的链接特征包括:网页排名值、空链接数量特征值、网页重定向链接数量特征值、网页外部链接数量特征值;
其中,所述网页排名值的计算方式如下:
其中,F5为网页排名值;PR是网络拓扑图中的网站节点的PageRank值;d是阻尼因子;是指向pk的页面集,pk是当前页面;L(pk)是来自网页u的链接数;d是阻尼因子;是指向pk的页面集;L(pk)是来自网页u的链接数;
所述空链接数量特征值的计算方式如下:
其中,F6为空链接数量特征值;null_rate是网页空链接率,Le和Lt分别是网页中空链接和总链接的数量;是网页空链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值;
所述网页重定向链接数量特征值的计算方式如下:
其中,F7为网页重定向链接数量特征值;out_rate是网页重定向链接率,Lex和Lt分别是重定向链接数量和总链接数量;是网页重定向链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值;
所述网页外部链接数量特征值的计算方式如下:
其中,F8为网页外部链接数量特征值;out_rate是网页重定向链接率,Lex和Lt分别是重定向链接数量和总链接数量;是网页重定向链接率的阈值,取值为0~1之间,按逐次升高0.1,其它特征向量保持不变,来记录准确率最高时的值作为基值;
所述网站语义特征提取模块按以下方式从待检测网站的网页源码中选定与网站语义密切相关的重要标签,从选定的重要标签中提取各个标签的语义信息,合成待检测网站的语义特征,包括:
从待检测网站的网页源码中选定<body>、<keyword>、<description>和<title>四种标签作为与网站语义密切相关的重要标签;
将选定的同一标签内的文本视为整体,采用word2vec算法从各标签中的上下文词汇,预测当前词汇得到当前词汇的向量化表示,将得到的每个词汇的输出向量以标签为单位聚合成为标签向量,将所有标签向量结合生成标签矩阵,利用标签矩阵通过自注意力机制得出查询向量序列、关键向量序列和值向量序列,通过查询向量序列、关键向量序列和值向量序列计算得出各标签的注意力值,标签的注意力值的计算公式为:
其中,D是注意力值;Q,K,V分别为查询向量序列、关键向量序列和值向量序列,是尺度;
利用上述方式计算得出的<body>、<keyword>、<description>和<title>标签的注意力值,按以下方式计算合成待检测网站的语义特征,为:
oi=vi·d′i,j
其中,各参数含义为:F9为待检测网站的语义特征;oi为输出向量的行向量,其中每一行分别代表<body>、<keyword>,<description>和<title>标签的注意力值;Opage为网页语义向量;obody,okeyword,odescription,otitle分别为<body>、<keyword>、<description>、<title>标签的语义向量;
所述恶意网站检测模块的图卷积神经网络分类器的结构是由输入层、隐藏层和输出层组成的双层图卷积神经网络;
其中,输入层的输入为网站拓扑增广图数据的邻接矩阵以及各网站的特征向量,输入层的图卷积公式为:
其中,gθ为图卷积神经网络分类器的卷积核;切比雪夫多项式的递归定义为Tk(x)=2xTk-1(x)-Tk-2(x),T0(x)=1,T1(x)=x;L为网站拓扑增广图数据的拉普拉斯矩阵,等于D–A,D为对角度矩阵,Dii=∑jAij,A为图的邻接矩阵,标准化为IN为单位矩阵;
隐藏层作为特征提取器,接收所述输入层的输出,该隐藏层的传递函数为:
其中,各参数含义为:A是网络中网站拓扑图的邻接矩阵,IN为网络中网站拓扑图的单位矩阵;是的度矩阵,H是神经网络层的特征,σ是神经网络的非线性激活函数;
输出层的前向传播公式为:
其中,W(0)为输入层-到-隐藏层的权重矩阵;W(1)为隐藏层-到-输出层的权重矩阵,X是网站节点嵌入特征;
输出层分类的损失函数为:
其中,Loss是输出层的分类损失函数;YL是具有标签的网站节点索引集;F表示特征向量的数量;Z是经过图卷积神经网络分类器传播后的输出向量。
9.一种恶意网站攻击检测系统,其特征在于,包括若干终端设备和至少一个应用数据安全网关,所述应用数据安全网关采用权利要求7或8所述的恶意网站攻击检测装置;
各终端设备均通过应用数据安全网关访问互联网的网站,在任一终端设备通过应用数据安全网关访问互联网的网站时,由所述应用数据安全网关对所访问的网站进行检测,若检测确认所访问网站为恶意网站时,则禁止终端设备对该恶意网站的访问。
10.一种处理设备,其特征在于,包括:
至少一个存储器,用于存储一个或多个程序;
至少一个处理器,能执行所述存储器所存储的一个或多个程序,在一个或多个程序被处理器执行时,使得所述处理器能实现权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211213957.5A CN115994351A (zh) | 2022-09-30 | 2022-09-30 | 一种恶意网站检测方法、装置、系统及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211213957.5A CN115994351A (zh) | 2022-09-30 | 2022-09-30 | 一种恶意网站检测方法、装置、系统及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115994351A true CN115994351A (zh) | 2023-04-21 |
Family
ID=85990935
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211213957.5A Pending CN115994351A (zh) | 2022-09-30 | 2022-09-30 | 一种恶意网站检测方法、装置、系统及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115994351A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116723050A (zh) * | 2023-08-02 | 2023-09-08 | 北京微步在线科技有限公司 | 基于图数据库的仿冒网站检测方法、装置、设备及介质 |
CN117235532A (zh) * | 2023-11-09 | 2023-12-15 | 西南民族大学 | 一种基于M-Bert的恶意网站检测模型的训练及检测方法 |
-
2022
- 2022-09-30 CN CN202211213957.5A patent/CN115994351A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116723050A (zh) * | 2023-08-02 | 2023-09-08 | 北京微步在线科技有限公司 | 基于图数据库的仿冒网站检测方法、装置、设备及介质 |
CN116723050B (zh) * | 2023-08-02 | 2023-10-27 | 北京微步在线科技有限公司 | 基于图数据库的仿冒网站检测方法、装置、设备及介质 |
CN117235532A (zh) * | 2023-11-09 | 2023-12-15 | 西南民族大学 | 一种基于M-Bert的恶意网站检测模型的训练及检测方法 |
CN117235532B (zh) * | 2023-11-09 | 2024-01-26 | 西南民族大学 | 一种基于M-Bert的恶意网站检测模型的训练及检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | PDRCNN: Precise phishing detection with recurrent convolutional neural networks | |
Jain et al. | A machine learning based approach for phishing detection using hyperlinks information | |
CN108965245B (zh) | 基于自适应异构多分类模型的钓鱼网站检测方法和系统 | |
CN115994351A (zh) | 一种恶意网站检测方法、装置、系统及设备 | |
Yuan et al. | Malicious URL detection based on a parallel neural joint model | |
CN108038173B (zh) | 一种网页分类方法、系统及一种网页分类设备 | |
CN111259219B (zh) | 恶意网页识别模型建立方法、识别方法及系统 | |
Mourtaji et al. | Hybrid rule-based solution for phishing URL detection using convolutional neural network | |
CN112541476B (zh) | 一种基于语义特征提取的恶意网页识别方法 | |
Liu et al. | An efficient multistage phishing website detection model based on the CASE feature framework: Aiming at the real web environment | |
CN116917894A (zh) | 使用转换器检测网络钓鱼url | |
Rao et al. | Application of word embedding and machine learning in detecting phishing websites | |
Zhang et al. | Cross-site scripting (XSS) detection integrating evidences in multiple stages | |
Yuan et al. | A novel approach for malicious URL detection based on the joint model | |
CN114297079A (zh) | 基于时间卷积网络的xss模糊测试用例生成方法 | |
Liu et al. | Multi-scale semantic deep fusion models for phishing website detection | |
CN113904834B (zh) | 基于机器学习的xss攻击检测方法 | |
Zhu et al. | CCBLA: a lightweight phishing detection model based on CNN, BiLSTM, and attention mechanism | |
Valiyaveedu et al. | Survey and analysis on AI based phishing detection techniques | |
Hu et al. | Cross-site scripting detection with two-channel feature fusion embedded in self-attention mechanism | |
Vishva et al. | Phisher fighter: website phishing detection system based on url and term frequency-inverse document frequency values | |
CN117176433A (zh) | 网络数据的异常行为检测系统及方法 | |
Rayyan et al. | Uniform resource locator classification using classical machine learning & deep learning techniques | |
CN116827656A (zh) | 网络信息安全防护系统及其方法 | |
Kasim | Automatic detection of phishing pages with event-based request processing, deep-hybrid feature extraction and light gradient boosted machine model |
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 |