APP下载

基于深度神经网络的配资网站识别研究

2021-06-03王丛双

关键词:配资域名标签

何 颖, 杨 频, 王丛双, 汤 娟

(四川大学网络空间安全学院, 成都 610207)

1 引 言

近年来,随着科技的迅速发展,互联网已经成为人们生活中不可或缺的一部分. 中国互联网络信息中心在2020年的数据统计显示,我国网民规模突破9亿,网站数量达497万个[1]. 然而,在互联网为人们的生活带来巨大便利的同时,网络的负面影响也逐渐显现. 网络违法信息开始出现在互联网的各个角落,其中通过提供非法配资来赚取盈利的网站对网民群体造成了严重的影响,威胁到了网络用户的财产安全.

配资是指根据资金需求方与配资公司签订的协议,在资金需求方原有资金的基础上,配资公司以原始资金作为配资基数按照一定比例另行提供新的资金供资金需求方使用. 配资公司要求资金需求方必须使用其公司的账户进行操作,若选择使用自己的账户,则需要抵押物,如车、房等. 配资公司会随时监督账户的亏损情况,当亏损达到原有资金的一定金额并且持续亏损时,配资公司会强行平仓. 大量民间配资公司利用互联网信息技术搭建互联网配资平台,而这些配资网站并不具备经营证券业务资质,其在本质上就不被法律允许,这种不受监管的配资带来的爆仓风险和资金安全风险不容忽视. 而大量配资网站往往裹上投资咨询、网络信息和商贸服务的外衣,有着极强的迷惑性. 因此,为了能够对配资网站进行监管,迫切需要能够准确检测出配资网站的方法.关于以网络钓鱼、网络色情为代表的以提供非法内容为主的网站识别工作已经取得了一定的进展,但是对于配资网站识别的相关研究较少. 针对恶意网站识别问题,研究者提出了很多解决方案和识别技术,主要有基于黑名单的识别方法,基于网站URL异常特征的识别方法和基于网站页面内容的识别方法.

基于黑名单的识别方法是用蜜罐技术、人工检查等手段预先构建一份包含网站URL或关键词信息的列表,通过黑名单技术可准确识别已被确认的钓鱼网站或其他类型网站. 以PhishTank[2]为例,人们可自愿提交和共享钓鱼网站网址,依据其提供的列表可以主动过滤钓鱼网址. 这种方法误报率低,但是无法准确识别新出现的钓鱼网站,维护和更新完整的黑名单列表是十分困难的.

基于网站URL异常特征的识别方法是用分析URL特征来构建网站识别模型. Abdelhamid[3]根据URL特征,提出一种基于多标签规则的分类算法来识别钓鱼网站,能够从单个数据集生成具有多个类标签的规则. Moghimi等[4]提出基于规则的使用两种新的特征集的钓鱼识别方法,使用字符串近似匹配算法来确定特征集中的页面内容和URL之间的关系. 方勇等[5]使用LSTM算法来挖掘钓鱼网址字符序列的潜在特征,提出基于LSTM与随机森林的混合框架模型提高了钓鱼网站的识别效率和检测准确率,能够快速识别海量钓鱼网站攻击. 但是网站URL特征有限且容易模仿,这在很大程度上限制特定网站识别的实际效果.

基于网站页面内容的识别方法是用挖掘标题、图片、关键字等网页内容中的特征进行识别. Mao等[6]指出网页之间的相似性是检测钓鱼网站的一个重要指标,提出一种基于网页之间视觉外观相似度来量化网页可疑度评级的算法,使用层叠样式表作为基础来量化每个页面元素的视觉相似性,并用真实的钓鱼网站样本证明了它的有效性. Zhang等[7]从文本内容和视觉内容的角度检测钓鱼网站,利用贝叶斯理论推导出的概率模型,有效地估计文本分类器和图像分类器的匹配阈值,可直接合并不同分类器产生的多个结果. Jain等[8]综合分析了基于视觉相似性的钓鱼检测技术,其利用文本内容、文本格式、HTML标签、层叠样式表和图像等特征集来做出判断,能够有效应对钓鱼攻击. 这些工作的关键在于特征的选取,不同特征的识别效果存在一定的差异. 另外,沙泓州等[9]在研究中指出,移动互联网的繁荣和社交网站的兴起使得网页的传播途径逐渐多元化,可以通过扫描“二维码”和社交网站的形式传播. 新的应用场景的出现,丰富了特征选择的范围,也对特定网站识别时选择的特征提出了更高的要求. 同时,网站规模的迅速扩大带来了海量新特征,为了保证识别效率,需要选择有助于识别特定网站的重要特征变量.

近年来深度学习在计算机视觉[10]、图像处理[11]、自然语言处理[12]和大数据分析[13-14]等许多领域的应用中取得了不错的表现. 深度神经网络(Deep Neural Networks, DNN)作为一种深度学习架构在分类问题方面[15-16]非常成功. 在上述研究成果的基础上,本文从5个不同的维度选取能够有效识别配资网站的重要特征,包括域名特征、搜索引擎收录特征、HTML标签特征、图片特征和文本特征,较全面地体现了配资网站和其他类别网站的本质区别,提出一种基于深度神经网络的配资网站识别模型.

2 基于深度神经网络的配资网站识别模型

2.1 模型框架

本文提出的配资网站识别模型如图1. 该模型主要包含三个部分:数据采集模块、特征处理模块和识别模型模块. 首先,我们通过动态爬虫技术和文本处理手段采集原始数据,进行格式化处理后,经特征提取器提取多维度特征数据;然后,经过特征向量化,将字符串等文本特征转化为特征向量;最后,我们将实验数据随机抽样分成两组,使用深度神经网络算法,利用训练集建立配资网站识别模型,再利用测试集对该模型的识别性能进行验证.

图1 识别模型构建及评估流程Fig.1 Process of recognition model construction and evaluation

2.2 特征选取

为了提高配资网站识别的准确性和可靠性,选取的特征需要能够充分体现配资网站的特征,并能够有效区分配资网站和其他类型网站. 本文参考传统恶意网站识别特征,在对大量配资类网站样本分析的基础上,从多个维度选取了共60个特征,这些特征可归纳为域名特征、搜索引擎收录特征、HTML标签特征、图片特征和文本特征等5大类,具体内容如图2所示.

图2 识别特征Fig.2 Identification features

(1) 域名特征.基于域名的特征可以分类为词汇特性和域名属性特性.

词汇特性是域名本身的文本属性. 域名由于其便于记忆的特点,成为使用者使用网站的代名词,运营者为了促进网站传播,加深使用者记忆,会使用与网站内容相关的短词汇,如PZ、Peizi等字符. 域名中的短文本词汇是反映网站类型的一个重要体现.

域名属性信息包括域名的Whois信息、备案信息、解析记录、IP归属等,这些信息可以反映目标域名的背景情况,Whois信息有域名的注册时间、注册人等,备案信息有备案网址名称、备案主体信息等,解析记录有目标域名变更情况,IP地址的归属等. 单独来看这些信息并不能作为有效区分配资网站和非配资网站的特征,但将这些特征与其他特征融入在一起后,能有效地反映域名的背景状况. 除此之外还有域名解析记录在一定时间范围的变化频率,实验中选取一年(域名的一般购买周期),获取该一年内域名解析IP的变更次数,以及这些IP地址是否属于CDN类型IP或IDC类型IP等.

(2) 搜索引擎收录特征.搜索引擎是一种收录互联网各种类型网站网页内容,给用户提供海量内容准确检索服务的工具. 借助搜索引擎,可以使用关键词检索出大量与关键词相关的内容. 为了利于网站的传播,增加被搜索引擎收录的内容,存在一种搜索引擎优化技术(Search Engine Optimization, SEO),来提高某一个网站被网络收录的速度和关键词数量. 配资网站需要通过推广来增加用户量,一般会使用这种技术手段增加收录关键词量. 因此,指定域名网站的搜索引擎收录情况,是否被搜索引擎收录配资等关键词,是配资网站的重要特性之一.

(3) HTML标签特征.每一个网站都是由HTML、Javascript和CSS共同组建而成,用户浏览网页,是浏览器对这些代码渲染后的效果. 通过对配资网站的大量分析,本文发现配资类网站在网页结构上具有众多特有特征:(a) A标签嵌入IMG标签. 配资网站常使用在A标签中嵌入IMG标签来使用户点击图片以达到跳转的目的. 配资网站会在网站首页添加大量虚假的友情链接,包括银行等,使用这种技术手段来欺骗用户,并且A标签的链接多为站外链接;(b) 导航栏IMG标签. 众多配资网站会在导航栏左侧使用图片标签的形式展示配资站点的名称,右侧则以ul/li标签结合A标签的形式给出导航菜单选项,A标签内容为站内链接;(c) Iframe标签. 配资网站为了简化部署复杂度,达到快速建站,快速迁移的目的,会使用iframe标签嵌入主站内容,从而实现只需要修改主站内容,其他网站就会同步更改;(d) 基于A标签的注册、登录跳转. 配资网站为用户提供了复杂的交易功能,需要涉及用户注册、开户等,因此基于A标签的注册跳转也被应用于模型中.

(4) 图片特征.非法配资网页的传播方式随着新的应用场景的出现逐渐多元化. 二维码作为一种全新的信息传递、识别和存储技术,能够快速传播网页. 配资网站在设计网页页面时,往往将二维码放置在醒目的位置,吸引用户去扫描,以达到推广网页的目的. 同时,随着即使通讯工具的广泛使用,配资公司还会利用微信或QQ二维码、APP下载二维码来宣传配资资讯,错误地引导投资者. 因此,检查网页中是否包含二维码图片是识别配资网站的有效方法. 配资网站中的虚假宣传图片、配资内容宣传图片也是本模型关注的重点,通过提取配资网站中的图片数据,并使用文字识别工具识别图片中的文字信息,基于文本关键词来判断文本内容是否与配资相关.

(5) 文本特征.为了实现扩大宣传、增强网站影响力的目的,配资网站会发布大量与配资相关的内容,其文本特征与正常网站存在较大差异,这是无法伪装的,这些差异恰恰可以作为判断该网站是否是配资网站的重要依据.

在多数情况下,和网站页面中其它位置的文本信息相比,网站标题的文本信息能够更好地概括网站的主题内容. 配资网站往往会通过在标题中使用“配资”、“操盘”、“股票”、“平台”等关键词来吸引和欺骗用户. 除标题外,页面中的文本信息经常含有“配资”、“杠杆”、“策略”、“实盘”、“开户”、“操盘”、“新手”和“交易”等关键词. 因此,是否出现以上关键词,统计关键词出现的个数,以及在众多关键词中出现的几个组合关键词的个数等特征将用来判断网站是否为配资网站.

同时,页面内容中是否包含“客户端下载”、“客服”、“公司信息”、“推广页面”和“关于我们”,这些文本内容也是能有效区分配资网站和非配资网站的文本特征.

2.3 检测模型算法

人工神经网络虽然已经被研究了70多年[17-18],但随着一些研究人员的开创性工作,它们开始被广泛应用在解决数据挖掘问题上. 在拥有足够的计算资源和训练数据的情况下,多层人工神经结构可以学习复杂的非线性函数映射. 对于分类任务,更高层次的表示放大了输入的各个方面,这些方面对于识别和抑制无关的变化非常重要.

神经网络分类器可以简化为三层结构:输入层、多个隐藏层和输出层. 本文选择的多层神经网络结构如图3所示. 输入层的每个神经元代表一个特征,首先随机初始化权值,权值向量可以被认为是一个向量到另一个向量上的投影,或者是两个向量之间相似度的度量. 然后利用梯度下降调整参数使误差最小化. 学习过程包括连续多次向前和向后传递. 在前向传播中,通过多个非线性隐藏层将输入转发到输出,并最终将计算出的输出与对应输入的实际输出进行比较. 在反向传播中,相对于参数的误差导数被反向传播以调整权值,以使输出中的误差最小化. 这一过程将持续多次,直到在模型预测中获得了预期的改进. 如果Xi为输入,fi为第i层的非线性激活函数,第i层的输出可以表示为

图3 多层神经网络结构图

Xi+1=fi(WiXi+bi)

(1)

其中,Xi+1为下一层的输入;Wi和bi是连接层与层之间的参数. 在反向传播中,这些参数可以更新为

Wnew=W-η∂E/∂W

(2)

bnew=b-η∂E/∂b

(3)

其中,Wnew和bnew分别是W和b更新后的参数;E为损失函数;η为学习率.

本文模型中隐藏层使用的是ReLU激活函数,输出层使用的是Softmax激活函数,选择的损失函数是categorical_crossentroy(分类交叉熵),交叉熵损失只考虑样本的标记类别,而不考虑标记类别之外的其他类别,其损失函数可以表示为式(4)所示.

(4)

其中,L表示样本的交叉熵损失;yi为样本被正确分类的输出;yj为样本y从类别1到类别n的输出. 每次对损失进行计算后,会根据损失对模型中的参数进行更新,对模型中参数进行更新的过程就是学习的过程.

3 实验结果与分析

3.1 实验数据及环境

为了对模型进行充分验证,本文分别采集了1 200个配资网站(正样本)并进行了手工验证,3 000个其他类型网站(负样本). 为了使负样本能充分覆盖除配资网站外的网站类型,先通过CommonCrawl可信网站平台选取了5×104个目标网站,使用2.2中第五点文本特征中包含的多个文本关键词组合,剔除目标网站中不存在这些关键词的网站,并结合人工筛查,最终选择了3 000个目标网站作为训练数据集. 实验采用了十折交叉验证方法对模型进行评估. 本模型实验环境为单台PC机,Intel酷睿i7处理器,16 G内存. 神经网络采用Python语言的scikit-learn[19]和keras框架进行实现.

3.2 实验指标

实验评估指标可以通过以下4种类型表示:(1) 真阳性(TP),数据标签为配资网站,并且模型识别结果也为配资网站的数据类型;(2) 假阳性(FP),数据标签为非配资网站,并且模型识别结果为配资网站的数据类型,即误报;(3) 真阴性(TN),数据标签为非配资网站,并且模型识别结果为非配资网站的数据类型;(4) 假阴性(FN),数据标签为配资网站,并且模型识别结果为非配资网站的数据类型,即漏报.

使用准确率(Accuracy)、召回率(Recall)、精确率(Precision)和调和平均数(F1)作为模型性能的基本评估指标,这些指标的计算方式分别为式(5~8).

(5)

(6)

(7)

(8)

3.3 实验步骤

为了验证模型的效果,使用Python对第二章中配资网站识别模型进行了实现,并设计多个对比实验,进行了如下的实验步骤.

步骤1将原始数据集划分两组,数据组1用于模型的训练,数据组2用于模型的实验评估.

步骤2使用Keras实现神经网络模型训练和模型评估代码,通过画图的方式展现不同的训练轮数,记录模型效果变化.

步骤3实现传统机器学习模型训练和模型评估代码,通过图像、表格等方式,记录不同的参数下模型的效果,以获取该模型的最佳效果.

步骤4使用准确率、精确率、召回率、ROC曲线等评估指标,观察不同模型的评估结果.

本文模型的一些参数选择包括,优化函数为Adam[20],训练模型评估指标使用准确率,epochs为15,batch_size为32. 使用to_categorical来实现输出正负样本概率,训练过程中对上述参数值,以及决策树的深度、最大最小叶参数、支持向量机中的核函数、惩罚系数、K-邻近的邻居个数等参数进行调整,包括修改参数的大小,选用不同的参数值,最终根据模型的分类效果选择最佳的参数.

3.4 实验结果

对比决策树(Decision Tree,DT)、支持向量机(Support Vector Machine,SVM)、K-邻近(k-Nearest Neighbor,KNN)和深度神经网络的实验结果,本文设计的深度神经网络模型在准确率、召回率、精确率等方面都优于以上传统机器学习算法. 在准确率方面,深度神经网络达到95.9%,并且精确率高达98.7%,传统机器学习算法中决策树是表现最差的,支持向量机优于其通过构建超平面能满足高维度数据的二分类,其各种指标表现仅次于深度神经网络,F1值为0.942. 4种算法的详细评估数据见表1. 工作特征曲线见图4.

图4 4种算法的ROC曲线Fig.4 ROC of four algorithms

表1 实验环境配置4种算法性能对比

4 结 论

传统的网站识别模型在配资网站的识别上效果不佳,不能满足对配资网站的准确识别. 为此,本文设计了一种基于深度神经网络的配资网站识别模型. 本方法从多个维度选取区别配资网站和其他类别网站的关键特征,采用深度神经网络构造分类器用于配资网站识别. 为了验证该方法的有效性,与传统的一些机器学习算法进行了比较,本文方法识别准确率接近96%,精确率达到了98.7%,均优于其他模型. 实验结果表明,本文提出的配资网站识别模型能有效识别配资网站.

虽然本文模型拥有不错的检测效果,但是仍存在不足. 基于网站页面内容的特征在本次实验中占有很大比例,但配资网站可以通过在网页中添加干扰内容来影响模型的识别效果. 因此本文下一步的研究是如何针对这种对抗,继续提高识别准确率以及方法的稳定性.

猜你喜欢

配资域名标签
高额收益要谨慎,场外配资需辨明
《江苏教育研究》官方网站域名变更公告
《江苏教育研究》官方网站域名变更公告
配资的确疯狂
不害怕撕掉标签的人,都活出了真正的漂亮
万亿“两融”
杠杆场外配资死灰复燃
让衣柜摆脱“杂乱无章”的标签
科学家的标签
科学家的标签