【2025版】最新SSRF漏洞利用指南,从零基础到精通,收藏这篇就够了!

前面我们简单介绍了什么是SSRF《SSRF漏洞利用简介》,服务器端请求伪造 (SSRF) 是一种简单的攻击,在这种攻击中,服务器将为攻击者向本地或远程源发出请求(充当代理),然后返回包含请求产生的数据的响应。

今天我们详细介绍一下SSRF漏洞利用的几大场景。

01 前言

可以说SSRF的概念和使用代理或者VPN是一样的,用户会向某个资源发起请求,然后代理或者VPN Server会向那个资源发起请求,然后将结果返回给用户。

SSRF 可以做很多事情,比如:

  • 本地/远程端口扫描

  • 本地文件读取(使用file://)

  • 与内部应用/服务/网络交互

  • 通过在内部网络上链接服务来进行 RCE

  • 读取云元数据(AWS、Azure、Google Cloud、Digital Ocean 等)

  • 反射 XSS/CSRF

实验室设置

本文实验室的使用,只使用下面的简单脚本(当然真实环境中的应用可能没有这么简单),部署到Digital Ocean上。

<?php`    `$url = $_GET['url'];$curl = curl_init();`    `curl_setopt($curl, CURLOPT_URL, $url);`    `curl_setopt($curl, CURLOPT_RETURNTRANSFER,1);`    `curl_setopt($curl, CURLOPT_TIMEOUT, 5);`    `curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 5);$data = curl_exec ($curl);if(curl_error($curl)){`        `echo curl_error($curl);`    `}else{`        `echo "<pre>" . $data . "</pre>";`    `}`    `curl_close ($curl);``?>

之所以选择 curl 作为 requestster,是因为 curl 支持各种协议,因此非常适合此次学习目的。  


requestster 是一个函数或库,我们用它来输入 URL 并从中获取/请求资源。

02 本地/远程端口扫描

扫描端口的目的只是为了能够发现在该端口后面运行的应用程序/服务,以便攻击者可以识别该端口上正在运行的应用程序/服务。如果攻击者想要交互然后执行对内部应用程序/服务的查询,这将变得非常重要。

可以使用 HTTP、HTTPS、GOPHER 或 DICT 协议完成端口扫描。

如果有盲注型的 SSRF 去查端口是open还是closed,可以关注Content-length,Response Time,或者HTTP Status Code。

当然,要找出的指标不仅仅是上面提到的三个要素,在端口扫描过程中可能会出现“异常”的要素,这取决于Web应用程序使用的是什么技术和环境。

HTTPS 协议探测端口开放响应时间会更长,因为 HTTPS 会进行握手,因此在面对 Blind SSRF 时,使用 HTTPS 协议可以是端口扫描的合适选择。

03 本地文件读取

在 SSRF 的上下文中访问/读取本地文件只能使用 file:/// 协议,但并非所有 requestster 都支持 file:/// 协议。此外,可能存在不允许使用该协议的过滤器/黑名单,但这仍然取决于 requestster 的行为。

要访问文件本身,您可以使用 file:/PathToFile 、 file:///PathToFile 或 file://hostname/PathToFile。三种访问方法都是 file:/// 的有效 URI。

如果 Web 应用程序部署在 Windows Server 上,要使用 file:/// 协议访问文件,您可以使用 file:///<drive_letter/PathToFile。例子:file:///d:/hello.txt。

04 与内部服务交互

SSRF 的真正威力在于攻击者可以在本地网络中与内部应用程序/服务/网络进行交互,想象一下如果内部网络中存在易受攻击的应用程序/服务,攻击者无法访问该应用程序/服务,因为它位于不同的网络,但如果存在 SSRF 漏洞,攻击者可能能够做到这一点。

如果 requestster 支持使用gopher://协议或者可能存在CRLF 注入漏洞,将会允许攻击者与SMTP、MySQL、Redis、Memcached等各种内部服务进行交互。然后查询这些服务以给出所需的命令,例如读取本地文件甚至获取 RCE。

Gopher 被归类为通用协议,攻击者可以通过 Gopher 走私到其他协议,此外 Gopher 还支持使用换行符 (\r\n),因此即使 requestster 不易受到 CRLF 注入攻击,攻击者也可以 仍然执行 CRLF 注入,因为 Gopher 确实支持多行请求。

05 读取云元数据

有各种提供云计算服务的供应商,如AWS、Azure、Google Cloud、Digital Ocean等,这些供应商使用REST API提供元数据访问,但REST API只能通过云网络访问。

如果其中一个云服务中部署了易受攻击的 SSRF Web 应用程序,攻击者很可能会利用 SSRF 漏洞访问元数据信息。

REST API 端点的引用可以参考所使用的云服务提供商的官方文档,或者可以参见 BuffaloWill 对 SSRF 测试有用的 Cloud Metadata Dictionary。

https://gist.github.com/BuffaloWill/fa96693af67e3a3dd3fb

06 反射型 XSS

如果您没有面对 Blind SSRF,则可能会发生反射 XSS。

如果 requestster 支持 javascript,例如 PhantomJS 和 Selenium,则可能会发生 XSS on Blind SSRF,那么攻击者进行 DNS 重新绑定攻击以“玩”内部服务/网络并非不可能。

07 总结

URL 架构支持

支持各种协议的 requestster 列表:

协议 SSRF 走私

列出一些支持走私到其他协议的协议:

SSRF 技巧

  • 测试 requestster 是否执行以下重定向,以便创建有效载荷变得更容易,此外,如果有效载荷的某些部分被硬过滤/列入黑名单,它也会绕过。

  • 经常测试各种协议,如 GOPHER、FTP、SSH 等。

  • 做 CRLF 注入测试,因为如果攻击者想查询内部服务,这就变得很重要

  • 当面对 BLIND SSRF 读取本地文件和读取元数据等事情时,将没有其他方法可以找到响应数据,因此显而易见的解决方案是做其他事情,例如端口扫描或与内部网络交互,这样您就可以得到 RCE。

参考及来源:

https://infosecwriteups.com/exploiting-server-side-request-forgery-ssrf-vulnerability-faeb7ddf5d0e

08 免责&版权声明

安全小白团是帮助用户了解信息安全技术、安全漏洞相关信息的微信公众号。安全小白团提供的程序(方法)可能带有攻击性,仅供安全研究与教学之用,用户将其信息做其他用途,由用户承担全部法律及连带责任,安全小白团不承担任何法律及连带责任。欢迎大家转载,转载请注明出处。如有侵权烦请告知,我们会立即删除并致歉。谢谢!

题外话

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

1.学习路线图

在这里插入图片描述

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

在这里插入图片描述

(都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源

3.技术文档和电子书
技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。

在这里插入图片描述

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源

4.工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源

最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

在这里插入图片描述

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

🐵这些东西我都可以免费分享给大家,需要的可以点这里自取👉:网安入门到进阶资源
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
侵权,请联系删除。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值