沙盒逃逸:谷歌应用引擎(GAE)中存在30+个沙盒绕过漏洞

安全研究人员在谷歌应用引擎(Google App Engine)的Java环境中发现了大量的高危漏洞,攻击者可以利用这些漏洞绕过谷歌安全沙盒的保护。

谷歌应用引擎(Google App Engine)是谷歌管理的数据中心中用于Web应用程序开发和托管的平台,也是谷歌云计算的一部分。GAE(Google App Engine)还支持用户使用多种语言和框架开发应用程序,但它们中的大部分都是建立在Java环境中。

FreeBuf科普:安全沙盒

童年的时候,我们许多人都玩过沙盒:可控制的玩耍环境,使我们能安全地建立城堡,而不用挖空后院。在计算机领域,沙盒的功能与此类似。

沙盒提供独立或者密闭的空间,能像实际的网络——但并不与实际网络相连接——一样工作。在这个孤立空间中,程序应用也可以被下载、解压和测试,然后再移植到实际的服务器上,从而(希望)能够防止恶意软件致使网络发生紊乱。

谷歌沙盒逃逸漏洞

该漏洞由安全探索(Security Explorations)的研究者发现,攻击者可以利用该漏洞实现一个完整的Java VM(虚拟机)安全沙盒逃逸,执行任意的代码。研究人员估计漏洞的数量要超过30个。

安全研究人员利用该漏洞绕过了谷歌应用引擎JRE类的白名单,获得了完整的JRE(Java运行环境)访问权。

他们发现了22个Java VM(虚拟存贮器)安全沙盒逃逸漏洞,并已成功测试了其中的17个。研究人员可以执行原生代码(native code),执行任意库/系统调用,获得组成JRE沙盒的文件(二进制/类)的访问权限。他们还可以从二进制文件中提取DWARF信息、从Java类、二进制文件中提取PROTOBUF定义。

蛋疼的是,就在安全研究人员测试正high的时候,谷歌公司突然禁用了他们的GAE账户,这使得他们进一步的研究无法继续。