ロシアがウクライナに対する侵攻を開始して以来、多くのオープンソース・ソフトウェア(OSS)開発者がさまざまな手段でロシア、およびロシアに従うベラルーシに対する抗議の意志や、ウクライナを支援する意志を表明している。その一つがOSSのパッケージ本体に反戦のメッセージを埋め込むというものだ。このようなソフトウェアは、"Protest(抗議する)"と"Software"を組み合わせた"Protestware"という名称で呼ばれ始めている。

Malwarebytesが3月24日、「Anti-war open-source software developer targets Russians and Belarussians with "protestware"」において、Protestwareの現状について伝えた。

  • Anti-war open-source software developer targets Russians and Belarussians with "protestware"|Malwarebytes Labs

    Anti-war open-source software developer targets Russians and Belarussians with "protestware"|Malwarebytes Labs

ウクライナを支援し、ロシアやベラルーシに対して抗議する意志を表明するために、多くのOSS開発者が公式Webサイトでコンテンツやバナーとして「We Stand with Ukraine」のメッセージを掲載している。しかしそれだけにとどまらず、プログラムのUIやREADMEファイルに同様のメッセージ含めるようにした開発者もいる。例えば、ECMAScriptのためのライブラリであるes5-extはその一つで、postinstall.jsというインストール時に反戦メッセージを表示するライブラリへの依存関係が追加された。

  • node-ipcをテストサンドボックスでnode-ipcを実行したデバッグ結果(出典:Snyk)

    node-ipcをテストサンドボックスでnode-ipcを実行したデバッグ結果 出典:Snyk

このような「Protestware」の提供は正義の行動のように見られがちだが、必ずしも歓迎されているわけではない。es5-extについても、その修正はライブラリの動作そのものに影響を与えるものではないが、OSSに政治的なメッセージを伝える場として使用していることに対する非難の声が上がっている。

より過激なProtestwareを提供し始めた開発者もいる。node-ipcのバージョン10.1.1および10.1.2には、ロシアまたはベラルーシで実行された場合にマシンからファイルを完全に消去してハートの絵文字を表示させる変更が加えられた。また、node-ipcの開発者であるBrandon Nozaki Miller氏は、同様のワイプ機能を持つPeaceNotWarというライブラリを作成し、node-ipc 11.0.0への依存関係に加えたという。同様の悪意のある変更がバージョン9.2.2にも加えられている。

Malwarebytesでは、多くの開発者がこれらのProtestwareには賛同していないと伝えている。というのも、このような行動は、OSS開発者の信頼を大きく損ない、ソフトウェアのサプライチェーンの安全性に対する懸念を生じさせる結果につながるからだ。