新聞 | iThome ( ) • 2024-04-17 13:13

OpenSSF和OpenJS基金会共同呼吁所有开源维护者,应该对社交工程接管的尝试意图保持警惕,及早辨识出威胁模式,并采取措施保护开源专案。由于OpenJS基金会拦截到类似XZ Utils后门(CVE-2024-3094)的接管企图,因此两基金会也提醒开源维护者,XZ Utils后门恐非独立事件。

OpenJS基金会跨专案委员会收到一系列可疑电子邮件,其中包含许多类似的讯息、不同名称以及GitHub相关的电子邮件,这些电子邮件要求OpenJS,指定他们为热门JavaScript专案的新维护者,尽管他们之前几乎未参与过这些专案。OpenJS基金会指出,这种作法与Jia Tan进入XZ/liblzma专案,植入后门的手法非常类似。

OpenJS团队在另外两个非OpenJS基金会管理的热门JavaScript专案中,发现类似的可疑模式,并已向OpenJS领导层及CISA报告潜在的安全问题。OpenJS基金会认为,虽然开源专案欢迎来自各地任何人的贡献,但是要授予个人作为维护者,使其拥有程式码管理存取权限,需更高层级的信任,同时,不能因为想要快速解决问题而牺牲基本原则。

OpenSSF、OpenJS基金会联合Linux基金会,希望提高开源维护者对这类威胁的警觉,并识别可疑行为,这包括当一些不为人知的社群成员,以友好却具侵略性的方式接近,试图建立关系以获得对维护者或其所属组织的影响力,该行为可能是社交工程攻击的一部分。

还有当新加入的人士要求提升成为维护者身分,或来自不知名成员的背书,支持其他不明身分人士的地位或决策,维护者都要特别小心。另外,由于XZ Utils后门包含在一个非人类可读的档案中,因此开源维护者也应注意包含二进位档案的拉取请求。

偏离典型的编译、建置和部署实践,都可能使外部恶意程式具有插入到二进位档案、压缩档或其他二进位构件的能力。这些有心人士可能会从看似无害的更改开始,以测试维护者的反应和警觉性,像是把safe_fprintf()替换为fprintf()等,甚至会营造虚假的急迫感,迫使维护者降低审查严谨程度或跳过部分控制程序,以快速应对「紧急」情况。

OpenSSF基金会提出一系列可提升开源专案安全的建议步骤,像是遵循标准的安全最佳实践,采用强身分验证、双因素验证和密码管理器等。此外,也应该制定安全政策,启用分支保护和签章提交,如果条件允许,OpenSSF基金会建议程式码合并之前,进行双重程式码审查,强化程式码可读性要求,并且限制NPM发布权限。专案管理员应深入了解提交者和维护者,并定期进行审查。

维护开源专案安全替维护人员带来不少压力,虽然许多商业公司仰赖由社群主导的JavaScript专案,但这些专案经常只由小型团队或单一开发人员维护,而他们获得的资源非常有限,往往不足以支援相应的工作负担。为此,多个开源基金会提供资源协助这些开源专案,包括OpenSSF相关专案的Alpha-Omega计划。德国联邦政府资助的主权科技基金也正向OpenJS基金会及其他开源组织提供资金,以强化基础设施与安全。