扫描信息
1. 扫描该网段下的存活主机
nmap -sS -T4 10.9.75.0/24
2. 对其进行全端口扫描,查看具体开放了哪些端口和服务
nmap 10.9.75.116 -A -p-
通过查询发现,该靶机开放了 ssh 的 22 端口 和 http 的 80端口
漏洞利用
1. 该靶机开放了 80 端口,故访问下该页面:
提示信息为:这个网站只能在本地访问
右键 “检查”查看源代码,可以发现一行文本,意思是可以利用 “x-forwarded-for”,可以发现此处是 http报头漏洞
X-Forwarded-For 是一个 HTTP 扩展头部。HTTP/1.1(RFC 2616)协议并没有对它的定义,它最开始是由 Squid 这个缓存代理软件引入,用来表示 HTTP 请求端真实 IP。如今它已经成为事实上的标准,被各大 HTTP 代理、负载均衡等转发服务广泛使用,并被写入 RFC 7239(Forwarded HTTP Extension)标准之中。
2. 进行本地访问的方法是:
根据上方提示,在火狐浏览器中找到一名为 “x-forwarded-for-Header”的插件,进行安装,打开此插件,输入 本地回环地址 “127.0.0.1” 进行访问
3. 成功访问后进入主页面,在此页面中发现可进行登录和注册,由于我们并不知道该网站的任何用户和密码信息,故需进行注册尝试
点击 注册
键入下方内容后,选择 “login”
4. 注册完后可进行登录尝试
5. 登录后进入页面如下:可以在Profile页面内看到当前登录用户的账号和密码,并且留意到 URL 栏中的 id 值可进行修改
6. 此处存在越权访问漏洞,我们可以在此对 id 值进行修改,经过多次尝试修改 id 后的参数,发现 id = 5 时存在用户名和密码信息,右键 “检查” 此页面,可以得到该密码信息
信息收集
1. 利用上方得到的账号密码信息进行 ssh 连接
2. 进入此用户中进行信息搜集,在家目录中发现了 flag1.txt
提权
1. 使用 sudo -l 命令查看是否能进行 sudo 提权
2. 利用 php 进行提权,成功提为 root 用户
sudo php -r "system('/bin/bash');"
3. 进入至 root 的家目录中进行查看,可获得 flag2.txt
至此,全部的打靶过程就结束啦!
Yeaaahhhh!!