Webshell流量分析——常见扫描器AWVS,goby,xray流量特征分析

本文聚焦网络攻防中的自动化流量,系统剖析Webshell及AWVS、Goby、Xray三款主流扫描器的通信特征。文章从HTTP探针、协议测绘、载荷变异及带外交互等维度拆解其底层发包逻辑,并结合Wireshark实战过滤语法,探讨由静态签名向动态行为演进的特征提取路径,为蓝队流量研判及网络入侵检测系统(IDS)的特征工程提供客观的数据支撑。

文章目录


AWVS流量特征

AWVS 简介

AWVS(Acunetix Web Vulnerability Scanner)是一款业界主流的商业级自动化 Web 应用程序安全漏洞扫描工具,其核心引擎能够通过深度目录爬行和启发式模拟攻击,精准识别网站及 Web API 中存在的 SQL 注入、跨站脚本(XSS)、配置错误等数千种安全隐患。

流量特征

在扫描运行时,AWVS 的流量具有极高的辨识度和机器特征,通常表现为极高的并发请求率,HTTP 请求头中默认包含特定的 Acunetix-Aspect 测试字段,测试载荷中常夹杂 acunetix_test 等标识,且在探测无回显漏洞时会频繁向其官方提供的 bxss.me 等带外检测(OOB)域名发起网络交互。

核心用途

它主要被广泛应用于网络安全建设与红蓝对抗中,攻击方(红队/渗透测试人员)利用它进行目标资产的快速脆弱性评估与自动化漏洞挖掘,而防守方(蓝队/开发侧)则用其在业务上线前进行安全基线自检、代码审计辅助以及 WAF 防御规则的有效性验证。

之前应急响应靶场的时候也遇到过:

这里我们用个流量包分析一下:

我们可以看到,只要是扫描器,针对特定目标时,都会存在大量的请求包以及响应包(这也是我们HVV或者攻防演练判断是否收到攻击的第一要素

根据上述我们可以知道:

  • HTTP 请求头中默认包含特定的 Acunetix-Aspect 测试字段,测试载荷中常夹杂 acunetix_test 等标识
  • 探测无回显漏洞时会频繁向其官方提供的 bxss.me 等带外检测(OOB)域名发起网络交互(DNSlog外带)
bash 复制代码
http contains "Acunetix"
http contains "bxss.me"

可以看到攻击者应该是修改了AWVS扫描的默认特征:

但攻击者还是棋差一招,为了方便用了AWVS的DNSlog功能:(bxss.me特征十分明显)

goby流量特征

Goby 简介

Goby 是一款基于 Go 语言开发的新一代网络安全评估与攻击面测绘工具,其核心设计理念是从实战出发,通过高效的底层并发引擎快速梳理目标网络的真实资产边界,并整合漏洞发现与利用模块。

流量特征

Goby 的扫描流量呈现明显的阶段性与精准性:初期表现为极高频的 TCP SYN 半连接探测 ;端口确认后,会发送深度的异构协议探针(如 SSH、MySQL、HTTP)进行指纹识别;如果未修改配置,其 HTTP 请求常带有 Go-http-client/1.12.0 的底层引擎特征。在漏洞检测阶段,Goby 不会进行海量盲扫,而是基于指纹识别结果投递高度针对性的 PoC 载荷。

区别

(1) 扫描逻辑的本质差异: AWVS代表了传统"重型"漏洞扫描的典型思路,依赖主动爬虫和大规模Fuzzing测试,流量呈现"狂轰滥炸"式的特征;而Xray则代表了现代"轻量级"被动探测方向,通常依托正常业务流量进行高精度的参数变异,流量特征更为隐蔽。

(2) 防御视角的演进: 在实战对抗中,面对AWVS这种"粗放型"扫描,基于规则的WAF拦截即可见效;但针对Xray这类高度伪装、深度依赖PoC脚本的"点对点"打击,防御体系必须从静态指纹匹配向基于神经网络(如时序模型和信息熵分析)的动态行为检测演进。

我们还是用相应的流量包进行分析:

(1)初期表现为极高频的 TCP SYN 半连接探测

bash 复制代码
tcp.flags.syn == 1 and tcp.flags.ack == 0

# 去掉状态限制,直接看这个源 IP 发起的所有 TCP 会话总数
_path=="conn" and proto=="tcp" | count() by id.orig_h | sort -r

(本人使用的另一个工具)

(2)GodServer OOB 流量: 类似于 AWVS 的 bxss.me,Goby 红队版内置了 GodServer 用于反连。由于这是攻击者自行配置的(通常是他们自己买的域名或 VPS),你不会看到固定的域名

bash 复制代码
http contains "goby"

结果如下:

事实再一次证明,在进行DNSlog外带数据的时候,一定不要用工具自带的功能!!

Xray流量特征

判断Xray流量时,主要抓几个明显特征:

  1. 无特定厂商指纹:Xray不像AWVS、Goby那样有固定DNSLOG域名或UA,它更像验证型扫描器,特征靠行为识别。
  2. 大量404与敏感路径:频繁访问不存在页面,且多含敏感文件、API字典路径,这是它在爬取和探测时的典型表现。
  3. 老旧或通用UA:抓包可见UA较老或混杂,没有明显工具标识,但扫描节奏稳定、请求密集。
  4. 请求集中且模式单一:短时间内高并发,仅围绕指纹与漏洞验证,不会像业务流量那样多样化。

我们首先分析一下Xray的流量包:

可以看到,几千次的404 Not Found页面,想也不用想这就是攻击者IP了;

常见的路径探针: 针对特定的中间件,会直接精准请求特定路径(如 /.env, /actuator/env, /solr/admin/info/system),且请求头和请求体具有高度的格式化特征。

这里我们用搜索了一下:

bash 复制代码
 http.request.uri contains "actuator"

查看详细内容:

我们也可以根据此来判断是否受到了攻击;

总结

本文对 AWVS、Goby 和 Xray 三款常见网络安全扫描器的流量特征进行系统性总结。三者在设计架构与工作模式上存在本质差异,其网络层与应用层流量表现各异。

AWVS 属于传统的重型主动扫描器,依赖爬虫与大规模 Fuzzing,流量呈现高并发与字典遍历特征;Goby 侧重于资产测绘,流量呈现阶段性的底层协议试探与特定漏洞载荷投递;Xray 主要作为被动代理运行,流量通常隐藏于正常业务请求中,依赖参数级的算法变异与结构化 PoC。

以下为三款扫描器核心流量特征的横向对比:

特征维度 AWVS (Acunetix) Goby Xray
工作模式 主动爬虫 + 全量 Fuzzing 资产测绘 + 定向 PoC 投递 被动代理 + 深度参数变异
流量量级 极高(海量并发请求) 中等(资产探测大,Web利用小) 低(伴随正常业务流触发)
连接/协议特征 纯 HTTP/HTTPS 交互 初始大量 TCP SYN 半连接扫描,包含异构协议探测(SSH/RDP等) 纯 HTTP/HTTPS 交互
载荷提取特征 包含 acunetix_test 字符;高频引发 404/500 状态码;大批量的目录与备份文件探测 针对特定应用或中间件(如 ThinkPHP、OA)的脆弱路径直接发送精准 PoC 探测 注入 9/10 位数字运算(如 {``{838491924*394819283}});高频使用 md5()sleep() 函数
带外 (OOB) 特征 默认频繁解析或请求官方提供的 *.bxss.mehit.bxss.me 域名 目标主机向未知的红队自建公网 IP(GodServer)发起反向 TCP/HTTP 连接 目标主机向外部发起带有特定长度(如 32 位 Hex)二级子域名的 DNS 查询

在入侵检测系统(IDS)与流量研判的规则构建中,针对 AWVS 的检测主要依赖静态头部特征与流量频率阈值;针对 Goby 的检测需结合时序状态转移与异构协议序列;针对 Xray 的检测则需引入参数信息熵计算与畸形载荷的正则捕获。

相关推荐
郝学胜-神的一滴1 小时前
Python 鸭子类型:优雅的多态哲学,让代码更自由
linux·服务器·开发语言·python·网络协议
北冥湖畔的燕雀1 小时前
POSIX信号量操作全解析
linux·运维·服务器
草莓熊Lotso1 小时前
Python 入门必吃透:函数、列表与元组核心用法(附实战案例)
大数据·服务器·开发语言·c++·人工智能·python·qt
晚风_END4 小时前
Linux|操作系统|zfs文件系统的使用详解
linux·运维·服务器·数据库·postgresql·性能优化·宽度优先
神奇的程序员10 小时前
开发了一个管理本地开发环境的软件
前端·flutter
暴力求解10 小时前
Linux---线程基础
linux·运维·服务器
晚风_END10 小时前
Linux|操作系统|最新版openzfs编译记录
linux·运维·服务器·数据库·spring·中间件·个人开发
XiYang-DING10 小时前
HTML 核心标签
前端·html
代码中介商10 小时前
Linux TCP 网络编程完全指南:从三次握手到高并发服务器
服务器·网络·tcp/ip