记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

攻击者是如何利用SSRF漏洞读取本地文件并滥用AWS元数据的

2019-04-23 12:25

漏洞简介

首先,我抓取并手动执行了该应用程序上的所有用户操作。之后,我通过burp检查了http历史记录中的所有的请求,坦率的说我当时想要挖掘url重定向漏洞。所以,我通过Burp搜索了url=所有可能的参数,并最终发现了一个如下所示的网址:

https://example.com/viewimage/?url=AWS图像位置(该图像存储在AWS,所以需要从这里加载)

实际上,这个端点就是用来加载我长传到网站上的图像的,而我的图像是存储在aws存储桶中的。很明显,既然它要加载内容,那为什么不从其他域加载内容呢?试试RFI如何?

下面是我所采取的具体步骤:

尝试XSS(可惜失败了)

首先,我尝试挖掘一个XSS漏洞。为此,我参阅了关于挖掘XSS漏洞的文章。我的做法就是在网址中添加http://brutelogic.com.br/poc.svg。 所以,最终制作出来的网址变成https://example.com/viewimage/?url=http://brutelogic.com.br/poc.svg。 之后,我访问了该网址,但它并没有加载内容,而是下载了一个简单的文本文件,不过该文件内并没有任何内容。

尝试读取本地文件(成功了)

接下来,我尝试通过URL模式来读取内部数据并让服务器执行某些操作(如file:///、dict://、ftp://、gopher://等)。所以,最终制作出来的网址为https://example.com/viewimage/?url=file:///etc/passwd。

然后,又下载了一个文本文件:

1.jpeg

当我检查下载的文本文件时,对于其中的内容倍感惊讶:这分明就是etc/passwd文件的内容。

1.png

现在,既然发现这个网站会加载来自AWS的图像,那么为什么不设法提取内部的AWS元数据呢?

读取AWS EC2元数据

为了对url参数进行相应的修改,需要查看当前运行实例中所有类别的实例元数据,为此,可以借助于下列URI:

http://169.254.169.254/latest/meta-data

所以,最终精心设计的URL变为https://example.com/viewimage/?url=Location。

之后不出所料,它再次下载了一个文本文件,该文件内容如下所示:

1.jpeg

接下来,我们将尝试读取更为机密的信息,具体方法如下所示:

http://169.254.169.254/latest/meta-data/iam/security-credentials/aws-elasticbeanorastalk-ec2-role

这样,我们就能读取秘密访问密钥、令牌等机密信息了。之后,将这些信息导出后,就可以通过AWS客户端访问……这个,你们懂的。

简单来说,利用这里的安全权限,我们就可以通过SSRF漏洞实现RCE了。

获取私有访问秘钥等登陆凭证后进一步渗透测试的详细介绍,请参阅https://www.notsosecure.com/exploiting-ssrf-in-aws-elastic-beanstalk/。

另外,该漏洞我已经提交了相关部门,并且现在已经得到了修复,同时,我还收到了4位数的奖金。希望本文对大家有所帮助!

本文翻译自:https://medium.com/@pratiky054/ssrf-to-read-local-files-and-abusing-the-aws-metadata-8621a4bf382如若转载,请注明原文地址: http://www.hackdig.com/04/hack-54872.htm
知识来源: https://www.4hou.com/vulnerable/17543.html

阅读:32677 | 评论:0 | 标签:漏洞 AWS

想收藏或者和大家分享这篇好文章→复制链接地址

“攻击者是如何利用SSRF漏洞读取本地文件并滥用AWS元数据的”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

关注公众号hackdig,学习最新黑客技术

推广

工具

标签云