当前位置: 首页 > news >正文

恶意Bot流量识别分析实践

1、摘要

随着互联网的发展,自动化工具和脚本(Bots)的使用越来越普遍。虽然一些善意 Bots 对于网站的正常运行和数据采集至关重要,但恶意 Bots 可能会对网站带来负面影响,如爬取敏感信息、恶意注册、刷流量等。因此,检测和分析 Bot 流量变得至关重要。

Bot恶意流量检测手段大致可分为前端检测和后端数据分析,前端包括设备指纹获取、浏览器插件信息获取等,后端主要是制定检测模型,与威胁情报、IP信誉等手段结合。在整个恶意流量识别过程中,前端与后端的两者相辅相成。

在这篇文章中,我们将基于网宿自身站点的访问日志分析,探讨如何使用后端基础检测方案来分析识别恶意Bot流量,包括 IP 情报、 User-Agent、 TLS 指纹、 请求头特征等。

2、情报与检测策略

威胁情报是支撑后端检测模型最重要的数据之一,通过这些信息,安全专家可以更好地预防、检测和应对网络攻击。持续更新和共享威胁情报是防范恶意Bot攻击的关键步骤,能够大幅提升整体防御水平,保障网络的稳定和安全。我们可以通过以下方式来检测恶意Bots请求:

IP情报

IP作为互联网的身份标识,一直是黑灰产竞争最激烈的资源。随着防护手段的升级,黑产技术也在快速发展,秒播代理、4G代理代理、动态住宅代理成为当前主流的黑产IP资源,大量应用于各种Bot场景中,包括恶意刷量、注册、抢票、薅羊毛等,由于其代理的隐匿性较高,特征难以被发现,因此对互联网安全存在较高的威胁。因此如何收集IP情报以及使用IP情报在恶意Bot流量检测中显得尤为重要。

特性秒播IP4G代理动态住宅代理
来源数据中心服务器移动运营商4G网络互联网服务提供商(ISP)
隐匿性较低,易被识别为代理IP高,难以被识别为代理IP高,难以被识别为代理IP
动态变化可以快速切换,但仍较易被识别高频率动态变化,隐匿性强动态变化,隐匿性强
带宽和性能高带宽和高性能,适合大规模数据传输带宽有限,性能受移动网络环境影响较低带宽,受家庭网络环境限制
成本较低较高较高
应用场景数据抓取、网络营销、自动化测试账号注册登录、广告点击、投票、反爬虫绕过反爬虫绕过、广告验证、访问受限内容

对IP特征和行为上分析有助于我们持续定位和收集威胁情报:

地理位置过滤:正常用户的访问通常来自全球各地,而恶意Bot可能集中在特定的国家或地区。例如,短时间内来自同一个IP段的访问,如图1所示。

图1 异常IP段

ISP和数据中心过滤:普通用户通常使用家庭宽带或移动网络,而恶意Bot 流量IP通常来自于云厂商或者数据中心,识别这些ISP信息,可以帮助过滤潜在的恶意流量,如图2所示。

图2 数据中心IP

DDoS攻击源:DDoS攻击场景与恶意Bot场景通用需要使用代理或者僵尸网络,同一批恶意IP通常不会只发起一次攻击,而是会被多次使用,如图3所示。

图3 DDoS攻击源

TLS指纹

TLS指纹是一种极其有效的工具,通过对TLS客户端client hello包中的不同字段进行深入分析,我们可以生成独特的JA4指纹并利用这些指纹来识别特定的恶意Bot流量。此前我们已着重对TLS指纹进行深度分析,在本文中不再赘述,感兴趣的读者可以访问文章:https://www.freebuf.com/articles/web/393136.html

TLS策略详情描述
Chrome 指纹异常User_agent为Chrome,但是实际tls指纹不匹配
Firefox 指纹异常User_agent为Firefox,但是实际tls指纹不匹配
MS Edge 指纹异常User_agent为Edge,但是实际tls指纹不匹配
Safari 指纹异常User_agent为Safari,但是实际tls指纹不匹配
IE 指纹异常User_agent为IE,但是实际tls指纹不匹配
Opera 指纹异常User_agent为Opera,但是实际tls指纹不匹配
不常见的指纹tls指纹异常并且很少见

HTTP请求头检测策略

正常用户的请求通常带有丰富的HTTP头信息,包括用户代理(User-Agent)、浏览器版本、操作系统等信息,而恶意爬虫往往使用伪造或异常的User-Agent字符串,甚至可能缺少其他必需的头信息。

3、策略模型

诚然,在Bots对抗场景中,仅基于特征来识别Bots未免有些太小儿科,也容易被攻击者通过通过伪造特征的方式绕过检测手段,因此,多特征模型检测的重要性不言而喻,它不是单一维度的检测,而是基于多维度数据分析进行综合评估,不仅有助于提高识别效率,也同时能降低误报的风险。

在情报和检测策略的基础上,我们可以制定策略的权重和得分,当一个请求发起的时候,根据命中的策略进行评分,本方案设置三个区间:可疑、中风险、高风险,并根据风险等级进行不同的处置动作,各风险等级的分数如下:

可疑:0-20分
中风险:20-60分
高风险:大于60分

Bot对抗过程中,除了识别准确率之外,误报率是衡量一个模型是否可靠的重要性指标,虽然恶意Bot流量给网站带来很大的影响,但是误报可能给业务带来灾难性的后果,因此Bot检测模型设计的时候,在保证准确率的同时更应尽量避免误报的发生。

使用评分方式来设计模型的好处在于具备一定的容错率,通常情况下一个恶意的Bot请求会有多个异常特征,而正常的请求不可能具备多个异常特征。因此在进行高风险处置的情况下,准确性较高,误报率较低。

图4 检测模型

4、流量分析

数据过滤

通过第三步的检测模型,对线上流量进行统计分析,选取部分模型结果为高风险的IP进行验证,筛选的高风险IP对应的得分如图5所示:

图5高风险IP

数据验证

验证模型输出结果的准确性以及是否误报,借助国内知名威胁情报中心对高风险IP进行查询,结果如图所示,7个IP中2个为恶意,3个可疑,2个未知。

图6 威胁情报查询

为了进一步验证准确性,将2个未知风险IP:111.170.14.*(IDC服务器)、106.15.73.*(阿里云IP) 进一步分析。

通过异常指纹情报库查询发现IP:111.170.14.* 在6月7号-6月9号出现过异常指纹特征,并伪造了Chrome95、69、114,如图7所示。IP 106.15.73.* 则更为活跃,并伪造了多种类型的浏览器进行异常访问,如图8所示。

图7 异常指纹情报

图8 异常指纹情报

通过上述模型过滤,可以得出风险较高的请求,通过结合其他处置动作,例如验证码等操作,可以有效过滤恶意流量,从而保障业务的安全和稳定。

5、结语

在当今数字化时代,恶意Bot流量已成为威胁网络安全和数据隐私的主要挑战之一。通过对IP地址、请求头和TLS指纹的综合分析,我们能够更有效地识别和防范恶意Bot的活动。这些技术手段不仅有助于提升网站和应用的安全性,还能优化用户体验,防止合法用户受到不必要的影响。

在本文中,我们探讨了如何利用这些关键数据点来检测和分析恶意Bot流量。通过详细的案例研究和实验,我们展示了多层次防御机制的重要性,以及不同方法的协同作用。虽然恶意Bot的技术手段不断进化,但通过持续的研究和技术创新,我们有能力保持在这场网络安全攻防战中的主动地位。

未来的研究方向可能包括更多的机器学习算法应用、更精细的指纹识别技术,以及跨平台的协同防御机制。我们相信,随着技术的不断进步和安全社区的共同努力,互联网将变得更加安全和可靠。

总的来说,恶意Bot流量的分析和防护是一项复杂但至关重要的任务。通过不断更新和优化我们的检测和防御策略,我们能够更好地保护网络环境,确保互联网的健康发展。

相关文章:

恶意Bot流量识别分析实践

1、摘要 随着互联网的发展,自动化工具和脚本(Bots)的使用越来越普遍。虽然一些善意 Bots 对于网站的正常运行和数据采集至关重要,但恶意 Bots 可能会对网站带来负面影响,如爬取敏感信息、恶意注册、刷流量等。因此&am…...

Java2 实用教程(第6版)习题2 第四题

【源文件的命名与书中的不同】 四、阅读程序题 1、上机运行下列程序&#xff0c;注意观察输出的结果。 public class E2_1 {public static void main(String args[]){for(int i20302;i<20322;i){System.out.println((char) i);}} } 运行结果&#xff1a; 低 住 佐 佑 佒…...

HashMap和ConcurrentHashMap的区别

1.是什么 HashMap和ConcurrentHashMap都是Java集合框架中的成员&#xff0c;它们用于存储键值对&#xff0c;但它们在并发场景下的表现和行为有很大的不同。以下是它们之间的一些主要区别&#xff1a; 1. 并发安全性 HashMap: HashMap不是线程安全的。如果多个线程同时访问Has…...

css 下拉框展示:当hover的时候展示下拉框 z-index的用法解释

代码如下&#xff1a; <template><div class"outer"><div class"left"></div><div class"aTest2"><div class"box">显示方框</div><div class"aTest3"></div></…...

spring装配笔记

spring装配是个大课题&#xff0c;能懂一点是一点吧。 关于代码链路&#xff0c;最后的方式就是倒序摸索&#xff0c;正序那么多逻辑&#xff0c;没有一百万也差不多少&#xff0c;所以就用倒序。 .(点号)和#井号是一个意思&#xff0c;下面代码可能不详细区分&#xff0c;复…...

vscode【实用插件】Notes 便捷做笔记

安装 在 vscode 插件市场的搜索 Notes点 安装 安装成功后&#xff0c;vscode 左侧栏会出现 使用 初次使用 需先选择一个本地目录 重启 vscode 后&#xff0c;得到 切换笔记目录 新建笔记 快捷键为 Alt N 默认会创建 .md 文件 配合插件 Markdown Preview Enhanced 预览 .md…...

中间件:maxwell、canal

文章目录 1、底层原理&#xff1a;基于mysql的bin log日志实现的&#xff1a;把自己伪装成slave2、bin log 日志有三种模式&#xff1a;2.1、statement模式&#xff1a;2.2、row模式&#xff1a;2.3、mixed模式&#xff1a; 3、maxwell只支持 row 模式&#xff1a;4、maxwell介…...

postman控制变量和常用方法

1、添加环境&#xff1a; 2、环境添加变量&#xff1a; 3、配置不同的环境&#xff1a;local、dev、sit、uat、pro 4、 接口调用 5、清除cookie方法&#xff1a; 6、下载文件方法&#xff1a;...

Spring Boot 中整合 Kafka

在 Spring Boot 中整合 Kafka 非常简单&#xff0c;Spring Kafka 提供了丰富的支持&#xff0c;使得我们可以轻松地实现 Kafka 的生产者和消费者。下面是一个简单的 Spring Boot 整合 Kafka 的示例。 1. 添加依赖 首先&#xff0c;在 pom.xml 中添加 Spring Kafka 的依赖&#…...

什么是开放式耳机?具有什么特色?非常值得入手的蓝牙耳机推荐

开放式耳机是当下较为热门的一种耳机类型。它具有以下特点&#xff1a; 设计结构&#xff1a; 呈现开放式的构造&#xff0c;不会完全堵住耳道。如此一来&#xff0c;外界声音能够较容易地被使用者听到&#xff0c;在使用耳机时可以保持对周围环境的察觉。比如在户外&#xf…...

编译 FFmpeg 以支持 AV1 编解码器以及其他硬件加速选项(如 NVENC、VAAPI 等)

步骤 1: 安装必要的依赖 sudo apt update sudo apt install -y \autoconf automake build-essential cmake git libass-dev libfreetype6-dev \libsdl2-dev libtool libva-dev libvdpau-dev libxcb1-dev libxcb-shm0-dev \libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-…...

解释一下Java中的多线程。如何创建一个新的线程?

在Java中&#xff0c;多线程是一种机制&#xff0c;允许一个程序同时执行多个任务或处理。每个任务被称为一个线程。 这种并行执行可以极大地提高应用程序的效率和响应速度。 例如&#xff0c;在开发一个桌面应用程序时&#xff0c;你可以使用一个线程来更新用户界面&#xf…...

Java语言程序设计基础篇_编程练习题**18.30 (找出单词)

题目&#xff1a;**18.30 (找出单词) 编写一个程序&#xff0c;递归地找出某个目录下的所有文件中某个单词出现的次数。从命令行如下传递参数&#xff1a; java Exercise18_30 dirName word 习题思路 &#xff08;读取路径方法&#xff09;和18.28题差不多&#xff0c;把找…...

MyBatis中 #{} 和 ${} 的区别

1. #{id}&#xff08;参数占位符&#xff09; 作用: 使用 #{id} 时&#xff0c;MyBatis 会将 id 参数绑定为 JDBC 的参数。这种方式能够有效防止 SQL 注入攻击&#xff0c;因为它会进行参数的预处理&#xff0c;将参数值作为数据类型的绑定&#xff0c;而不是直接插入到 SQL 语…...

Android Perfetto 学习

1、如何抓取性能日志 方式1、通过手机里的System Tracing抓取 1、点击Settings->System->Developer options->System Tracing->Record trace 打开 2、操作完成后&#xff0c;点击Settings->System->Developer options->System Tracing->Record trace…...

ES数据的删除与备份

背景 需要删除索引下满足指定条件的文档数据&#xff0c;并将删除的数据进行备份。 操作步骤 新建索引 该索引结构与映射关系与原索引一致 查看原索引设置 GET /tb/_settings结果&#xff1a; {"tb" : {"settings" : {"index" : {"ro…...

论文解读《Object-Centric Learning with Slot Attention》

系列文章目录 文章目录 系列文章目录论文细节理解 1. 研究背景2. 论文贡献3. 方法框架3.1 Slot Attention模块3.2 无监督对象发现架构 4. 研究思路5. 实验6. 限制 论文细节理解 supervised property prediction tasks是什么&#xff1f; Supervised property prediction tasks…...

YOLOv8+注意力机制+PyQt5玉米病害检测系统完整资源集合

资源包含可视化的玉米病害检测系统&#xff0c;基于最新的YOLOv8注意力机制训练的玉米病害检测模型&#xff0c;和基于PyQt5制作的可视玉米病害系统&#xff0c;包含登陆页面和检测页面&#xff0c;该系统可自动检测和识别图片或视频当中出现的七类玉米病害&#xff1a;矮花叶病…...

tcp、udp通信调试工具Socket Tool

tcp、udp通信调试工具Socket Tool ]...

MedPrompt:基于提示工程的医学诊断准确率优化方法

Medprompt&#xff1a;基于提示工程的医学诊断准确率优化方法 秒懂大纲解法拆解MedPrompt 提示词全流程分析总结创意视角 论文&#xff1a;Can Generalist Foundation Models Outcompete Special-Purpose Tuning? Case Study in Medicine 秒懂大纲 ├── 1 研究背景【描述背…...

霞鹜文楷GB:为什么选择这款免费开源的中文国标字体?

霞鹜文楷GB&#xff1a;为什么选择这款免费开源的中文国标字体&#xff1f; 【免费下载链接】LxgwWenkaiGB An open-source Simplified Chinese font derived from Klee One. 项目地址: https://gitcode.com/gh_mirrors/lx/LxgwWenkaiGB 霞鹜文楷GB是一款基于日本Klee O…...

从CCD到CMOS:HDR成像技术20年发展史与未来趋势

从CCD到CMOS&#xff1a;HDR成像技术20年演进与实战解析 在摄影器材展上&#xff0c;一位资深摄影师正用指尖轻抚不同年代的相机传感器——从2003年尼康D2H的CCD模块到2023年索尼A7RV的背照式CMOS&#xff0c;这个动作恰好勾勒出HDR技术演进的二十年轨迹。动态范围&#xff08;…...

SEO排名专家的工作内容是什么_如何成为一名出色的SEO排名专家

<h2>SEO排名专家的工作内容是什么</h2> <p>SEO排名专家&#xff0c;全称搜索引擎优化专家&#xff0c;是一类致力于提升网站在搜索引擎中排名的专业人士。他们的工作内容涵盖了广泛的技术和策略&#xff0c;旨在让网站在搜索结果中获得更高的曝光率&#xff…...

基于SpringBoot+Vue的疫情物资管理系统管理系统设计与实现【Java+MySQL+MyBatis完整源码】

摘要 近年来&#xff0c;全球范围内突发公共卫生事件频发&#xff0c;疫情物资的高效管理与调配成为保障社会稳定的重要环节。传统物资管理方式依赖人工操作&#xff0c;存在效率低、数据不透明、响应速度慢等问题&#xff0c;难以满足紧急情况下的物资调度需求。尤其在新冠疫情…...

Bladed 4.3 软件安装与学习研究环境搭建指南

1. Bladed 4.3软件简介与学习用途说明 Bladed是风力发电行业广泛使用的专业仿真软件&#xff0c;由英国Garrad Hassan公司开发&#xff08;现属DNV集团&#xff09;。它能够模拟风力发电机组的动态性能、载荷计算和控制系统设计&#xff0c;是风电工程师和研究人员的核心工具之…...

制造业数据库选型实战:为什么我们从 MySQL 迁移到 TiDB

写在前面 作为一个制造业数字化团队的开发负责人&#xff0c;我最怕听到的一句话就是&#xff1a;“数据库又慢了”。 MOM 平台上线 4 年&#xff0c;数据量从最初的几百 G 涨到几个 T。每次月底报表、跨工厂查询&#xff0c;系统就开始”喘气”。加索引、拆表、优化 SQL………...

陀螺匠企业助手-产品

1. 功能说明维护出售产品的基本信息数据&#xff0c;支持在添加商机/合同中进行选择。2. 进入产品页面路径&#xff1a;客户>产品管理>产品3. 新增产品功能说明&#xff1a;维护产品信息&#xff0c;添加完成的产品信息&#xff0c;可以在添加商机/合同中进行选择。新增产…...

深度解析Internet Archive下载器:数字图书馆资源获取的完整方案

深度解析Internet Archive下载器&#xff1a;数字图书馆资源获取的完整方案 【免费下载链接】internet_archive_downloader A chrome/firefox extension that download books from Internet Archive(archive.org) and HathiTrust Digital Library (hathitrust.org) 项目地址:…...

语音播报实时

目录 GPT-SoVITS&#xff08;强烈推荐&#xff09; Fish Speech-1.5 GPT-SoVITS&#xff08;强烈推荐&#xff09; RVC-Boss/GPT-SoVITS: 1 min voice data can also be used to train a good TTS model! (few shot voice cloning) Fish Speech-1.5 追求极致流畅的实时对话&a…...

基于MATLAB的数字图像处理系统:预处理、特征提取与语义分割全流程实现

数字图像处理系统&#xff08;基于matlab&#xff09; 此系统包括预处理&#xff0c;特征提取&#xff0c;语义分割 使用机器学习算法knn和svm 预处理包括线性灰度级变化&#xff0c;指数灰度级变化&#xff0c;直方图均衡化&#xff0c;高斯滤波&#xff0c;中值滤波&#xff…...