Bug Bounty:突破沙箱编辑器执行RCE
2020-02-19 09:53:31 Author: xz.aliyun.com(查看原文) 阅读量:344 收藏

作者发现了一种逃逸沙箱编辑器来执行RCE的方法,进而可以查看AWS凭证、SSL证书和其他内容。

前期侦察阶段,我发现了许多属于HackerEarth的子域和IP地址,其中之一是https://[REDACTED]/#/home/node/he-theia/sandbox, 在上面运行着一个基于VS-code的在线IDE,名为Theia IDE
乍一看,非常正常。
我四处点了点,网站工作人员从IDE快捷方式和菜单中删除了终端视图命令。试图“运行”代码文件,但这也是徒劳的。

然后,我试着通过从vscode调出命令面板(ctrl/cmd+Shift+p)来执行“Task: Run selected text”,不料,打开了一个终端。

一旦我能打开终端,就很容易得到RCE。

我能够读取所有的系统配置文件,例如HackearEarth的私有SSL.crt和.key文件。

我甚至能够读取git日志和原始ide_fetcher.py.


通过命令行,我能够读取用于调用web-ide的原始参数。

在能够读取系统文件、写入任意文件和命令后,我想看看是否可以使用终端读取AWS凭据,因为该实例与HackerEarth的其余基础设施一样托管在AWS基础设施上。

我首先尝试了常用的元数据URL来访问AWS详细信息

curl http://169.254.169.254/latest/api/token

payload并没有起作用

接着我ping了一下域名,也并没有什么反应。这时候我从Puma Scan的一篇博客中获得了灵感。
博客中提到攻击ECS元数据不同于攻击EC2元数据服务,因为它来自不同的域。
然后我输出了环境变量


它包含ECS_CONTAINER_METADATA_URIAWS_CONTAINER_CREDENTIALS_RELATIVE_URI

原文:https://jatindhankhar.in/blog/responsible-disclosure-breaking-out-of-a-sandboxed-editor-to-perform-rce/#tldr

文章来源: http://xz.aliyun.com/t/7223
如有侵权请联系:admin#unsafe.sh