一种基于Bert模型和三支决策算法的网页暗链检测方法
文献发布时间:2024-04-18 19:58:30
技术领域
本发明属于网络安全技术领域,具体涉及一种基于Bert模型和三支决策算法的网页暗链检测方法。
背景技术
近年来,随着网络技术的不断发展,利用网络流量获取经济收益已经成为一种普遍的营销方式。然而,这种方式也被不法分子引入到网络黑灰产业链中,其中“网页暗链”就是一种典型的问题。网页暗链指不法分子通过夺取网站服务器一定权限,修改网页内容,将异常的网页链接以在线访客不可见、但搜索引擎能索引到的形式隐藏其中,以提升异常网页链接的搜索引擎排名,进而为异常网页引入大量流量。网页暗链往往被非法链接到色情、诈骗、赌博、非法游戏私服、虚假医疗等黑灰产业,甚至是反动信息。暗链严重扰乱了搜索引擎排名机制,使得搜索结果用户满意度下降,甚至因为误导用户造成损失而引起法律纠纷。且若将包含非法内容的暗链植入到政府、教育等公共网站,还会对上述网站及对应单位的信誉形象产生严重的负面影响。因此,关注网络安全威胁中的暗链问题对于保障网络安全和用户隐私都具有重要的现实意义,同时对于营造风清气正的网络空间和净化网络环境也具有重要的社会意义。
传统基于人工的暗链检测方法虽然准确可靠,但存在耗资巨大、效率低、技术要求高以及应对不及时等问题。因此,基于网页暗链的独有特征,如样式特征、文本特征等,利用机器学习算法自动检测网页暗链成为一种有效的解决方案。然而,随着暗链黑灰产中挂链用户的不断变化,网页暗链对应的关键词也在不断更新。此外,随着社会的发展,正常网站也不断引入新的关键词。面对网络空间中正常网页和暗链网页关键词的不断变化,而基于文本的机器学习暗链检测方法在面临未训练过的新词时,无法准确赋予其属于正类或者负类的隶属度概率值。同时,基于传统二支决策的暗链自动检测方法只有以下两种结果,即判断网页中存在或不存在暗链。此时,基于传统二支决策法的暗链检测模型面临以下风险:如果将正常网页误判为暗链网页,系统会将该网站发送给第三方处理,但将没有暗链的网站交给第三方处理无疑增加了第三方的工作量;如果将存在暗链的网页漏判为正常网页,将导致存在暗链的网站被忽略掉,暗链中所指向的博彩、虚假医疗、色情、游戏外挂等不正规、非法的网站就可能被普通用户信任并点击进入,从而造成经济损失、引起社会甚至法律纠纷。
上述分析表明,基于二支决策的暗链检测已经不能满足互联网快速发展的时代需求。为了解决这一现实需求,本发明提出一种基于三支决策的暗链检测算法。该算法不仅可以有效地分类经充分训练的正常和暗链网页,还通过将新获取的网页关键词分类到边界域并在满足一定条件后重新训练分类器的方式,解决了传统二支决策模型无法有效应对网页暗链不断变化的问题。
发明内容
本发明的目的是提供一种基于Bert模型和三支决策算法的网页暗链检测方法,用于解决现有基于人工的暗链检测技术效率低、成本高、技术要求高以及应对不及时等问题。同时,现有基于二支决策的暗链检测方法又难以应对网络空间中不断增加的正常、暗链网页,导致检测结果存在很多误报和漏报问题。
所述的一种基于Bert模型和三支决策算法的网页暗链检测方法,包括下列步骤。
S1、收集正常网页和网页暗链中的文本信息形成数据集,基于该数据集训练面向暗链文本特征的Bert模型;
S2、提取待检测网页中的文本信息,利用所述Bert模型从上述文本信息中提取特征向量,再通过三支决策算法对所述特征向量进行分类,得到待检测网页的决策集合,决策集合包含负向决策、正向决策和边界决策三种元素;
S3、根据三支决策算法的分类结果判断待检测网页是否存在暗链,当能确定待检测网页是否存在暗链时,根据判断结果向第三方警示、报告或结束本网页的检测,而后转到步骤S2;当网站中是否存在暗链无法判断时,将由下一步处理网站中无法判断的边界域标签文本;
S4、对于归为边界域的标签文本,通过minHashing算法依次计算其与异常文本数据库中所有记录的文本字段的相似度,根据相似度选择将该标签文本保存在异常文本数据库的已有类别中或新设置的类别中;
S5、根据异常文本数据库中某类异常文本的频数或者异常文本数据库中记录的总数是否超过对应阈值判断是否将异常文本数据库中异常文本交由人工复核审查,审查后更新数据集并重新训练Bert模型。
优选的,所述步骤S1包括:
S1.1、收集大量网站的URL地址。
S1.2、对于收集的URL地址集合中每条URL地址,进行分类、标注和保存,形成数据集。
S1.3、设定暗链数据集中暗链样本的数量阈值,当暗链样本的数量超过数量阈值,则停止数据集的采集,执行下一步Bert模型的训练,否则通过本步骤继续采集暗链样本以补充负样本,降低样本偏置;
S1.4、基于构建的暗链数据集,训练基于Bert的暗链文本分类模型。
优选的,所述步骤S1.2对URL地址集合中每条URL地址u
S1.2.1、爬取u
S1.2.2、计算超文本中
部分的Hash值hash(hS1.2.3、对于超文本
部分,提取优选的,所述步骤S1.3的采集过程中每隔一个指定时间,对于网页源数据库中每个URL地址u
S1.3.1、爬取u
S1.3.2、计算超文本中
部分的Hash值hash(h′S1.3.3、对于超文本
部分,提取S1.3.4、如果暗链数据集中暗链样本的数量超过阈值ξ,则停止数据集的采集,执行下一步Bert模型的训练;否则读取下一条URL地址u
优选的,所述步骤S2包括:
步骤S2.1、获取待检测的网页的超文本数据;
步骤S2.2、提取出网页中每一个标签的文本,然后对上述文本进行预处理,将文本数据中重复、无效的数据进行删减,形成待检测网页的特征文本集合
步骤S2.3、利用步骤S1训练好的Bert模型提取待检测网页标签文本的特征向量集合
步骤S2.4、通过三支决策算法对X中的每一个Bert文本特征x
优选的,所述步骤S3具体包括:如果待检测网页决策集合D中判断为负向决策的数量大于阈值
优选的,通过三支决策算法对Bert文本特征分类的方法包括:先将Bert文本特征x
优选的,根据相应决策所产生的代价值计算决策阈值α,β的方法具体为:以
优选的,所述步骤S4中包括:
步骤S4.1、提取步骤S3中判断为边界决策的标签文本;
步骤S4.2、通过minHashing算法依次计算其标签文本异常文本数据库中每条记录的文本字段的相似度;
步骤S4.3、统计标签文本与每一类异常文本的平均相似度;
步骤S4.4、确定平均相似度最大的类别;
步骤S4.5、如果标签文本与各类别的异常文本间最大的平均相似度大于等于设定的阈值ε,则将标签文本设置为平均相似度最大的类别,如果标签文本与各类别的异常文本间最大的平均相似度小于设定的阈值ε,则依顺序将标签文本的类别设置为新类别,同时更新异常文本类别数量;
步骤S4.6、将标签文本及其类别保存到异常文本数据库中;
步骤S4.7、读取下一条边界决策中的标签文本,如果标签文本有效,则转到步骤S4.2,继续处理该边界文本;如果标签文本为空,表明边界决策中的标签文本已处理完毕,结束本步骤。
优选的,所述步骤S5具体包括:
步骤S5.1、统计异常文本数据库中每一类异常文本的频数;
步骤S5.2、统计最大的异常文本类别频数;
步骤S5.3、统计异常文本数据库中异常文本总数;
步骤S5.4、如果存在异常文本类别的频数大于设定的阈值σ,或者异常文本的总数超过设定的阈值τ,则将异常文本数据库中异常文本交由人工复核审查是否包含非法敏感关键词;
步骤S5.5、对应异常文本数据库中异常文本,如果文本包含非法敏感关键词,则将其标注为负类;如果文本中只包含正常关键词,则将其标注为正类;如果文本中包含的关键词词性不明,则从数据库中删除,暂不处理;然后,将标注好的数据添加到数据集中;
步骤S5.6、采用更新的数据集重新训练Bert模型。
本发明具有以下优点:本发明基于三支决策算法来延迟决策模型中未经充分训练的数据,一方面减少传统二支决策带来的错判或者漏判风险,另一方面通过引入人工来复核被判断为边界决策的标签文本,对其进行标注并更新到暗链文本数据库中,进而更新Bert暗链文本分类模型,可以使得本发明在面对不断更新的暗链关键词时依然维持优异的鲁棒性。即本发明在进行暗链检测的同时不断地反馈更新现有的系统,从而能够更加有效地适应不断变化的网络环境,检测的准确性与召回率也得到大大增强。
附图说明
图1为本发明一种基于Bert模型和三支决策算法的网页暗链检测方法的流程图;
图2为本发明中采用三支决策算法进行判断的流程图。
具体实施方式
下面对照附图,通过对实施例的描述,对本发明具体实施方式作进一步详细的说明,以帮助本领域的技术人员对本发明的发明构思、技术方案有更完整、准确和深入的理解。
如图1、2所示,本发明提供了一种基于Bert模型和三支决策算法的网页暗链检测方法,包括下列步骤。
S1、收集正常网页和网页暗链中的文本信息形成数据集,基于该数据集训练面向暗链文本特征的Bert模型(即基于Bert的文本分类模型)。
该步骤具体包括下列子步骤。
S1.1、收集大量网站的URL地址。
S1.2、对于收集的URL地址集合中每条URL地址u
该子步骤具体执行以下操作:
S1.2.1、爬取u
S1.2.2、计算超文本中
部分的Hash值hash(hS1.2.3、对于超文本
部分,提取S1.3、由于包含暗链网页的网页只占网页中极少一部分,通过S1.2步骤构造的数据库中正、负样本偏置严重。本步骤设定暗链数据集中暗链样本的数量阈值,当暗链样本的数量超过数量阈值,则停止数据集的采集,执行下一步Bert模型的训练,否则通过本步骤继续采集暗链样本以补充负样本,降低样本偏置。
采集过程中每隔一个指定时间,对于网页源数据库中每个URL地址u
S1.3.1、爬取u
S1.3.2、计算超文本中
部分的Hash值hash(h′S1.3.3、对于超文本
部分,提取S1.3.4、如果暗链数据集中暗链样本的数量超过阈值ξ,则停止数据集的采集,执行下一步Bert模型的训练;否则读取下一条URL地址u
S1.4、基于步骤S1.2和S1.3中构建的暗链数据集,训练基于Bert的暗链文本分类模型。文本分类模型能对网页中的文本特征进行提取与分类,构建相应的网页暗链数据集,并提取网页暗链的锚文本特征形成特征库。
S2、提取待检测网页中的文本信息,利用所述Bert模型从上述文本信息中提取特征向量,再通过三支决策算法对所述特征向量进行分类,得到待检测网页的决策集合,决策集合包含负向决策、正向决策和边界决策三种元素。
该步骤具体包括:
步骤S2.1、获取待检测的网页的超文本数据。
步骤S2.2、提取出网页中每一个标签的文本,然后对上述文本进行预处理,将文本数据中重复、无效的数据进行删减,形成待检测网页的特征文本集合
步骤S2.3、利用步骤S1训练好的Bert模型提取待检测网页标签文本的特征向量集合
步骤S2.4、通过三支决策算法对X中的每一个Bert文本特征x
通过三支决策算法对Bert文本特征分类的方法包括:先将Bert模型从文本t
根据相应决策所产生的代价值计算决策阈值α,β的方法具体为:以
表1:三支决策代价表
定义如下:λ
S3、根据三支决策算法的分类结果判断待检测网页是否存在暗链,当能确定待检测网页是否存在暗链时,根据判断结果向第三方警示、报告或结束本网页的检测,而后转到步骤S2;当网站中是否存在暗链无法判断时,将由下一步处理网站中无法判断的边界域标签文本。
该步骤具体包括:如果待检测网页决策集合D中判断为负向决策的数量大于阈值
S4、对于归为边界域的标签文本,通过minHashing算法依次计算其与异常文本数据库中所有记录的文本字段的相似度,根据相似度选择将该标签文本保存在异常文本数据库的已有类别中或新设置的类别中。
具体包括:
步骤S4.1、提取步骤S3中判断为边界决策的标签文本t
步骤S4.2、通过minHashing算法依次计算标签文本t
步骤S4.3、统计标签文本t
步骤S4.4、确定平均相似度最大的类别
步骤S4.5、如果h(t
步骤S4.6、将标签文本t
步骤S4.7、读取下一条边界决策中的标签文本t
S5、根据异常文本数据库中某类异常文本的频数或者异常文本数据库中记录的总数是否超过对应阈值判断是否将异常文本数据库中异常文本交由人工复核审查,审查后更新数据集并重新训练Bert模型。
所述步骤S5包括:
步骤S5.1、统计异常文本数据库中每一类异常文本的频数,记第k类异常文本的频数为TF
步骤S5.2、统计最大的异常文本类别频数,记为
步骤S5.3、统计异常文本数据库中异常文本总数,记为
步骤S5.4、如果TF
步骤S5.5、对应异常文本数据库中异常文本,如果文本包含非法敏感关键词,则将其标注为负类;如果文本中只包含正常关键词,则将其标注为正类;如果文本中包含的关键词词性不明,则从数据库中删除,暂不处理;然后,将标注好的数据添加到数据集中。
步骤S5.6、采用更新的数据集重新训练Bert模型。
本发明的优点在于当面对大量的数据集时可以提供准确的分析,且能够根据收集到的暗链属性针对目标网址提供清晰的反馈。对于较新的可疑敏感关键词也可以精准捕捉,在检测的同时不断地反馈更新现有的系统,从而更加有效全面地检测网站中的暗链。在提高网站管理方在检测暗链植入方面的效率的同时,也可以降低日常维护网站的费用。
上面结合附图对本发明进行了示例性描述,显然本发明具体实现并不受上述方式的限制,只要采用了本发明的发明构思和技术方案进行的各种非实质性的改进,或未经改进将本发明构思和技术方案直接应用于其它场合的,均在本发明保护范围之内。
- 基于机器学习的网页暗链检测方法和装置
- 一种基于三支决策的双激素人工胰脏模型预测控制算法
- 域识别加主题识别构建机器学习模型检测网页暗链的方法