如何发现和利用 SSRF?

king 2021-02-20
英文原文 Web安全 发布于 2021-02-20 18:57:28 阅读 62 评论 0


Hi的朋友们,上一次我试图解释如何查找和利用XSS?on我的文章。这不是XSS之后的一篇恰当的后续文章,但是我看到很多朋友对SSRF的发现感到困惑,
所以我会试着解释一下错误和实现的方法。

SSRF,是服务器端请求伪造的缩写,正如你所知。
但是当你问“我发现了一个SSRF,看一看!“如果您通过img src属性将图像加载到标记中:)
正如名称所示,它必须是服务器端。

anyfile.ext?url=something

页面从“something”加载数据(读取/获取“something”并解析响应),这意味着SSRF。与图像加载不同的是,图像被加载到标签中。如果您无法将任何服务器端数据加载到img标记中,则它不是SSRF。

如果您正在搜索的web服务器正在使用任何云服务,则必须尝试从云服务器加载其私有信息。我什么意思?
顺便说一句,云服务的简短描述;

什么是云计算?云计算是通过互联网按需交付IT资源,并采用现收现付的定价方式。您无需购买、拥有和维护物理数据中心和服务器,而是可以根据需要从Amazon Web services(AWS)等云提供商处访问技术服务,如计算能力、存储和数据库。
详细信息:https://aws.amazon.com/what-is-cloud-compu...

我们假设web服务器正在使用亚马逊云服务。(在上面运行说明更好),亚马逊云服务的IP地址是169.254.169.254,所以我们可以通过云内部的SSRF访问web服务器的数据,我们尝试将URL参数值从“something”更改为云服务的IP地址。

anyfile.ext?url=http://169.254.169.254/

如果您在页面上看到目录列表,您可以祝贺自己,因为您刚刚获得了SSRF!
如果你只是加载一个像http://google.com作为URL值,它是相同的。

不仅名为“URL”的参数会导致这种情况,而且您可以尝试每个参数的外观http://anything。

而且,SSRF不仅仅是加载云服务数据,您还可以访问localhost,127.0.0.1,127.0.0.1/可能是管理员。尝试一些关于SSRF的单词列表。

如果您不能通过SSRF加载任何页面,那么您应该尝试访问内部IP地址和端口,这将降低严重性,但仍然是SSRF。

任何文件.ext?网址=http://127.0.0.1:80
任何文件.ext?url=127.0.0.1:80
任何文件.ext?网址=网址:8080

当然,你必须学习一些SSRF过滤器的旁路技术。这不是我的主题。有很多来源。

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://link.wangan.com/check?link=https...

译文地址:https://www.wangan.com/t/3230

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!