首页
社区
课程
招聘
[翻译]PHP的Git服务器被黑客入侵以向PHP源代码添加后门
发表于: 2021-3-29 20:12 1301

[翻译]PHP的Git服务器被黑客入侵以向PHP源代码添加后门

2021-3-29 20:12
1301

简述

图片描述
原文地址:
c3bK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6%4N6%4N6Q4x3X3g2T1L8r3g2W2M7r3W2F1k6$3y4G2L8i4m8#2N6r3g2J5i4K6u0W2j5$3!0E0i4K6u0r3L8X3g2%4M7#2)9J5c8Y4y4W2j5%4g2J5K9i4c8&6i4K6u0r3M7r3S2H3M7#2)9J5k6r3N6A6N6q4)9J5k6s2y4W2M7Y4k6W2M7W2)9J5k6r3S2S2j5$3E0W2k6q4)9J5k6s2c8G2i4K6u0V1j5h3c8V1i4K6u0V1j5X3q4U0K9$3c8G2L8%4u0K6i4K6u0V1N6r3!0Q4x3X3c8H3K9s2m8Q4x3X3c8K6L8%4g2J5j5$3g2Q4x3X3c8U0L8$3c8W2i4K6u0r3


 

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

 

昨天,两个恶意提交被推送到PHP团队在git.php.net服务器上维护的php-src Git存储库。

 

威胁参与者已经对这些提交进行了签名,好像这些提交是由已知的PHP开发者和维护者Rasmus Lerdorf和Nikita Popov完成的。

在PHP Git服务器上植入RCE后门

为了破坏PHP代码库,昨天有两个恶意提交被推送到官方PHP Git存储库。

 

考虑到PHP仍然是互联网上79%以上的网站的服务器端编程语言,这一事件令人担忧。

 

在BleepingComputer看到的恶意提交[1,2]中,攻击者以一个轻微的排版纠正为借口,发布了一个神秘的上游更改“fix typo”。
图片描述
但是,看看添加的第370行,其中调用了zend_eval_string函数,这段代码实际上植入了一个后门,以便在运行这个被劫持的PHP版本的网站上轻松获得远程代码执行(RCE)。

 

"如果字符串以'zerodium'开头,这一行就会从useragent HTTP头内执行PHP代码。"PHP开发者Jake Birchall向最早指出这一异常的Michael Voříšek回应道。

 

在电子邮件采访中,PHP维护者Nikita Popov告诉我们。

 

"第一次提交是在几个小时后被发现的,作为常规提交后代码审查的一部分。Popov告诉BleepingComputer,"这些改动是相当明显的恶意的,并且马上就被还原了"。

 

此外,这次恶意提交是以PHP创建者Rasmus Lerdorf的名义进行的。
但是,与Git这样的源代码版本控制系统一样,这并不令人惊讶,可以在本地签署来自其他任何人的提交,然后将伪造的提交上传到远程Git服务器,在远程Git服务器上,它给人的印象就像它确实是由上面指定的人签名的一样。
图片描述
虽然对事件的完整调查还在进行中,但据PHP维护者称,这次恶意活动源于被入侵的git.php.net服务器,而不是个人的Git账户被入侵。

PHP官方代码库迁移到GitHub

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

 

"虽然调查仍在进行中,但我们决定维护自己的git基础设施是一个不必要的安全风险,我们将停止git.php.net服务器。"

 

"取而代之的是,GitHub上的仓库,以前只是镜像,将成为规范的。"Popov宣布。

 

随着这一改变的进行,Popov坚持认为,从现在开始,任何代码修改都要直接推送到GitHub上,而不是git.php.net服务器上。

 

那些有兴趣为PHP项目做出贡献的人现在需要在GitHub上被添加为PHP组织的一部分。

 

相关说明在同一个安全公告中提供。

 

要成为该组织的成员,你需要在你的GitHub账户上启用双因素认证(2FA)。

 

"我们正在审查仓库中除了两个引用的提交之外的任何损坏,"Popov说。

 

BleepingComputer联系了Popov和PHP安全团队,以了解这次妥协的完整程度,以及是否有任何代码在恶意提交被抓住之前被分发到下游。

 

"在此期间,它可能已经被克隆/forked,但这些更改并没有进入任何标签或发布工件中。"

 

Popov进一步告诉BleepingComputer:“这些变化是在PHP 8.1的开发分支上,它将在年底发布。”

 

PHP团队已经向BleepingComputer确认,他们计划在未来几天内最终停用git服务器,并永久迁移到GitHub。

 

这是个发展中的故事。

 

美国东部时间3月29日上午7:22更新。添加了PHP维护者Nikita Popov的回复。

相关文章

Linux Foundation unveils Sigstore — a Let's Encrypt for code signing
New XcodeSpy malware targets iOS devs in supply-chain attack
Microsoft's Azure SDK site tricked into listing fake package
GitHub fixes bug causing users to log into other accounts
Critical netmask networking bug impacts thousands of applications


[培训]科锐逆向工程师培训第53期2025年7月8日开班!

最后于 2021-3-29 20:13 被梦幻的彼岸编辑 ,原因:
收藏
免费 1
支持
分享
最新回复 (3)
雪    币: 4217
活跃值: (28132)
能力值: (RANK:440 )
在线值:
发帖
回帖
粉丝
2

扩展

关键代码zend_eval_string解析:

zend_eval_string会将
Z_STRVAL_P(enc)+8
变量的内容作为php脚本执行

zend_eval_string可在PHP内核中实现的C函数,可执行任意PHP代码,而不必过渡到其他相关的库中。


流程分析:

当满足一定条件后,调用zend_eval_string执行php脚本,以便进行远程代码执行操作


相似案例:

国内的phpstudy后门事件也使用了zend_eval_string函数

地址:a42K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6H3j5i4m8W2M7W2)9J5k6i4y4W2k6h3u0#2k6#2)9J5k6h3!0J5k6#2)9J5c8U0p5H3y4o6c8Q4x3V1j5`.

最后于 2021-3-29 21:04 被梦幻的彼岸编辑 ,原因:
2021-3-29 20:29
0
雪    币: 42935
活跃值: (65742)
能力值: (RANK:135 )
在线值:
发帖
回帖
粉丝
3
感谢分享!
2021-3-30 18:44
0
雪    币: 5579
活跃值: (1367)
能力值: ( LV9,RANK:175 )
在线值:
发帖
回帖
粉丝
4
还是改动得太明显了
2021-4-2 23:57
0
游客
登录 | 注册 方可回帖
返回