Apache Log4jのLog4Shellバグは、サイバーセキュリティ史上でも最も重大な脆弱性の1つだ。
何億台ものデバイスがLog4jコンポーネントを、政府機関、重要インフラ、企業、個人など、さまざまなオンラインサービスで利用している。
実際、Javaで書かれたこのライブラリは、ほぼすべてのソフトウェアで使われているため、非常に広範囲に影響するリスクであり、懸念事項でもある。そのため、このバグが昨年公表されて以来、ハッカーは積極的に悪用してきた。公開されているPOC(概念実証)がGitHubであまりにも簡単に見つかることもあり、エクスプロイトは悪名高いほど容易に実行できる。
Zectonalの研究者は明らかにした。悪名高いこのバグを利用できる、極めて重要な新たな攻撃ベクトルを――データパイプラインとデータレイクだ。研究者らは、攻撃者がAIや機械学習を汚染して検知を回避する方法を実証した。
感染したペイロードは、AIの学習に使われるビッグデータファイルに注入できる。研究者らによると、このような攻撃を予測して検知するのはかなり難しい。脅威の深刻さを示すため、可能な限り現実的な処理とクラウドアーキテクチャを用いた。
このエクスプロイトの狙いは、標的となるAIモデルと関連する分析を汚染し、データ基盤全体を機能不全に陥れることだ。グローバルなデータサプライチェーンに悪意あるペイロードを仕込むことで、ハッカーは被害者に壊滅的な損害を与えられる。
あわせて読みたい:コードデバッグとコードセキュリティの主要ツール
ビッグデータ攻撃を理解する
研究で使われたノーコードのデータパイプラインは、攻撃者にとって特に魅力的だ。というのも、「データフローは、処理されて最終的に脆弱なシステムにアクセスするまで、いかなるファイアウォールやスキャン装置も通過しない」からだ。
研究者らは、一般的なクラウドベースのアーキテクチャ、ストレージシステム(バケットなど)、ETL(抽出、変換、ロード)アプリケーションを意図的に使用した。また、標準的な構成とファイルを適用し、ペイロード(Log4Shellバグの悪用に使う細工された文字列)を、数百万件のデータの中の単一のデータポイントに隠した。
ETLプロセスは、複数のソースからデータを集めて1つのデータプールに統合する。ETLアプリケーションは、データ分析や機械学習のワークフローに不可欠だ。ビジネスインテリジェンスのニーズに合う特定のルールに従って、データをクリーニングして整理するためである。
研究者らは、「パブリックインターネット経由で、プライベートな仮想クラウド内から即座にリモートコード実行を可能にした」。より正確には、パブリッククラウドプロバイダーがホストするVPC(仮想プライベートクラウド)の一部である、プライベートサブネットのIPアドレスを持つノーコードETLソフトウェアサービスへのリモートアクセスを実現した。
AIは多くの高度なニーズやサービスを支えるために使われているため、このようなエクスプロイトはさらなる攻撃を誘発する可能性が高い。スマートビークル、医療、金融、サプライチェーンなどの重要システムは、ディープラーニングによって自動化されており、今後も自動化が可能だ。
企業はすでにAIを使い、顧客分析からパターンやトレンドを特定してビジネスチャンスを見つけている。このような回避戦略によるデータレイクへのアクセスを許す欠陥には、迅速に対処しなければならない。
Log4Shellの脆弱性を悪用するため、研究者らはELKスタック(Elasticsearch、Logstash、Kibana)のLogstashコンポーネントを攻撃した。ELKは、数百万回のダウンロードを誇る非常に人気の高いオープンソースのログ管理システムだ。
このようなプラットフォームは、企業がデータを抽出・分析するために広く利用している。最新バージョンではLog4Shellの脆弱性が修正されているが、研究者らは、Log4Shellの公表直前にリリースされたバージョンをJava 8と組み合わせることで悪用できた。
研究者らは、企業でよく見られる攻撃ベクトルの典型的な組み合わせを利用した。最終的に災厄を招く、複数の古いコンポーネントだ。
あわせて読みたい:脆弱性管理の主要ツール
AIとオープンソースのエクスプロイトを防ぐ
研究者らは、Synk JVM Ecosystem Report 2021の調査結果を引用した。同レポートによると、「Java開発者の60%は、依然として本番環境でJava 8を使用している」。実際、多くの企業システムが古いライブラリを使っており、組織全体を高いリスクにさらしている。
積極的なパッチ管理には多大なコストと運用上の複雑さが伴う可能性があるが、ユーザーと管理者は、脆弱性を抱えている、あるいは廃止すべきハードウェアやソフトウェアを把握する必要がある。ハッカーは現在、脆弱性をマッピングし、悪用のために事前構成されたペイロードを提供できる高度なハッキングツールを幅広く利用できる。
ソフトウェアサプライチェーンは攻撃を受けやすく、オープンソースのLog4jライブラリはその顕著な例だ。実際、オープンソースは企業向けアプリケーションや開発の取り組みにますます組み込まれており、関連するさまざまなエコシステムの安全確保は無料でも容易でもない。依存関係は途方もない。
すべてを安全にするのは費用のかかる取り組みに思えるかもしれない。しかし、サイバー攻撃が成功した場合のコストははるかに大きく、組織が事業を継続できなくなるケースさえある。
Linux Foundationに関連する主要なオープンソース組織、Open Source Security Foundation(OpenSSF)は最近、発表した。「オープンソースソフトウェアのエコシステム全体の安全性を高めるため、10の主要目標を掲げた、意欲的で多方面にわたる計画」だ。プログラムの費用は1億5000万米ドルで、そのうち3000万米ドル以上は、Amazon、Ericsson、Google、Intel、Microsoft、VMWareなどのテック大手がすでに拠出を表明している。
この計画は、トレーニングを含め、開発者が問題を修正できるよう支援し、セキュリティ監査を提供するとともに、ソフトウェアコンポーネントの配布における認証済みパッケージ署名の利用を促進する可能性がある。この取り組みは、公共部門を含むソフトウェアサプライチェーンの多くの関係者に恩恵をもたらすだろう。
Linux Foundationがオープンソースの世界の安全確保を支援しようとしたのは今回が初めてではない。しかし、ソフトウェアサプライチェーンの現状はついに、主要なリーダーたちが何か行動を起こそうとするほど破綻している。願わくば、もう後戻りできないところまで壊れてはいないことを祈りたい。
資金支援の不足によって開発者が自らのコンポーネントを自ら壊してしまう場合や、悪意ある貢献者が人気のオープンソースライブラリにバックドアを仕込む場合、あるいはメンテナーが誤って重大なバグを持ち込む場合など、依存関係の管理は悪夢になりかねない。
こうした脅威に加え、多くの依存関係は開発を迅速化するために既存のコンポーネントを利用しており、複雑さがさらに一層加わる。そのため、企業にとって全体の混乱を管理することはますます難しくなる。
次の記事:





