PHP语言的维护者今天为两个严重漏洞发布了补丁,这两个漏洞影响全球多达70%的网站。包括美国国家安全局(NSA)在内的多家网络安全机构,正在敦促各组织在安装更新期间关停受影响的系统。许多市政机构、学校和私营公司已经采纳了这一建议。
内容分发网络运营商Cloudflare和Fastly同时报告,黑客已经在尝试利用这些漏洞。Fastly首席产品官凯莉·肖特里奇(Kelly Shortridge)表示:“这不是一个理论上的漏洞。我们在Fastly全球网络上每天观察到数十亿次PHP请求,并且已经看到了活跃攻击的证据。”
这两个漏洞被合称为PHP2Shell,能让黑客在存在漏洞的服务器上部署恶意代码,某些情况下安装过程只需几秒钟。一旦恶意软件攻陷某个网站,它就能读取该网站的数据库,并向访问者发起网络攻击。
第一个PHP2Shell漏洞出现在一段PHP代码接收到的数据超出其处理能力时。PHP对此类情况的处理方式是删除部分已接收的数据。据该语言的维护者说明,这一操作后残留的数据可被黑客用来发起网络攻击。
第二个PHP2Shell漏洞与全局状态有关,即程序多个组件共享的信息。每一份全局状态都与对PHP应用的一次特定请求相关联。当应用处理请求时,会删除相关的全局状态。PHP2Shell使恶意代码能够在这些数据被删除之前访问其中一部分,从而为网络攻击打开大门。
应用安全初创公司OX Security的安全研究团队负责人摩西·西曼·托夫·布斯坦(Moshe Siman Tov Bustan)说:“这几乎是一个严重漏洞所能达到的最广范围。如果你有一个可公开访问的PHP实例且尚未打补丁,那就从‘你已暴露’这个假设开始。如果你发现了被利用的痕迹,就假定已被攻陷,而不只是暴露。”
PHP2Shell背后的底层技术问题在PHP中已存在数十年,但研究人员此前认为它在实践中无法被利用。这一认知在8月被改变:网络安全公司Calif.io的一名员工使用GPT-5.6 Sol扫描PHP代码库寻找漏洞。这项由OpenAI Group PBC资助的审计揭示,PHP2Shell确实可以被攻击。
此后不久,谷歌旗下Wiz网络安全部门又发现了若干相关问题。在接下来的几周里,科技公司和网络安全研究人员组成了一个行业小组来应对PHP2Shell。据报道,这项工作产出了超过1万行代码,修复涉及20多个PHP文件。
该联盟原计划在周四发布补丁,但漏洞昨天在一个热门开发者论坛上被泄露。这促使PHP维护者今天紧急发布了修复程序。
网络安全公司Cobalt首席信息安全官安德鲁·奥巴迪亚鲁(Andrew Obadiaru)表示:“禁令泄露既是对技术的考验,也是对领导力的考验,因为今天真正重要的决定,都是在任何人掌握完整细节之前做出的。安全负责人需要能够快速回答几个问题:PHP在哪里运行、每个系统归谁所有、以及谁有权在无法打补丁时把某个系统下线。”
漏洞缓解初创公司Miggo联合创始人兼首席技术官伊泰·戈德曼(Itai Goldman)解释说:“PHP几十年来一直被嵌入网站、应用和第三方软件中,许多组织仍在运行不再接收标准安全更新的旧版本。对这类系统来说,‘放下一切去打补丁’并不总是一个选项。安全团队需要现在识别自己的暴露面,优先处理面向互联网的系统,并与供应商合作寻找升级路径或受支持的修复方案。”
Cloudflare已更新其CDN,以保护客户网站免受PHP2Shell攻击,但该公司强调用户仍应给自己的系统打补丁。CrowdStrike等多家企业网络安全提供商也在产品中加入了缓解措施。OpenAI则发布了一款工具,可帮助其Codex编程助手的用户发现系统中存在漏洞的PHP安装。
热门跟贴