开源“抗议软件”损害开源
本周是普京对乌克兰发动战争一个月。我们当时声明了 OSI 的立场——OSI 谴责俄罗斯军队在弗拉基米尔·普京的指示下对乌克兰发动的袭击——但现在出现了一个直接影响开源社区的新情况,我们需要对此进行新的评论。
新的情况是,愤怒的维护者已经开始向少量开源存储库中添加代码,以抗议这场战争。当部署时,这种“抗议软件”表达了维护者对俄罗斯政府入侵乌克兰的反对。大多数抗议软件在运行时只是显示反战或亲乌克兰的信息。这是一种非暴力的、创造性的抗议形式,可能有效。
但是,至少在一个案例中——node-ipc 包中的 peacenotwar 模块——一个更新破坏了 npm 开发人员,其代码旨在擦除存储在俄罗斯和白俄罗斯的数据。在 Snyk 的 Liran Tal 于 3 月 16 日发布的一篇关于恶意代码的 博客文章 中,他说:“此安全事件涉及一位维护者破坏磁盘上文件的破坏性行为,以及他们试图以不同形式隐藏和重申这种蓄意破坏的行为。”
正如 Gerald Benischke 在他 3 月 16 日的 博客文章 中所称的“开源武器化”是无差别的,它造成的附带损害损害了开发人员和运维人员的工作,仅仅因为他们拥有俄罗斯分配的 IP 地址。它对爱好和平的人和战争贩子都造成了伤害——即使是使用 VPN 对抗入侵的道德黑客也可能成为附带损害。
可以理解的是,这引起了公愤。我们也有同样的愤怒。抗议是言论自由的重要组成部分,应该受到保护。开放性和包容性是开源文化的基础,开源社区的工具旨在实现全球访问和参与。总的来说,开源的文化和工具——问题跟踪、消息系统、存储库——提供了一个独特的信号通道,可以绕过暴君实施的审查,以维护他们的权力。
与其使用恶意软件,不如采用更好的自由表达方式,即在提交日志中使用消息来发送反宣传消息,并在问题跟踪器中分享俄罗斯境内关于俄罗斯军队在乌克兰境内所作所为的准确新闻,这只是两个明显的可能性。开源社区有很多渠道可以发挥创造力,而不会伤害到每个碰巧加载更新的人。
我们鼓励社区成员创新和明智地使用开源的自由和工具,以告知俄罗斯公民乌克兰公民所受伤害的真相,并支持在乌克兰境内和支持乌克兰的人道主义和救援工作。
从长远来看,这些武器化行为很可能就像对着风吐口水:破坏开源项目的缺点远远超过任何可能的好处,而反弹最终会损害项目和负责的贡献者。从广义上讲,所有的开源都会受到损害。使用你的力量,是的——但要明智地使用它。