2025 年 7 月 16 日,Tenable 研究员 Liv Matan 报告称在 Oracle 云基础设施 (OCI) 代码编辑器中发现了一个重要漏洞。
该漏洞是由于缺乏跨站请求伪造(CSRF)检查而导致的远程代码执行问题。代码编辑器是 OCI 中基于浏览器的集成开发环境,与 Cloud Shell 的命令行环境共享相同的文件系统和用户会话数据。攻击者可以创建一个恶意网页,如果经过身份验证的 OCI 用户访问该网页,则可以在用户不知情的情况下将恶意文件上传到代码编辑器。
此漏洞可能允许攻击者接管 Cloud Shell,并影响集成的 OCI 开发人员服务,例如资源管理器、函数和数据科学。 Oracle 通过实施需要 x-csrf-token 标头的 CSRF 保护来修复此问题。
【编辑部评论】
该漏洞是凸显云服务集成架构隐患的一个重要例子。看似无害的基于浏览器的开发环境实际上是进入公司整个关键云基础设施的入口点。
CSRF攻击的复杂机制
该漏洞的核心在于一种称为跨站请求伪造(CSRF)的攻击方法。在 Oracle 代码编辑器中,/file-upload端点上未正确实施 CSRF 保护,且身份验证 cookie 已损坏CS-ProxyChallenge但SameSite=None它被设置为一个属性。这允许通过滥用经过身份验证的用户会话从任何网站上传文件。
攻击者只需在用户登录 Oracle Cloud Infrastructure 时访问该页面,就可以在用户不知情的情况下创建恶意网页并上传恶意文件。
集成云服务的陷阱
Oracle 云基础设施紧密集成的架构使这一情况变得尤为严重。由于 Code Editor 和 Cloud Shell 共享相同的文件系统,因此如果一项服务受到威胁,其他相关服务也会受到影响。
具体来说,如果攻击者.bashrc通过修改文件并建立反向 shell 劫持 Cloud Shell 后,它可能会横向扩展到集成的 OCI 开发人员服务,例如资源管理器、函数和数据科学。这是现代云服务中一种被称为“Jenga 效应”的现象,表明如果一个区块崩溃,整个服务就会变得不稳定的风险。
改变对开发者工具的看法
传统上,基于浏览器的开发环境往往被视为“沙盒安全空间”。然而,这个案例清楚地表明,开发工具需要与生产系统相同的安全措施。
尤其是在云原生开发环境中,开发工具直接连接到生产基础设施,开发环境中的漏洞很快就会成为对生产环境的威胁。
长期安全影响
通过修复此漏洞,Oraclex-csrf-token实现了需要标头的 CSRF 保护。这是行业标准措施,但更重要的是,它强化了云提供商从集成服务的设计阶段就考虑安全性的必要性。
在未来的云服务开发中,不仅需要综合考虑单个服务的安全性,还需要考虑整个集成环境的安全架构。
给企业的实用建议
这一事件为企业云战略提供了重要的教训。特别是,在使用集成云服务时,设计服务时必须考虑到一项服务中的漏洞可能传播到其他服务的风险。
它还需要改变开发人员在云环境中工作的方式。即使在基于浏览器的开发环境中,拥有与生产环境中相同级别的安全意识也变得很重要。
【术语解释】
远程代码执行 (RCE)
允许攻击者在目标系统上执行任意代码的漏洞。它是允许完全控制系统的最危险的漏洞之一。
跨站请求伪造(CSRF)
一种攻击技术,允许经过身份验证的用户通过攻击者在不知情的情况下准备的恶意网站对另一个 Web 应用程序执行意外操作。
集成开发环境(IDE)
将程序开发所需的一组工具集成到单个应用程序中的软件。包括代码编辑器、编译器、调试器等。
SameSite属性
Web 浏览器 cookie 中设置的属性,用于控制跨站点请求中的 cookie 发送。SameSite=None是限制最少的设置。
横向运动
攻击者渗透某个系统,然后将访问范围从该系统扩展到其他相关系统的攻击方法。
[参考链接]
Oracle云基础设施(OCI)(外部)
Oracle 提供的云平台。 AI、机器学习、企业应用等云服务
站得住脚(外部)
一家位于马里兰州哥伦比亚的网络安全公司。以其漏洞扫描器“Nessus”而闻名
Oracle Critical Patch Update – 2025年7月(外部)
Oracle 每月发布的安全更新信息。全面提供各类产品的漏洞修复信息
[参考视频]
[参考文章]
OCI,Oh My:Oracle Cloud Shell 和代码编辑器集成服务上的远程代码执行(外部)
Tenable 的详细技术报告。全面讲解漏洞的发现方式、攻击方法以及修复方法
Oracle 代码编辑器中修补的偷渡式攻击向量(外部)
《银行信息安全》杂志的新闻文章。关于 Oracle CSRF 保护实施所采取的纠正措施的报告
[编者后记]
您日常使用什么样的云服务?看看最新的Oracle事件,我们可以看到,我们认为“方便”的服务集成实际上正在带来新的安全风险。
基于浏览器的开发环境已经成为日常工具,尤其是对于开发人员来说,但您是否想过它们在幕后是如何工作的?另外,企业在选择云服务时,应该在多大程度上考虑统一架构的安全风险以及功能和易用性?
此次事件揭示的是技术进步与安全之间平衡的永恒主题。您在工作场所或开发场所采取了哪些措施?我们很想听听您的想法。
