近日,针对马蜂窝“数据造假”的文章刷屏网络。文章指出,马蜂窝2100万条真实点评中,有1800万条是经过机器人从点评、携程等其余平台抄袭而来。做者表示,在马蜂窝上发现了7454个抄袭帐号,平均每一个帐号从携程、艺龙、美团、Agoda、Yelp上抄袭搬运了数千条点评,合计抄袭572万条餐饮点评,1221万条酒店点评。python
其实,不只旅游网站遭到网络爬虫的恶意抓取,航空、视频等也是被恶意爬取的重灾区。算法
今年2月,视频弹幕网站哔哩哔哩(bilibili)大量用户的视频、昵称、头像及用户评论,出如今某新成立的视频网站上,就是非法网络爬虫的盗取;而航空公司的官网上的机票、订座等信息,长期被代理公司将机票信息爬取、占座,而后在其余网站上加价销售。浏览器
网络爬虫:数据造假背后的“恶人”网络
网络爬虫,又被称为网页蜘蛛、网络机器人,是按照必定的规则,自动地抓取网络信息的程序或者脚本。机器学习
网络爬虫分为两类:一类是搜索引擎爬虫,一类是其余爬虫。前者是为搜索引擎从广域网下载网页,便于搜索检索,后者则是在指定目标下载信息,用于存储或其余用途。学习
网络爬虫不只可以抓取网页商品、服务、文字、图片等关键的静态网页信息,还可以爬取用户评价、价格和帐户等动态信息等。在知识产权日益受到重视的今天,数据是互联网平台的重要资产。网络爬虫的非法操做不只窃取了平台的数据资产,更消耗了平台的服务和带宽资源。优化
被网络爬虫窃取的信息不只能够用于同类型平台制做,还可能被转售或者可能用于钓鱼网站制做等其余违法行为。这不但会给平台带来重大损失,更可能致使平台上的用户敏感信息泄露,进而使用户遭遇各种网络和电信诈骗。网站
如何识别搜索引擎爬虫和恶意爬虫?搜索引擎
针对网络爬虫的识别通常是经过用户HTTP请求中的UA(UserAgent)、IP地址字段以及以及浏览器Cookie。翻译
首先,不少的恶意爬虫程序头或者UA中默认含有相似python-requests/2.18.4等固定字符串,很容易被系统辨别出来;其次,爬虫常用某些固定IP,当某一个IP访问量特别特别大、某一段时间内访问了屡次的网页等,也能够被快速识别。
常规防护是拒绝访问,或直接封杀IP。可是,UA能够伪造装成搜索爬虫或者其余浏览器,而IP地址能够经过频繁变动代理IP绕过。此外,经过模拟登陆或者手动登陆Cookie 也能绕过系统监测。因此,这三类方式均不完善。
验证码是比较有效的一种方式,当某一用户访问次数过多后,就自动让请求跳转到一个验证码页面,只有在输入正确的验证码以后才能继续访问网站。而验证码不只能够检测访问者行为,还集合设备指纹和风控等多种因素综合判断。
顶象数据反爬解决方案就是基于验证码和风控。该方案在登陆端部署顶象的智能无感验证,直接拦截爬虫对重点数据的爬取。同时,结合顶象设备指纹和实时风险决策系统,实现对于爬虫的整体拦截。再基于对抗过程当中的数据积累,利用智能分析平台对数据进行分析,创建基于符合业务场景和需求的风控策略,实时优化风控效果,良好防范数据遭恶意爬取的风险。
验证码后面的技术
在用户访问方面,无感验证经过人机交互行为进行防御。如鼠标在页面内的滑动轨迹、键盘的敲击速率、滑动验证码的滑动轨迹、速率、按钮点击等行为轨迹模型检测来进行防御。
基于顶象机器学习模型平台建立优化相关模型,用于验证码机器模拟轨迹防御。这里面包含轨迹耗时检测、异常轨迹检测(包括直线、匀速、聚合曲线等常规信号发生器生成的轨迹和经过异常检测算法发现的离群行为)。
在异常检测方面,顶象技术使用的其中一种异常检测算法为孤立森林(Isolation Forest),Isolation Forest 中提出Isolation概念,即将异常数据从既有数据分布中孤立,用以实现异常检测的目的,这种算法较基于正常数据点建立profile进行异常检测的算法,如Replicator Neural Network、one-class SVM有更高的异常识别能力和准确度。
除此外,二分类器还能够根据既有的验证码数据进行训练,对采集到的人机交互行为数据进行预测区分,进一步提高识别恶意行为的精确度。
此为了防止网络爬虫对验证码的防暴力破解,无感验证经过图片乱序切条、图片更新定时加工、图片变异等技术,结合关联性检测进行防御,经过内置规则和策略,判断相关关联性,如同一设备关联性、同一IP关联性、滑动失败关联性、验证次数关联性等,有效识别短期内异常关联性。
验证码背后的机器学习
顶象技术将深度学习技术应用于验证码的轨迹分析,经过LSTM等深度学习技术,对滑动验证码的滑动轨迹进行特征提取,而后基于LargeVis,对提取的特征进行可视化分析,以下图所示,经过历史数据的可视化对比分析,能够发现一些异常的轨迹数据。
LSTM是一种递归神经网络,适合于处理和预测时序及行为数据。基于 LSTM 的系统能够学习翻译语言、控制机器人、图像分析、文档摘要、语音识别、图像识别等任务,因为验证码的轨迹是连续的行为数据,所以很是适合使用LSTM来进行特征提取。
除此以外,顶象将深度学习技术应用于点选验证码中,对点选验证码进行“风格迁移”,可大大增长验证码被破解的难度。
风格迁移是深度学习领域颇有创意的研究成果,经过神经网络,将一张图片的艺术风格应用在另一张图片上,例如上图中是将梵高的名做“星空”的艺术风格应用于点选验证码图片上。经过风格迁移,能够将点选图片中的内容进行变换,例如文字变得扭曲及模糊,使得机器破解的难度增长。可是又不会彻底改变图片的内容,使用户又能够很容易的识别图片中的文字。