2b6972241dd6fbd039a1a798ba790a4e21fa7d39.jpeg (41.88 KB, 下载次数: 0)
下载附件
保存到相册
半小时前 上传
第三步:点击 “配置缓存”,如图:
79b63e4b27d6a5a2f1944e1210cd4feb75727f2e.jpeg (28.14 KB, 下载次数: 0)
下载附件
保存到相册
半小时前 上传
第四步:点击 “清除所有缓存”,如图:
21e9177030b5b587a62319b4b051d19f9e64dfc3.jpeg (35.5 KB, 下载次数: 0)
下载附件
保存到相册
半小时前 上传
漏洞就出在这个地方,注意了,在刚刚点击 “清除所有缓存” 时,看到浏览器发了两个包出去,如图:
image.png (197.38 KB, 下载次数: 0)
下载附件
保存到相册
半小时前 上传
第一个包请求了一个叫 “clear_cache” 的 API,其中包含了一个叫 “site_id” 的参数,如图:
4ef9a997b03f437de2481f6e6b4526c7b676bbd6.png (131.78 KB, 下载次数: 0)
下载附件
保存到相册
半小时前 上传
这个参数没做校验直接带入了系统命令之中,参考 IDA:
772d140bce7413f270047ab5fd3b34fe30802061.png (151.57 KB, 下载次数: 0)
下载附件
保存到相册
半小时前 上传
5c7c48cb8d48d91ddd78b094fa658045092d5051.jpeg (46.77 KB, 下载次数: 0)
下载附件
保存到相册
半小时前 上传
第五步,尝试修改 “site_id” 参数进行命令注入,加一个分号以后就可以随便写 bash 命令了,这里我写了一个 “touch /tmp/hack”
a69901fb0cdfa6f8d99c1f5d6bddea3e7def3484.png (86.77 KB, 下载次数: 0)
下载附件
保存到相册
半小时前 上传
请求提交以后看看服务器,/tmp/hack 文件果然被创建成功,如图:
870d213779233e7da4bf61268ba109da60262bb4.png (69.48 KB, 下载次数: 0)
下载附件
保存到相册
半小时前 上传
至此漏洞利用完成,“touch /tmp/hack” 仅作为演示,实际可以通过宝塔 WAF 拿到 root 权限,进而控制整个服务器。