CSLab - Thunder

CSLab Thunder 打靶记录
第一台主机
信息收集
对边界机进行初步的信息收集

访问 80 端口,发现是 ThinkPHP 框架

使用 ThinkPHP 漏洞工具检测,检测出多个历史漏洞

文件包含直接读取 flag

免杀上线
进一步利用,写马失败,换 fputs
函数写入失败,上传成功访问第一次能够成功,重新加载文件就会已经不存在

普通一句话怎么传都失败,怀疑是被防御干掉了,尝试搞成免杀 WebShell 再上传,使用 ByPassGodzilla 生成

命令执行成功,立刻看一下进程,发现一个 360 和 Defender


root/root
拿下数据库

上线 CS,同样要免杀一下才能上线

使用烂土豆提权至 SYSTEM
,抓取 Administrator
管理员密码

1 | Administrator/Tp@cslKM |
开启并连接 3389 远程桌面,将烦人的杀软和 Defender
关掉

内网信息收集
1 | shell arp -a |
双网卡,一个内网网段 172.20.57.*

对 172.20.57.*
进行存活探测、服务及漏洞扫描

第二台主机
MYSQL 服务爆破
发现 172.20.57.98
内网机,这台机器是没有 Web 的,且没有其他任何信息。
参考了前面参与「Thunder」限时渗透赛 的师傅的 WriteUp,好像当时有提示 CSLab
作为账号密码
开始爆破 MYSQL 服务

1 | root/CSLab |
MDUT 连接,进行 UDF 提权

这里也有 Defender
防御,做免杀马上线 CS

和边界机的相关配置和系统版本一致,再次尝试使用烂土豆提权,成功

关闭 Defender

第三台主机
内网信息收集发现 10.0.0.34 机器,iox
开启二层隧道代理,访问 Web
页面
172.20.57.98 内网机器监听1081

172.20.56.32 边界机流量转发

攻击机访问

发现版本信息 Z-BlogPHP 1.7.3

翻阅 zblogphp 1.7.3 源码,发现 /zb_system/function/lib/base/member.php
文件中写了 password
的生成方式


将明文密码 ($ps
) 进行 MD5 哈希,接着将哈希值与用户唯一码($guid
)拼接,然后对拼接后的字符串再次 MD5 加密,得到最终的哈希值

在第二台主机的数据库中管理着第三台机主机网站的库

用户唯一码如下
1 | GUID: 24d876c8772572cf839674c5a176e41c |
构造脚本,输出新的 hash 密码,将其在数据库中替换
1 | import hashlib |
登录成功

文件上传
尝试修改后台设置进行文件上传

失败,仍然无法上传

Z-Blog 后台存在模板文件 .zba
上传漏洞

上传 shell.zba

访问 http://ip/zb_users/theme/shell/template/shelll.php
,成功

提权
Linux 系统,查询当前用户特权
1 | sudo -l |
发现对 /home/www/write.sh
文件具有 root
权限且无需密码

修改文件,第二行加入 /bin/bash

执行文件,提权成功

读取 flag

第四台主机
Zimbra XXE
发现新网段 10.1.1.*

探测存活,发现10.1.1.56,对指定 IP 进行全端口扫描及漏洞扫描,发现存在 CVE-2019-9670 Vuln

读取 Flag
1 | curl -k -X POST https://10.1.1.56/Autodiscover/Autodiscover.xml \ |

- 标题: CSLab - Thunder
- 作者: Octopus
- 创建于 : 2025-03-25 10:24:03
- 更新于 : 2025-04-03 16:33:34
- 链接: https://redefine.ohevan.com/2025/03/25/CSLab-Thunder/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。