Hack The Box - Forge 通过黑名单混淆执行针对ftp服务器的SSRF攻击获取用户私钥,利用SUID提权得到root权限

Hack The Box - Forge

在这里插入图片描述

Hack The Box开始使用流程看这篇

整体思路

1.Nmap扫描

通过命令nmap 10.10.11.111 -p- -v --min-rate=10000扫描得到,靶场开启22和80端口,再使用命令

nmap 10.10.11.111 -A -sC -sV -T4 -p 22,80

查看开启端口的详细信息

在这里插入图片描述

这里观察到80端口会重定向到http://forge.htb,将forge.htb添加到/etc/hosts中,访问域名,点击右上角的上传图片路径

在这里插入图片描述

这里尝试上传url:http://forge.htb或http://127.0.0.1,弹出提示说上传的URL中包含黑名单地址

在这里插入图片描述

尝试上传本地ip,监听到访问

在这里插入图片描述

使用burpsuite大小写混淆可以得到输出,得到一个URL,但在浏览器中访问该URL返回404

在这里插入图片描述

2.针对FTP服务器的SSRF攻击

尝试curl访问URL,可以得到该页面源代码,我们考虑这个地方可能存在SSRF漏洞

在这里插入图片描述

使用命令file:///etc/passwd获取passwd文件内容,得到响应上传的url仅支持http或https协议

在这里插入图片描述

这里写一个重定向语句,尝试访问Lab本地ftp服务器

在这里插入图片描述

并不支持直接访问ftp服务器

在这里插入图片描述

接下来使用gobuster进行子域名枚举,用grep筛选可以成功访问的域名(grep用法看这篇)

在这里插入图片描述

访问admin.forge.htb(记得添加/etc/hosts)

在这里插入图片描述

提示我们仅本地允许访问,这回应该能用SSRF了,上传子域名URL

在这里插入图片描述

使用curl查看返回的内容(注:上传的URL最后要有/,否则curl会报404)

在这里插入图片描述

接着再继续访问刚得到的announcements链接,得到一个用户凭据user:heightofsecurity123!,并且它说/upload支持ftp上传,使用**?u=**添加参数

在这里插入图片描述

构造访问内部ftp服务器URL:http://adMin.ForGe.htb/upload?u=ftp://user:heightofsecurity123!@127.0.0.1/

在这里插入图片描述

提示URL中包含黑名单地址,修改ftp大小写,但仍然是这个结果,可能是127.0.0.1需要修改,试一下127.1,这里用0x7f000001也可以

在这里插入图片描述

在这里插入图片描述

上传修改后URL成功进入到ftp服务器内部

在这里插入图片描述

获取ssh登录密钥id_rsa,ssh登录用户user,至此SSRF攻击完成。

在这里插入图片描述

想详细了解SSRF可以去看我的这篇文章

3.SUID提权

使用命令sudo -l尝试sudo提权

在这里插入图片描述

进入到这段代码内部看一下,首先选取1025-65535中的某个随机端口,建立socket连接,把这个密码先记一下

在这里插入图片描述

运行代码,输入给定密码后,按照源代码,我们输入随机字符可以进入python的pdb调试,在这里执行/bin/bash提权,成功得到root权限。

在这里插入图片描述

再简单介绍一下pdb,pdb是The Python Debugger的缩写,为Python标准库的一个模块。该模块规定了一个Python程序交互式源代码调试器,支持设置断点,也支持源码级单步调试,栈帧监视,源代码列出,任意栈帧上下文的随机Python代码估值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zyu0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值