入门级webshell各类流量分析
字数 2528 2025-08-19 12:42:30

WebShell流量特征分析与检测技术详解

一、冰蝎(Behinder)流量特征分析

1. 冰蝎v3.0 beta 11特征

1.1 流量特征

  • 弱特征:

    • Accept头: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
    • Accept-Language: zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7
    • Content-type: application/x-www-form-urlencoded
  • 强特征:

    • 所有请求开头固定为: yc8MNtAHgYXhSjykK5u2E

2. 冰蝎v4.1特征

2.1 默认流量特征

  • 弱特征:

    • Accept头: application/json, text/javascript, */*; q=0.01
    • Accept-Language: zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7
    • Content-type: application/x-www-form-urlencoded
  • 强特征:

    • 默认仍使用v3.0加密方式,请求开头仍为: yc8MNtAHgYXhSjykK5u2E

2.2 自定义传输协议分析

  1. 生成木马流程:

    • 选择【传输协议】→【协议名称】→【生成服务器】
    • 生成的马为AES加密,连接时必须使用相同加密协议
  2. 连接特征:

    • 连接时发出两个请求,请求包和响应包均为AES加密
    • 执行命令后,请求开头变为: m7nCS8n4OZG9akdDlxm6O
  3. 解密分析:

    • 解密后可见PHP代码开头: @error_reporting(0);
    • 包含关键函数: getSafeStr()main()
    • 默认加密密钥: e45e329feb5d925b (连接密码32位md5值的前16位)

2.3 流量特征总结表

编码格式 POST流量特征 解密后内容
xor_base64 dFAXQV1LORcHRQtLRlwMAhwFTAg/M @error_reporting(0)
aes m7nCS8n4OZG9akdDlxm6O @error_reporting(0)
aes_with_magic m7nCS8n4OZG9akdDlxm6O @error_reporting(0)
xor 无固定特征 无固定特征

二、蚁剑(AntSword)流量特征分析

1. 特征分析

1.1 POST请求体特征

  • 连接成功后的请求特征: @ini_set("display_errors", "0");
  • 请求路径为WebShell文件名
  • 请求体格式: 连接密码=(cmd=@ini_set("display_errors", "0");...)

1.2 响应明文特征

  • 执行命令后,响应包中返回明文执行结果

1.3 编码格式特征

  • 即使加密后仍可识别:
    • eval高危函数
    • cmd=参数格式
    • 响应中包含固定字符串: 5e3c00e8af5838651

三、哥斯拉(Godzilla)流量特征分析

1. 特征分析

1.1 eval_xor_base64编码

  • 生成马后连接时发出三个请求
  • 请求体为URL和base64加密
  • 明显可见eval高危函数,接近明文传输

1.2 xor_base64编码

  • 连接时发出三个请求
  • 请求体格式: 木马连接密码=(pass=xxxxx)
  • 可使用专用工具解密

1.3 xor_raw编码

  • 请求和响应内容不可读
  • 需要特定解密方法

1.4 其他特征

  • Cookie特征: PHPSESSID=...; (末尾带分号)
  • 弱特征:
    • 请求头Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    • 响应头Cache-Control: no-store, no-cache, must-revalidate

四、检测与防御建议

1. 检测方法

  1. 特征匹配:

    • 检查HTTP请求中的固定字符串特征
    • 监控异常Content-type与Accept头组合
    • 检测evalbase64_decode等高危函数
  2. 行为分析:

    • 监控短时间内多次加密通信
    • 检测异常的命令执行行为
  3. 解密分析:

    • 对可疑流量尝试解密
    • 检查解密后的PHP代码特征

2. 防御建议

  1. Web应用防护:

    • 禁用危险PHP函数
    • 限制文件上传类型
    • 定期检查服务器文件完整性
  2. 网络防护:

    • 部署WAF规则匹配已知WebShell特征
    • 监控异常外连行为
  3. 日志分析:

    • 收集并分析Web服务器访问日志
    • 建立基线检测异常访问模式

五、工具使用指南

1. 蓝队分析研判工具箱

  1. 解密流程:

    • 输入正确的key值和密码
    • 将请求包内容复制到待解密区
    • 点击"解密请求包"获取明文
  2. 特征提取:

    • 自动识别常见WebShell特征
    • 支持多种编码格式解密

2. 流量分析工具

  1. Wireshark:

    • 过滤HTTP流量
    • 检查POST内容特征
  2. Burp Suite:

    • 拦截并修改请求
    • 重放攻击测试

六、总结

本文详细分析了冰蝎、蚁剑和哥斯拉三种常见WebShell工具的流量特征,包括请求头、请求体、加密方式和响应特征。通过理解这些特征,安全人员可以更有效地检测和防御WebShell攻击。防御方应结合特征检测和行为分析,建立多层防御体系,同时定期更新检测规则以应对新型WebShell变种。

WebShell流量特征分析与检测技术详解 一、冰蝎(Behinder)流量特征分析 1. 冰蝎v3.0 beta 11特征 1.1 流量特征 弱特征 : Accept头: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9 Accept-Language: zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7 Content-type: application/x-www-form-urlencoded 强特征 : 所有请求开头固定为: yc8MNtAHgYXhSjykK5u2E 2. 冰蝎v4.1特征 2.1 默认流量特征 弱特征 : Accept头: application/json, text/javascript, */*; q=0.01 Accept-Language: zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7 Content-type: application/x-www-form-urlencoded 强特征 : 默认仍使用v3.0加密方式,请求开头仍为: yc8MNtAHgYXhSjykK5u2E 2.2 自定义传输协议分析 生成木马流程 : 选择【传输协议】→【协议名称】→【生成服务器】 生成的马为AES加密,连接时必须使用相同加密协议 连接特征 : 连接时发出两个请求,请求包和响应包均为AES加密 执行命令后,请求开头变为: m7nCS8n4OZG9akdDlxm6O 解密分析 : 解密后可见PHP代码开头: @error_reporting(0); 包含关键函数: getSafeStr() 和 main() 默认加密密钥: e45e329feb5d925b (连接密码32位md5值的前16位) 2.3 流量特征总结表 | 编码格式 | POST流量特征 | 解密后内容 | |----------------|-----------------------|---------------------| | xor_ base64 | dFAXQV1LORcHRQtLRlwMAhwFTAg/M | @error_ reporting(0) | | aes | m7nCS8n4OZG9akdDlxm6O | @error_ reporting(0) | | aes_ with_ magic | m7nCS8n4OZG9akdDlxm6O | @error_ reporting(0) | | xor | 无固定特征 | 无固定特征 | 二、蚁剑(AntSword)流量特征分析 1. 特征分析 1.1 POST请求体特征 连接成功后的请求特征: @ini_set("display_errors", "0"); 请求路径为WebShell文件名 请求体格式: 连接密码=(cmd=@ini_set("display_errors", "0");...) 1.2 响应明文特征 执行命令后,响应包中返回明文执行结果 1.3 编码格式特征 即使加密后仍可识别: eval 高危函数 cmd= 参数格式 响应中包含固定字符串: 5e3c00e8af 和 5838651 三、哥斯拉(Godzilla)流量特征分析 1. 特征分析 1.1 eval_ xor_ base64编码 生成马后连接时发出三个请求 请求体为URL和base64加密 明显可见 eval 高危函数,接近明文传输 1.2 xor_ base64编码 连接时发出三个请求 请求体格式: 木马连接密码=(pass=xxxxx) 可使用专用工具解密 1.3 xor_ raw编码 请求和响应内容不可读 需要特定解密方法 1.4 其他特征 Cookie特征 : PHPSESSID=...; (末尾带分号) 弱特征 : 请求头Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 响应头Cache-Control: no-store, no-cache, must-revalidate 四、检测与防御建议 1. 检测方法 特征匹配 : 检查HTTP请求中的固定字符串特征 监控异常Content-type与Accept头组合 检测 eval 、 base64_decode 等高危函数 行为分析 : 监控短时间内多次加密通信 检测异常的命令执行行为 解密分析 : 对可疑流量尝试解密 检查解密后的PHP代码特征 2. 防御建议 Web应用防护 : 禁用危险PHP函数 限制文件上传类型 定期检查服务器文件完整性 网络防护 : 部署WAF规则匹配已知WebShell特征 监控异常外连行为 日志分析 : 收集并分析Web服务器访问日志 建立基线检测异常访问模式 五、工具使用指南 1. 蓝队分析研判工具箱 解密流程 : 输入正确的key值和密码 将请求包内容复制到待解密区 点击"解密请求包"获取明文 特征提取 : 自动识别常见WebShell特征 支持多种编码格式解密 2. 流量分析工具 Wireshark : 过滤HTTP流量 检查POST内容特征 Burp Suite : 拦截并修改请求 重放攻击测试 六、总结 本文详细分析了冰蝎、蚁剑和哥斯拉三种常见WebShell工具的流量特征,包括请求头、请求体、加密方式和响应特征。通过理解这些特征,安全人员可以更有效地检测和防御WebShell攻击。防御方应结合特征检测和行为分析,建立多层防御体系,同时定期更新检测规则以应对新型WebShell变种。