社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

PHP的Git服务器被入侵,源代码被添加后门

FreeBuf • 3 年前 • 509 次点击  

在最新的软件供应链攻击中,PHP官方Git仓库被黑客攻击,代码库被篡改。

3月28日,攻击者使用PHP的作者Rasmus Lerdorf和Jetbrains开发者Nikita Popov的账号,向git.php.net服务器上的 php-src 存储库推送了两次恶意提交。

PHP Git服务器被植入RCE后门

PHP是一种开源的计算机脚本语言,为互联网上超过79%的网站提供动力。因此,事件一经曝光被引起了强烈关注。

负责人Popov在公告中表示,他们目前还不知道事件是怎样发生的,但是此次事件导致的后果是git.php.net服务器的数据泄露而不是简单的单个账号的泄露。

官方公告

经观察,在两个恶意提交中,攻击者在上游发布了一个假装成修正文字输入错误的神秘修改。

攻击者以Rasmus Lerdorf的身份签署的恶意提交(非法)植入远程代码执行后门

然而,仔细检查一下新增的第370行调用zend_eval_string函数的地方,可以发现,这段代码实际上是为运行被劫持的PHP版本的网站植入了一个后门,以获得轻松的远程代码执行(RCE)。

PHP的开发者表示,如果字符串以’zerodium’开头,这一行就会从useragent HTTP头内执行PHP代码。

此外,恶意代码中包含了一条注解 “REMOVETHIS: sold to zerodium, mid 2017”。值得注意的是,Zerodium是一家知名的零日漏洞经纪商,而注释的意思是“漏洞在2017年中出售给了zerodium”。对此,而Zerodium的CEO Chaouki Bekrar认为攻击者很可能试图出售这个漏洞,但找不到卖家,所以攻击者干脆自己恶搞。

不过,PHP相关负责人表示,恶意提交在提交几小时后,就在他们进行常规的代码审查时被发现。这些更改的恶意很明显,所以很快被还原了。

对于Git这样的源代码版本控制系统来说,这样的事件会发生很正常。因为可以把提交的内容为打上本地任何一个人的签名,然后再把伪造的提交内容上传到Git服务器上。这样一来,就会让人觉得这个提交确实是由签名的人提交的。

PHP官方代码库迁移到GitHub

作为此次事件后的预防措施,PHP维护人员决定将PHP官方源码库迁移至GitHub。

他们表示,虽然调查还在继续,但为了减少自己的Git基础设施所面对的风险,他们决定关闭git.php.net的服务器。原本只是镜像的GitHub上的存储库,之后将成为正式服务器。

并且,从现在开始,任何修改都要直接推送到GitHub上而不是原先的服务器。

那些想要帮助PHP的人可以申请在GitHub上被添加为PHP组织的一部分。不过,如果要成为该组织的一员,先要在自己的GitHub账户上开启双因素认证。

目前,PHP还在检查除了那两个恶意提交外的威胁,并且检查是否有任何代码在恶意提交被发现之前被分发到下游。







Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/110693
 
509 次点击