流量特征

SQL

1.参数长度异常:攻击者通常会在SQL注入攻击中使用长参数来尝试构建恶意语句,因此在网络流量中需要寻找异常长度的参数。
2.非法字符:攻击者通常使用非法字符来构建恶意SQL语句,如单引号、分号等。
3.异常请求:攻击者可能会在HTTP请求中包含多个语句或查询,或者在HTTP请求中包含错误或缺失的参数。
4.错误响应:如果应用程序未正确处理SQL注入攻击,则可能会返回错误响应。攻击者可以通过分析响应以查找此类错误,并尝试进一步攻击。
5.非常规流量:攻击者可能会在较短时间内发送大量请求,或在同一时间窗口内多次发送相同请求。这种非常规流量模式可能表明攻击正在进行中。

出现一些特殊字符:比如单引号括号’(
出现SQL命令或语句:增加、删除、修改、查询
出现注释符号:比如连续两个减号–
url上出现万能密码字段:’or’1’=’1

通过http数据流中的sql payload来定位sql注入,观察返回包中的内容(是否返回了如数据库名之类的敏感信息、状态码)

看请求参数、请求头、请求体中是否包含SQL语句或关键字(比如union select)

sqlmap流量特征:

若攻击者使用sqlmap且未加 –random-agent参数,则可以通过捕获请求包的user-agent字段来判断攻击者是否在使用sqlmap进行攻击;sqlmap在进行初识监测时会进行一些预检测,第一条语句是对数据库类型和XSS漏洞进行监测,且这句话几乎每次注入都不变,即我们可以通过XSS测试语句判断。

XSS

payload包含<script></script>标签;
标签的一些事件:比如onclick、ondbclick、onload;
标签的超链接属性:比如href、src。

和sql注入一样,通过http数据流中的一些关键字来判断是否存在xss

看请求参数或请求体中是否包含JavaScript代码,将响应体的数据复制到文件中执行,如果弹窗,说明攻击成功。

http数据流对应返回结果

image-20250307202457337

RCE

找请求包中的命令执行触发语句

image-20250307203256397

观察数据包中是否存在命令执行的对应结果,如果存在对应返回结果,证明攻击成功

image-20250307203404259

文件上传

找到上传的请求包,看上传文件名,后缀,Data部分右键显示分组字节,查看文件内容

image-20250307202722716

image-20250307202730095

目录扫描

短时间出现大量请求且存在大量404中夹杂一些铭感配置目录信息,判断为目录扫描

image-20250307202856129

口令爆破

存在大量口令尝试访问登录页面的数据流,观察返回数据包看是否存在登录成功数据,判断是否攻击成功

登录成功和登录失败的返回长度不同

image-20250307203147117

Log4j2

请求中存在jndi字样,且会发起jrmi的二次请求和ldap流量请求

image-20250307203533379

rmi请求流量源地址为服务器地址目标地址为攻击机器地址
image-20250307203641329

并会请求恶意class文件,通过追踪流可以看到请求的class文件内容image-20250307203731139

比如说我们通过base64解码之后可以看到命令内容,如果是反弹shell,我们继续看后续流量如果走向该端口,证明攻击成功

fastjson

存在利用链特征@type

image-20250307215812145

请求恶意文件

image-20250307215843218

追踪http流查看恶意文件内容

shiro

工具探测shiro框架流量

请求中携带rememberMe=yes进行探测是否存在shiro框架,如果存在返回包中会存在rememberMe=deleteMe

image-20250307220056188image-20250307220106002

爆破密钥流量

密钥爆破失败存在rememberMe=deleteMe返回image-20250307220243193

爆破成功则无返回image-20250307220307989

爆破利用链流量

cookie中存在大量字符串

image-20250307220348790

命令执行流量

返回包中存在多个$标识

image-20250307220445039

内存马特征

存在密码特征及其路径以及返回成功字眼

image-20250307220517146

strtus2

工具检测流量特征

cookie以及请求数据包存在poc包含大量%信息等

image-20250307220702605image-20250307220722604

漏洞存在则会执行代码中包含的内容

image-20250307220739707

可能有全局Cookie值(不明显,弱特征,可以更改)

Content-Type中有%{}的字样({}里是请求的格式/类型),后面有传入命令的内容 (强特征!)

命令执行流量特征

poc还是包含大量的特殊符号(#),以及%{}特征

追踪tcp数据包可以看到返回结果

总结

包含大量的特殊符号:%、#、{}、()

weblogic

因为weblogic漏洞大多数通过t3协议利用,所以观察tcp数据包内容可发现攻击者扫描数据

存在t3字样并且存在执行命令的关键字

image-20250307220900669

写入webshell

image-20250307220957367

植入内存马

image-20250307221033209

webshell管理工具

蚁剑

明文传输

1、使用URL编解码;
2、每个数据包前面都会包含@ini_set(“display_errors”, “0”);@set_time_limit(0);这两个语句;
3、响应包都是明文。

我们使用一句话木马上传webshell,抓包后会发现每个请求体都存在以@ini_set(“display_errors”,”0”);@set_time_limit(0)开头。并且响应体的返回结果是base64编码发混淆字符,格式为:随机数 结果 随机数。

img

image-20250307221654337

冰蝎

冰蝎2.0 、 3.0、4.0 版本有差异

冰蝎设置了10种User-Agent,每次连接shell时会随机选择一个进行使用。

1."Mozilla/5.0 (Macintosh; Intel Mac OS X 11_2_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36"
2."Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:87.0) Gecko/20100101 Firefox/87.0"
3."Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36"
4."Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.74 Safari/537.36 Edg/99.0.1150.55"
5."Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36"
6."Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:98.0) Gecko/20100101 Firefox/98.0"
7."Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.125 Safari/537.36"
8."Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.125 Safari/537.36"
9."Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:79.0) Gecko/20100101 Firefox/79.0"
10."Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko"

请求体头部字节与响应题头部字节不会变化

image-20250307222709758

referer中的文件名都是随机生成的,但文件名是纯大写或者是纯小写(弱特征)

image-20250307222744978

哥斯拉

哥斯拉客户端与 shell 建连初期的三个固定行为特征,且顺序出现在同一个 TCP 连接中。可以总结为:
特征:发送一段固定代码(payload),http 响应为空
特征:发送一段固定代码(test),执行结果为固定内容
特征:发送一段固定代码(getBacisInfo)

哥斯拉的流量解密没有密钥是无法做到的

image-20250307223114551

还有一些奇怪的特征
cookie 结尾有 ;
响应体前16位和后16为会组成一个32位md5 正则匹配类似于(?i:[0-9A-F]{16})[\w+/]{4,}=?=?(?i:[0-9A-F]{16})

远控服务器

metasploit

meterpreter命令执行的过程已经进行了加密处理,继续进行活动,防御者也不会发现有价值的数据,但可以观察到每个数据都包含MZ标头和DOS模式异常。

image-20250307223229816

cobaltstrike

checksum8

下载stage payload的过程uri符合 checksum8 规则,即:路径的 ascii 之和与 256 取余计算值等于 92

sleep

c2服务器如果没有任务下发,会有规律的请求响应间隔,比如这里是3s
c2服务器如果有任务下发,则放入 http 心跳请求返回包中
靶机完成任务后,通过 post 方法回传数据

image-20250307223448117