研判必备--常见webshell攻击的流量特征
包含菜刀、蚁剑、冰蝎和哥斯拉在内的常见webshell
冰蝎各版本流量特征
冰蝎2.0
默认长连接,请求头和响应头里会带有Connection: Keep-Alive
accept固定为Accept: text/html, image/gif, image/jpeg, *; q=.2, /; q=.2
冰蝎3.0
content-type固定为application/octet-stream(强特征)
Accept&Cache-Control;默认设置:
1 |
|
内置16个ua头(弱特征)
content-length 请求长度
冰蝎4.0
content-type固定为
application/x-www-form-urlencoded
accept字段固定为
Accept: application/json, text/javascript, */*;q=0.01
默认ua头库
默认长连接,请求头和响应头里会带有Connection: Keep-Alive
固定的请求头和响应头
默认连接密码rebeyond,所有的webshell都有一串密钥,该密钥的值为连接密码MD5值的前16位
端口:客户端 与 服务端建立连接时,连接所使用本地端口分布在 49700 左右,每建立一次新的连接,端口就依次增加
哥斯拉流量特征
- ua头(弱特征)
- accept字段:text/html, image/gif, image/jpeg, *; q=.2, /; q=.2(弱特征)
- cookie。请求包的Cookie中有一个非常致命的特征,分号;(强特征)
- 请求体特征 (较强特征):比较大的数据包,base64编码
- 响应体特征 (强特征):如果之前的请求体采用base64编码,响应体返回的也是base64编码Cache-Control: no-store, no-cache, must-revalidate
蚁剑
每个请求实体都存在
@ini_set(“display_errors”, “0”);@set_time_limit(0)
开头。并且后面存在base64等字符使用 随机数+响应内容+随机数使用base64加密的payload,数据包存在以下base加密的eval命令,数据包中的payload几个分段内容都是用了base加密,解密之后可以看到相关的路径和命令等。
菜刀
ⅰ. 请求包中 ua头为百度爬虫,火狐
ⅱ. 请求实体中存在eval,base64等特征字符
ⅲ. 请求实体中传递depayload为base64编码,并且存在固定的Base64编码