Log4J問題で明るみになった「ボランティア頼み」の危うさ
世界中で広く使われているオープンソースのログ収集ソフト「Log4J」の深刻な脆弱性をめぐって、開発者が対応に追われている。インターネットの運用を支えるほど重要な存在であるにもかかわらず、オープンソース・ソフトウェアは無報酬の労働にほとんど頼っている状況だ。 by Patrick Howell O'Neill2021.12.21
ヴォルカン・ヤズジュは今、1日22時間タダ働きをしている。
ヤズジュは、さまざまなタイプのソフトウェア内部のアクティビティを記録するオープンソース・ツール「Log4J」プロジェクトのメンバーの1人だ。Log4Jは、アイクラウド(iCloud)からツイッターに至るまでさまざまなアプリケーション、つまりインターネットを構成するかなりの部分を機能させるのに使われている。ヤズジュと彼の同僚は現在、数十億台のマシンを危険にさらしている極めて深刻な脆弱性に対処するために必死になって取り組んでいる。
Log4Jの脆弱性を悪用するのはとても簡単だ。悪意のある文字列を脆弱なマシンに送信すれば、ハッカーたちはいかなるコードでも思うがままに実行できてしまう。攻撃が始まった頃、そのうちの一部はマインクラフトのサーバーに悪意のあるコードを貼り付ける子どもたちによるいたずらだった。今や、中国やイランと繋がりがあるハッカーなど、世界中のハッカーたちが、欠陥のあるコードを実行しているあらゆるマシンを見つけ出し、その脆弱性を悪用しようとしている。
終わりはまだはっきりとは見えていない。Log4Jの問題は、数カ月から数年は続くと予測されているセキュリティ危機である。米国サイバーセキュリティ・インフラセキュリティ庁(CISA)のジェン・イースタリー長官は、今回の問題はこれまで知る限り「最も深刻な欠陥の一つ」だと述べている。
それほど重要な問題であるなら、世界中の巨大テック企業や政府は、欠陥を迅速に修正するために、何百人という専門家たちに高給を支払って雇っているのだろうと思うかもしれない。
だが現実はそうではない。長い間、基幹的なインターネット・インフラの重要な一部として機能してきたLog4Jは、ボランティア・プロジェクトとして始まり、多くの数百万・数千万ドル規模の企業が毎日それに頼って利益を得ているにもかかわらず、依然として大部分は無料で運営されている。ヤズジュと彼のチームは、タダ同然でLog4Jを直そうとしているのだ。
誰でもコードを検査・変更および使用できるようなプログラムである、オープンソース・ソフトウェアの世界では、このような奇妙な現象は日常茶飯だ。オープンソースの思想は何十年も前にまで遡るが、現在ではインターネットが機能するために欠かせない重要な概念となっている。オープンソースは、成功すれば共同作業のすばらしい成功例だ。失敗すれば、危険が広範囲にまで及んでしまう。
「オープンソースはインターネットを動かし、さらにその延長で考えると世界経済をも動かしているのです」。こう話すのは、グーグルで複数のオープンソース・プロジェクトに従事する開発者のフィリッポ・ヴァルソルダだ。しかし、「基幹的なインフラに関するプロジェクトでさえも、メンテナンスには小さなチーム、あるいはたった1人の人間が、無報酬で従事していることは珍しくありません」とヴァルソルダは説明する。
認められない開発者たち
記者がヤズジュに始めて連絡を取ったとき、彼は「チームは昼夜を問わず働いています」とEメールで答えてくれた。「私の午前6時から午前4時までの(この時間にタイプミスはない)シフトはたった今終わったところです」。
多忙を極めるヤズジュは何とか時間を確保して、批判者たちに向けてこうツイートした。「Log4Jのメンテナンスに携わっている人たちは寝る間も惜しんで、修正、ドキュメント、CVE、問い合わせの対応、等々の緩和措置に当たっている。それなのに、無報酬で働く私たちのことや、私たちはやりたくないのに後方互換性に関する懸念のために維持する必要があった機能のことを、非難する人たちがたくさんいます」。
Log4Jという人知れず普及しているソフトウェアが、その脆弱性によってトップニュースに現れるまで、プロジェクトリーダーのラルフ・ゴアーズには、自分の仕事を支援してくれるスポンサーが3社の中小企業しかなかった。フルタイムの仕事と並行してLog4Jに取り組んでいるゴアーズは、欠陥のあるコードを修正し、数百万ドルの損害をもたらす火を消す責任を負っている。余暇活動にしてはあまりに膨大な量の仕事だ。
オープンソース・ソフトウェアの資金不足は、「米国、最重要社会基盤、銀行業、金融全体に関わるリスク」だと、セキュリティ企業ヴェラコード(Veracode)のクリス・ウィソパルCTO(最高技術責任者)は言う。「オープンソースのエコシステムは、リナックス、ウィンドウズ、そして基本的なインターネット・プロトコルと並んで、最重要社会基盤にとって重要度の高いものです。これらはインターネット全体に関わるリスクの中でも最も重要なものです」と述べている。
なぜこのような事態になってしまったのだろうか? その答えは、別の質問の形で返ってくる。無料で手に入るものに、どうしてテック企業はお金を払わなければならないのか? しかし、オープンソース・ソフトウェアがここまで重大になったということは、現状維持は不可能だと考える人も増えてきていることを意味する。
ヴァルソルダは、「最重要社会基盤をボランティア活動で支え続けることは不可能です。ボランティアには、『仕事』の楽しい部分や面白い部分だけに取り組む権利があるからです」と述べている。「オープンソース・プロジェクトには、さらに、入念なテスト、リリース・エンジニアリング、問題発生時の優先順位付け、セキュリティ・レビュー、協力者によるコード・レビューなども必要です。しかし、メンテナーが意欲を持つのは、これらの工程の一部だけかもしれないし、もしくはどれでもない場合もあり得ます」。
Log4J開発チームにプレッシャーや批判が集中する中、オープンソースの世界における公平性をめぐる古くからの疑問が投げかけられている。
「公平性は問題です」。Log4Jプロジェクトの創始者であるセキ・ギュルキュは言う。「利益に対して見返りがないという奇妙な不均衡があります」 。
また、インターネットを動かしながらも無償労働で成り立っているオープンソース・ソフトウェアが持つ大きな役割とそのリスクは、一般にはほとんど知られていない。例えば、オープンSSL(OpenSSL)は暗号化を可能にし、リナックス(Linux)はアンドロイド(Android)など世界中で最も広く使用されているオペレーティング・システム(OS)の基礎となっている。
ギュルキュは、オープンソース・プロジェクトにおける人材の採用と定着の問題を指摘している。大規模プロジェクトであっても、報酬が企業の何分の1からゼロしかなければ、人材を集めて引き留めるのは容易ではない。そして、その影響は国家安全保障にも波及しかねない。
2018年には、「ua-parser-js」という人気のオープンソース・プロジェクトの開発者が、無償開発に意欲を失い辞めてしまった。このソフトウェアは、グーグル、アマゾン、フェイスブックなどの大手テック企業が利用している。ua-parser-jsを引き継いだ人物はその後、ソフトウェアをハイジャックし、暗号通貨を盗み出す悪意のあるコードをプロジェクトに追加。最終的には、米国国土安全保障省がユーザーに警告を発する事態になった。何千人もの開発者がこのソフトウェアを使っていたにもかかわらず、プロジェクトには41.61ドルというわずかな資金しか集まっていなかった。匿名の後継者に無償で管理権を譲った前開発者は、この状況を「狂っている」と表現した。
だが、常に一流のソフトウェア開発者が何年もの無償労働について、見返りを一切得られないわけではない。例えばギュルキュは、Log4Jプロジェクトでの無償開発を経て、金融業界で実入りの良いソフトウェア開発の仕事を獲得できた。
オープンソース開発の経験がポートフォリオの構築に役立ち、それが有給の仕事につながるというのは、実際にはかなりよくあることだ。この構図は、他業界における無給のインターンシップに似ているところがある。人々の間では、それが非倫理的で搾取的な仕組みであり、無償の仕事を大量に引き受ける余裕のある人にとって、そうでない人と比べて不当に有利だという意識が広まっている。このように、オープンソース開発の資金不足は、単なる技術的な問題の範疇を超えて広がる可能性がある。
現状を打破するには
オープンソース・ソフトウェアと、それに頼るインターネットの問題について、ようやく関心が広まってきた。
「テクノロジー会社、企業、そしてソフトウェア開発者は誰であれオープンソースに依存しています」とウィソパルは言う。「今や政府の最上層部でこれが大きなリスクであることが認識されています」。
CISAのイースタリー長官をはじめとする専門家らは、テック企業は透明性を高める必要があると主張している。2021年にジョー・バイデン大統領がサイバーセキュリティに関する大統領令で義務付けた「ソフトウェア部品表(SBOM; Software Bill of Materials)」を採用すれば、ソフトウェアの欠陥が見つかったときに、開発者とユーザーの双方がハッキングへの脆弱性をよりよく理解できるようになる。
自身のオープンソース・プロジェクトを華々しいキャリアにつなげることに成功し、現在はグーグルで働くヴァルソルダは、開発者とその作品を利用する大企業との関係を公式化し、職業化することが有効な対策だと言う。オープンソース開発を趣味的な活動からプロのキャリアパスに変えることで、最重要社会基盤がフルタイムで働く開発者の空き時間に依存する状況を解消べきだと彼は提唱している。加えて、企業はオープンソース・プロジェクトのメンテナーたちに適正な市場価値を支払う仕組みを整備すべきだと主張している。
すでにその必要性を認識している企業もある。グーグルは最近、オープンソース・プロジェクトの開発と脆弱性修正への支援として、1億ドルを拠出した。
ウィソパルによれば、オープンソース・プロジェクトの健全性を把握(例えば、最後の更新が1週間前なのか2年前なのかを知る)したり、優良プロジェクトを支援する一方で安全性を確保できないプロジェクトを廃止する仕組みを整えたりするためにも、やるべきことがまだ多くあると言う。グーグルのもう一つのプロジェクトである「オープンソース・テクノロジー改善基金(OSTIF:Open Source Technology Improvement Fund)」は、重要なオープンソース・プロジェクトを監査し、改善することを目指している。
しかし、Log4Jの脆弱性の余波は、さらに大きな問題を如実に示している。欠陥はソフトウェアの設計にあり、それを見つけるためには、設計を深く理解している人が必要だ。現在の「バグ・バウンティ(Bug bounty)」モデルでは、第三者にソフトウェアを見てもらい、欠陥を見つけてもらうことで報酬を支払っているが、この問題を解決するには不十分だ。第三者には、プロジェクトに深く入り込み、理解する金銭的インセンティブがないからだ。
「これは完全に市場の失敗です」とウィソパルは言う。「我々は公開されたコードの良い部分を利用しながら、悪い部分の責任を他人に負わせているのです。発見と修正のためにさらなる投資が必要です」。
- 人気の記事ランキング
![](https://cdn.technologyreview.jp/wp-content/uploads/sites/2/2020/07/20165845/Patrick-final-2-150x150.png)
- パトリック・ハウエル・オニール [Patrick Howell O'Neill]米国版 サイバーセキュリティ担当記者
- 国家安全保障から個人のプライバシーまでをカバーする、サイバーセキュリティ・ジャーナリスト。