关键词:
浏览指纹
动态贝叶斯算法
CNN算法
LSTM算法
Attention机制
摘要:
随着互联网的快速发展和信息爆炸式增长,爬虫流量也呈现出指数级的增长趋势。爬虫流量的剧增给带来了一系列挑战和问题。民航售票网是受到爬虫危害较为严重的场所之一,恶意爬虫不仅白白消耗航空公司的机票信息查询费,导致机票动态定价失真,更会导致出现虚假占座等倒票情况发生,直接影响机票销售和运营,给航空公司带来巨额的经济损失。因此,为了保障旅客的合法权益和维护航空公司自身的经济利益,防止恶意爬虫所造成的虚假占座、浪费带宽资源、消耗航空查询费用等情况的发生,本课题将针对民航售票网设计双层爬虫检测系统,力求最大限度的区分出爬虫和正常用户。
第一层基于浏览器指纹的检测。浏览器指纹技术是近年来发展起来的一种新型的Web访问识别技术。浏览器指纹可以作为标识符,用于对用户访问流量进行识别,以此来区分正常用户和爬虫。然而,浏览器指纹收集的是客户端的信息,这些信息会随着用户改变客户端的配置或浏览器的版本更新而发生变化,因此,本文提出了基于动态贝叶斯网络的浏览器指纹识别算法,动态贝叶斯网络能够根据新数据动态调整浏览器指纹识别的模型的结构和参数,使得模型具有更好的适应性,可以及时适应用户改变客户端配置或浏览器版本更新带来的变化,提高识别准确性、实时性和自适应性。
第二层是在爬虫行为检测模型,本文提出了基于Attention机制的CNN-LSTM的分类模型。这种模型结合了CNN在提取空间特征方面的优势和LSTM在建模时间序列数据方面的优势,并通过注意力机制来提高分类的准确性。这样更能有效地区分爬虫流量和正常用户流量,提高爬虫流量检测的准确性和可靠性。同时,在模型特征参数选取上,本文创新性提出了以流量的行为特征为主要检测点的方法,通过分析流量产生的具体行为,如请求频率、访问模式,来识别和检测爬虫流量,流量行为特征的检测方法具有更高的适用性、更大的检测范围、实时性强等优势。
浏览器指纹检测层主要关注的是客户端的特征信息,对于爬虫的识别具有很强的的普适性。然而,随着爬虫技术的不断发展,一些高级爬虫可以模拟甚至篡改浏览器指纹特征,从而逃避这一层的检测。因此,加入第二层爬虫行为检测,基于爬虫与正常用户在行为上的本质特征差异来识别爬虫流量,这种行为特征的分析不受客户端特征的影响,因此具有更高的针对性和准确性。两者结合起来,构建一个更加健壮的爬虫检测系统。系统采用B/S架构,通过爬虫检测系统,能够有效帮助相应的网络管理员分析网站的访问流量情况,发现和监管潜在的高风险爬虫,并及时采取措施保障民航售票网站的安全。