戦争に抗議する「プロテストウェア」が、オープンソースエコシステムの信頼を揺るがしている

ロシアによるウクライナ侵攻に抗議するコードがオープンソースのソフトウェアに組み込まれたことが原因で、複数のトラブルが発生した。コミュニティ内部からの妨害行為の根本的な予防は難しいことから、オープンソースのエコシステム全体への信頼が揺らぎかねない状況になっている。
戦争に抗議する「プロテストウェア」が、オープンソースエコシステムの信頼を揺るがしている
ILLUSTRATION: JACQUI VANLIEW; GETTY IMAGES

オープンソースソフトウェアにおける“妨害行為”が原因で、世界中のデジタルなプラットフォームやネットワークを支えるプロジェクトをどう守るべきかという議論が再燃した。直近で発生したソフトウェアの問題多くは、 ロシアによる侵攻を受けているウクライナへの支援を表明する目的でオープンソースの開発者が実施したコードの変更と関連していたことから、「プロテストウェア(抗議のためのソフトウェア)」と呼ばれている。

いくつかのケースでは、反戦やウクライナへの連帯のメッセージをほかの表示に被せて見せるよう、オープンソースソフトウェアが変更されていた。また少なくともひとつの事例では、人気のソフトウェアパッケージがロシアとベラルーシのコンピューターに対し、データを削除する悪質なワイパー型マルウェアを展開するように改変されていた。

オープンソースソフトウェアを使って抗議する流れは、数カ月前に発生した一見すると無関係に見える事案に端を発している。ふたつの広く普及しているオープンソースプロジェクトの保守と管理を手がけている人物(メンテナー)が、過労と労力に見合う報酬を得られない状況に対する不満からプロジェクトに妨害工作を加え、使用不能にした事件だ。

この問題は現時点ではほぼ収束している。だが、テック業界がオープンソースソフトウェアにひも付くほかのソフトウェアサプライチェーンのセキュリティ問題に対処しようと躍起になるなかで、オープンソースエコシステムへの信頼を揺るがしている。資金援助や自動化ツールの提供、そして米政府が注目している点は歓迎できるが、オープンソースのコミュニティに必要なものは持続的な手厚い支援である。

プロテストウェアの問題点

こうしたなかオープンソースの促進を目的としたオープンソース・イニシアティブ(OSI)は、ロシアによるウクライナ侵攻を強く非難しているものの、破壊的な「プロテストウェア」には反対であるとの立場を3月24日に表明している。そしてプロジェクトの保守を担う立場を戦争への反対表明に利用するなら、もっと創造的な方法を選ぶようコミュニティのメンバーたちに要請した。

「オープンソースプロジェクトを破壊することによる損失は、いかなる利益をもはるかに上回り、反動で最終的にプロジェクトそのものとコントリビューターに損害をもたらすことになります」と、OSIは指摘している。「ひいては、すべてのオープンソースに害が及ぶことになります。力を使うのは構いませんが、適切に使うよう願います」

オープンソースのソフトウェアは誰でも自由に使えるので、独立したプロジェクトから主流の消費者向けソフトウェアまで、あらゆるソフトやシステムに組み込まれている。すぐに使えるソフトウェアのコンポーネントが用意されているのに、いちから時間をかけてコードを書いて検証する人はいないのだ。

一方でこうした状況は、あらゆるソフトウェアがひとりまたは少数のボランティアによって保守されているソフトウェアに依存していることも意味している。あるいは、もはやまったく保守されていないソフトウェアを使っていることすらありうるのだ。

「内部脅威」は防げない

オープンソースの利点は、多くの個人が開発に入ることで“監視役”として機能することで、特定の組織が開発したコードと同等かそれ以上にセキュリティを確保できる点であると、長らく言われてきた。これは多くの人の目があることで、バグも少なくなるという発想に基づいている。

とはいえ、実際には監視役となる人の数が少ない状況のほうが多いことから、このような安全対策には限界がある。そしてプロテストウェアによる妨害行為の問題点は、開発が分散化してどこにも属さないことを前提とするオープンソースの中核を揺るがすことだ。

「内部の者による妨害行為が頻繁に起こらないようにするシステム上の仕組みは、ほぼないと言えます」と、オープンソースソフトウェアのサプライチェーンの研究者で、セキュリティ企業ChainGuardの創業者のダン・ローレンクは指摘する。「プロジェクトは時を重ねるごとに評価が高まります。プロジェクトに貢献している人々は仮名を使っていたとしても、互いの仕事ぶりを見ることでデジタルなアイデンティティを信頼します。世界共通の承認者のリストがあるわけではなく、プロジェクトごとに承認者(あるいはコードの変更を承認し、公開する権限のある開発者)になるための文化は異なるのです」

オープンソースのプロジェクトのメンテナーが個人的な理由や犯罪、政府の影響によって不正を働く脅威を完全に取り除く方法はない。とはいえ、企業もいわゆる内部脅威を完全に取り除けているわけではない。そこでオープンソースのコミュニティやGithubのような影響力のある企業は、どのような複雑なプロジェクトでもバグを発見し、公開前か公開直後に疑わしい変更がないか、より多くの目で見張れるよう(それがデジタルな監視でも)コードを自動でスキャンするツールに注目している。

オープンソースの安全性にまつわる別の問題、つまり悪意のある者がプロジェクトに入り込んだり、燃え尽きたメンテナーを説得して自分の思い通りにプログラムを変更する権限を譲り受けたりといったこと対処するには、広く網を張ることが特に重要である。とはいえ、自動でのスキャンには限界があるのだと、ChainGuardのローレンクは指摘する。コードのスキャンの多くは意図的な妨害工作よりも、偶発的にできたバグの発見のほうを得意としているのだ。

メンテナーのサポートが重要

オープンソースのセキュリティに長く携わる研究者や実務担当者たちは、もうひとつ重要で明確な安全対策が目の前にあるのだと強く主張する。それはメンテナー、特に楽しい趣味として始めたものの最終的にグローバルなソフトウェアのサプライチェーンの重要な一部となったプロジェクトのメンテナーのために、一般的なサポートやリソースを大幅に拡充することだ。

「オープンソースの利益を享受するのは簡単ですが、利益の還元は一時的なものか努力目標であり、利益を受けている多くの人は自分が利益を受けていることにさえ気づかず、有意義なかたちで還元できていないのです」と、計算機科学の権威でグーグルのクラウドインフラ担当バイスプレジデントのエリック・ブリュワーは指摘する。

オープンソースのソフトウェアは、道路や公共施設のような公共インフラに似ているとブリュワーは言う。公共インフラへの投資が減ると、管理の不備やセキュリティの問題につながり、実際そうした問題が起きているからだ。

こうした問題について、オープンソースの支持者たちは何年も前から警鐘を鳴らしてきた。それが、ロシアのスパイ活動に使われたSolarWindsのサプライチェーンのハッキングや、世界中の組織やネットワークを危険に晒したオープンソースのロギングライブラリー「Apache Log4j」の脆弱性が明るみになった大規模なインシデントにより、ようやくこうしたことへの認識が高まってきたとブリュワーは指摘する。

資金と継続的な支援を

グーグルやマイクロソフト、メタ・プラットフォームズ、アマゾン、 GitHub、Apache Software Foundationなど大手IT企業や団体と、米政府がオープンソースのセキュリティに関するサミットを開催したのは22年1月のことだった。グーグルをはじめとする企業は直近の数カ月間でサプライチェーンやオープンソースのセキュリティに加え、サイバーセキュリティのほかの面での支援のために多額の資金提供をしている。

ただし、こうした取り組みは単に小切手を切るだけでなく、継続的な支援が必要だとブリュワーは強調する。

「メンテナーが必ずしも約束していないことのなかで、メンテナーに期待していることが何なのかを把握する必要があります」と、ブリュワーは言う。「目標はメンテナーの役割に取って代わることではなく、メンテナーに手を貸して支え、どのような助けが必要なのかを尋ねることです。メンテナーはすでに素晴らしい仕事をしています。一時的に問題解決の手助けをして、そのあと消えてしまうことはある意味で最悪の対応です。しかし、それが最もしてしまいがちなことなのです。このことから持続可能な一貫したサポートを提供する必要があります」

妨害工作の脅威について、目立つ問題が立て続けに発生したことから、短期的に模倣犯が増えることをChainGuardのローレンクは懸念しているという。さらに、オープンソースのセキュリティの問題を解決する特効薬のような技術的解決策はないとも指摘している。しかし、メンテナーに対する金銭的及び精神的なサポートが増えれば、主要なプロジェクトに対し重要な安全対策を施せるという意見には賛成している。

オープンソースの開発が受け入れられ、その悪評が広まれば広まるほど、プロジェクトの安全性を守り、政府やその他の力のある組織がオープンソースから離れてしまうような問題を防ぐことに伴うリスクは非常に高くなっている。

「オープンソースのプロジェクトをロシアに対抗する武器として使う誘惑には抗うべきだと思います」と、ソフトウェア工学のコンサルタントのジェラルド・ベニシュケは3月18に投稿したブログ記事に書いている。「これは危険な前例をつくり、最終的にはオープンソースの運動を後退させ、組織は不透明で不明瞭な商用ソフトウェアを探す状態に逆行してしまうかもしれません」

WIRED US/Translation by Nozomi Okuma)

※『WIRED』によるオープンソースの関連記事はこちら


Related Articles
internet icon
ロシアとウクライナが繰り広げている現実世界とサイバー空間での“ハイブリッド戦争”は、日を重ねるごとに激しさを増している。サイバー戦争においてはインターネット接続の停止を狙った攻撃がロシアによって仕掛けられているが、ウクライナの複雑に分散化されたネットワークと独自の進化を遂げたISPによってうまくかわされているようだ。

毎週のイベントに無料参加できる!
『WIRED』日本版のメンバーシップ会員 募集中!

次の10年を見通すためのインサイト(洞察)が詰まった選りすぐりのロングリード(長編記事)を、週替わりのテーマに合わせてお届けする会員サービス「WIRED SZ メンバーシップ」。毎週開催のイベントに無料で参加可能な刺激に満ちたサービスは、無料トライアルを実施中!詳細はこちら