菜刀、冰蝎、蚁剑、哥斯拉的流量特征

菜刀流量特征**(最开始是明文传输,后来采用base64加密)********:**PHP类WebShell链接流量

如下图:

第一:“eval”,eval函数用于执行传递的攻击payload,这是必不可少的;

第二:(base64_decode(KaTeX parse error: Undefined control sequence: \[ at position 7: \_POST\̲[̲z0\])),(base64\…_POST[z0]))将攻击payload进行Base64解码,因为菜刀默认是使用Base64编码,以避免被检测;

第三:&z0=QGluaV9zZXQ…,该部分是传递攻击payload,此参数z0对应$_POST[z0]接收到的数据,该参数值是使用Base64编码的,所以可以利用base64解码可以看到攻击明文。

注:

1.有少数时候eval方法会被assert方法替代。

2. _ P O S T 也会被 \_POST也会被 _POST也会被_GET、$_REQUEST替代。

3.z0是菜刀默认的参数,这个地方也有可能被修改为其他参数名。

蚁剑(PHP用base64加密):

PHP类WebShell链接流量

将蚁剑的正文内容进行URL解码后,流量最中明显的特征为@ini_set(“display_errors”,“0”);这段代码基本是所有WebShell客户端链接PHP类WebShell都有的一种代码,但是有的客户端会将这段编码或者加密,而蚁剑是明文,所以较好发现,同时蚁剑也有eval这种明显的特征。

蚁剑绕过特征流量

由于蚁剑中包含了很多加密、绕过插件,所以导致很多流量被加密后无法识别,但是蚁剑混淆加密后还有一个比较明显的特征,即为参数名大多以“_0x…=”这种形式(下划线可替换为其他)所以,以_0x开头的参数名,后面为加密数据的数据包也可识别为蚁剑的流量特征。

冰蝎(AES对称加密):

通过HTTP请求特征检测

1、冰蝎数据包总是伴随着大量的content-type:application什么什么,无论GET还是POST,请求的http中,content-type为application/octet-stream;

2、冰蝎3.0内置的默认内置16个ua(user-agent)头

3、content-length 请求长度,对于上传文件,命令执行来讲,加密的参数不定长。但是对于密钥交互,获取基本信息来讲,payload都为定长

哥斯拉(base64加密):

特征检测

1、发送一段固定代码(payload),http响应为空
2、发送一段固定代码(test),执行结果为固定内容
3、发送一段固定代码(getBacisInfo)

先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

猜你喜欢

转载自blog.csdn.net/m0_67394006/article/details/126066879