SSRF9 各种限制绕过之域名限制绕过

ssrf漏洞在厂商的处理下可能进行一些特殊处理导致我们无法直接利用漏洞

有以下四种:

1.ip地址限制绕过

2.域名限制绕过

3.30x跳转绕过域名限制

4.DNS rebinding绕过内网ip限制

本章我们讲2.域名限制绕过

域名限制绕过

厂商发现了ssrf漏洞,其采取的修复方式是设置白名单,在白名单中添加了192.168.112.12,

仅允许我们访问192.168.112.12的资源。

URL:http://192.168.112.12/pikachu-master/vul/ssrf/ssrf_curl.php?url=http://127.0.0.1

假设我们无法访问127.0.0.1,这样的话ssrf漏洞的危害就变的很低很低了。

绕过方式:

原理:对于目标地址的白名单限制也存在绕过可能性,例如限制仅加载目标为 192.168.112.12

的资源,由于HTTP 协议中 URL 地址中支持访问者提供用户名和密码来实现访问认证,这使得攻

击者可以构造特殊的URL 地址参数。

其实我们正常访问一个网站例如:

http://192.168.112.12/pikachu-master/

都是域名加资源路径的,但如果url地址支持访问者提供用户名和密码来实现访问认证,我们就

可以使用以下url:

http://username:password@192.168.112.12/pikachu-master/

而这种格式就存在风险可以使得我们进行绕过,例如:

http://192.168.112.12@127.0.0.1/pikachu-master/

此时 192.168.112.12 部分作为用户名和密码相关信息,127.0.0.1 则为目标地址,若白名单规

则为主机名部分包含 192.168.1.63 判定为满足条件就会导致绕过。

演示:

URL:http://192.168.112.12/pikachu-master/vul/ssrf/ssrf_curl.php?url=http://192.168.112.12@127.0.0.1:22

我们可以看到以这种格式的话是可以正常访问的。

注意:@符号在不同的语言与框架中的解析不一样:

例如:http://192.168.112.12@baidu.com:80@127.0.0.1这种加了两个@符号的我们最终访问的到

底是哪个域名呢?是baidu.com还是127.0.0.1?

URL:http://192.168.112.12@位置2 @位置3

如果是curl或者libcurl那就是访问的位置二

如果是 NodeJS URL

Perl URL

go net/URL

PHP parse_url

Ruby addressable

以上的就是访问的位置三

总结: cURL libcurl 解析时中间生效,其它语言最后的地址生效。

我们一般来说就是构造一个就行不必写那么多。

相关推荐
一只鹿鹿鹿1 分钟前
数据资产管理解决方案(Word文件)
大数据·数据库·安全·web安全·系统安全
2401_894915534 分钟前
Geo 优化源码部署实战:环境配置、参数调优完整指南
运维·服务器·数据库·tcp/ip·安全
肠畔码农8 分钟前
Redis 主从复制内核深潜:从物理模型到全量增量同步的本质
网络·redis·php
CDN3601 小时前
360CDN发布HTTP/3(QUIC)弱网加速方案:实测首屏提速40%,彻底终结移动端接口超时与频繁断连
网络·网络协议·http
随风而飘1862 小时前
安立(Anritsu)MT8820C无线综合测试仪(手机综测仪)
网络·功能测试·测试工具·5g·智能手机
愚公搬代码2 小时前
【愚公系列】《Web应用安全》010-Repeater模块的使用
前端·安全
SWAGGY..2 小时前
【C++ 初阶】:(12)深入理解C++ stack:容器适配器、底层容器与算法实战
网络·网络协议·rpc
嵌入式阿蔡2 小时前
项目实战 02:智能家居环境网关——ESP32 做 BLE 中心 + 本地联动
网络·单片机·嵌入式硬件·esp32·智能家居·嵌入式实时数据库
qq_394308672 小时前
设备伤人多在检修时刻,设备安全目视化守住机械风险关口
安全·制造
Doraemomo2 小时前
Linux编程-socket网络编程之TCP
linux·网络·tcp/ip