恶意代码如下:
?
为此,Vue 项目维护人员@sodatea澄清指出:
(1)Vue CLI 依赖于 node-ipc v9.x版本。
(2)Node-ipc 9.2.2 增加了peacenotwar模块,该模块会在未经用户同意的情况下,将“WITH-LOVE-FROM-AMERICA.txt” 写入用户Desktop 和 OneDrive 文件夹。
(3)目前发布 4.5.16和5.0.3版本锁定该依赖版本。
(4)受影响用户是在2022-03-15T05:40:26.758Z至2022-03-15T13:17:57.076Z期间创建项目的用户,或者在这个时间段更新了项目依赖的用户。
(5)删除俄罗斯和白俄罗斯 IP 地址文件的恶意代码并不包含在增加了 peacenotwar 模块的 9.2.2版本中。
@sodatea 表示,解决该问题的最佳方法是npm注册表直接下架这些恶意代码,并表示npmmirror.com 已采取措施将有问题的版本重定向到最新的安全版本 cnpm/bug-versions#181。
投毒供应链引发众怒
针对此事,由用户表示,“有人用行动表明开源是有国界的。供应链污染并非良策。”
GitHub用户@jukrb0x情绪激动,对该事件发表了四点看法:
(1)将不不相关代码和恶意代码写入开源用户来传播自己的个人情绪的行为,从来都不是抗议和提倡反战的正确方法。
(2)你让node 区为此蒙羞。有人star或fork你的项目,就是等于你在投毒无辜的开发人员和 络,你的个人道德永远不应该成为供应链中的主角。你为自己所开源的代码负责,即使没有相关底线,但我认为像你一样的人没有作为真正抗议人员或战斗人员的道德底线,你是一个笑话,就像幼儿园孩子一样幼稚。
(3)我只想问你,俄乌战争是当前发生的唯一战事吗到底是一个真正的反战人士,还是只是宣扬自己的个人政治信仰这么做太幼稚了。
(4) 这个案例表明,nodejs 包系统中存在漏洞,你的所做作为已经导致信任链破产。你只是***,开源 区以你为耻。
如何保护开源软件供应链安全
使用越来越广泛的开源项目已成为软件基础设施的核心组成部分,开源项目自身的开发安全也愈发重要。代码托管服务器、Git账户、 区账户、制成品仓库等各个开发环节都有可能成为不法黑客的攻击目标。这次node-ipc 库中被植入恶意代码就是一个典型的案例。
除event-stream 事件外,近期还发生多起开源软件供应链安全事件,比如Log4Shell 事件、Linux “脏管道”事件、周下载量超过700万次的 JavaScript 流行库 ua-parser 账户遭接管事件、影响多家大厂的依赖混淆事件、SolarWinds事件、PHP源代码事件等等。
供应链安全风险是各个层面、各个环节、各个维度的。其最大的挑战就在于供应链的复杂性。首先,针对供应链各环节,需要有检测安全风险的能力;第二,供应链安全是动态的,需要持续监测,并配有安全运营机制。
当前,从软件供应链安全的角度来看,国内监管机构已陆续推出相关标准及政策,但针对关键基础设施和重要信息系统相关的企业和单位,并没有制定具体的举措和细则要求。
打好软件供应链安全治理“团体赛”,需要整个开源生态在供应链的各个环节建立一系列的安全准则和最佳实践,切实保障整个 络空间的安全。例如,在代码最终交付之前,采用应用安全的静态、动态分析方案,尽可能避免造成后门或漏洞;在供应链的各个环节中,引入完整性校验技术及流程,避免遭意外或恶意篡改。
代码卫士试用地址:https://codesafe.qianxin.com/
开源卫士试用地址:https://oss.qianxin.com
文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览91536 人正在系统学习中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!