论文部分内容阅读
在网上购物已普及的今天,电子商务网站上展示了商品的众多信息,如:价格、交易记录等,这些有价值的信息会引来竞争对手的网络机器人“光顾”。这些网络机器人会对网站的性能和信息安全产生不良的影响。网络机器人又称为网络爬虫,其是按照一定规则,自动采集网站信息的程序。它们分为正规和非正规,正规的如百度、谷歌等有利信息的传播,非正规的会恶意盗窃敏感数据或增加网站负担。整个网络世界上大概有90%以上的流量是网络机器人。为了保护敏感数据和减轻网站负担,需要有一个能够鉴别请求网站数据的是真实用户还是网络机器人。本文是利用用户鼠标操作模式进行鉴别网络机器人的方法,对网站的敏感数据加以保障。常规手段有:人工鉴别,通过User-Agent信息鉴别,分析日志鉴别,分析IP请求鉴别等。这些手段简单有效,但自动化程度不高,导致人力、时间等投入太多,成本太高。也有利用鼠标键盘行为提取相关特征值,再通过机器学的相关算法进行鉴别,效果也好,早期由于硬件设备的条件限制,无法获得较好的模型。本文的方法是以用户在浏览网站操作所产生的的鼠标操作的数据为基础,依据真实的人和网络机器人对鼠标操作行为的不同,进行鼠标操作特征抽象并建立模型,固化鼠标操作的特征模型,进而通过模型评估区别新的鼠标操作是否是网络机器人。该方法的实现主要分为:(1)鼠标操作行为的采集、特征的抽象。(2)鼠标模型的建立、固化;(3)新的鼠标操作的评估、判断;(4)软件docker封装。采集:通过编写JavaScript脚本,实现采集和特征的抽象,并利用ajaxa技术实现数据的传输。建立模型:通过Stacking与TensorFlow两种实现方案的对比,然后选择识别准确率高的方案。评估:利用API接口方式对新的鼠标操作进行评估鉴别。封装:利用Docker对软件进行封装,提高开发部署的效率,并通过负载均衡来提升性能。本文最终实现以API接口对外提供的鉴别网络机器人软件,在通过对测试数据集进行高并发评估,鉴别结果准确率可以到95.0%以上,并且性能稳定可靠。实验结果可以说明该方法的确可行,并能达到生产要求。