75% の確率でアプリは壊れる:依存関係のある OSS のアップデートが及ぼす影響 – Endor Labs

Open Source Updates Have 75% Chance of Breaking Apps

2024/09/12 InfoSecurity — Endor Labs の調査によると、オープンソース・ソフトウェアのバージョン・アップグレードにおいては、ほぼ全て (95%) の確率で他のコンポーネントの動作を妨げる、少なくとも1つの変更が含まれているという。そのため、パッチを適用すると、75%の確率で動作に支障をきたす可能性が生じる。この調査結果は、Endor Labs の第3回目の年次報告書 “2024 Dependency Management Report” で発表されたものであり、同社における脆弱性および顧客のデータと、Open Source Vulnerabilities(OSV) データベースの情報に加えて、Java ARchives (JARs) に関連するオープンソース依存関係 Top-15 を基に作成されている。


同レポートによると、脆弱なコンポーネントの 24% が、メジャー・バージョン・アップデートを必要としているという事実により、大幅な変更という問題が、さらに複雑なものになっている。

しかし、これらの課題の軽減策はある。

Endor Labs は、「プログラム全体のコールグラフと型階層の分析により、特定のアプリケーションのコンテキストにおいて、ライブラリの大幅な変更が現実の問題になるかどうかを明確にできる」と述べている。

文書化の遅延

Endor Labs が指摘する、もう一つの大きな課題として、OSS のエンド・ユーザーにとっての、脆弱性に関する重要な情報の公開の遅れが挙げられている。

同社は、「最初の遅れが生じる要因は、プロジェクトのソースコード・リポジトリで脆弱性が修正されてから、下流のユーザーによる修正版の使用を促す Maven や npm などの公開リポジトリにおいて、更新されたセキュリティ・リリースが公開されるまでの時間差である。この遅延は問題である。なぜなら、修正コミットを発見した攻撃者が、脆弱性の詳細や悪用方法を知る可能性が生じるからだ。その一方でユーザーは、システムにパッチを適用する簡単な手段を得ることができない」と説明している。

Endor Labs によると、セキュリティ勧告の 69%は、対応するセキュリティ・リリース後に公開されており、その遅延期間は中央値で 25日になるという。

それらの公開の形式は、ブログ投稿/CVE/GitHub セキュリティ・アドバイザリ (GHSA:GitHub Security Advisories) などである。つまり、脆弱性の存在とセキュリティ・リリースの入手可能性に関する重要な情報は、これらのアドバイザリにより公開されている。そのため、脆弱性の情報公開が遅れると、危殆化したシステムを悪用する機会が、脅威アクターたちに再び与えられることになると、Endor Labs は警告している。

さらに、このレポートでは、修正プロセスに不可欠な SCA (software composition analysis) ツールが使用する情報ソースが不正確な場合には、さらなる遅延が生じると付け加えている。たとえば、米国の NVD (National Vulnerability Database) では、2024年2月から CVE の処理に遅延が生じている

この報告書で明らかになったのは、調査対象となる6つのオープンソース・エコシステムにおいて、公開された脆弱性データベースの勧告の 47% が、コード・レベルの脆弱性情報をまったく取り込んでいなかったことだ。また、修正コミットへの参照を取り込んでいたのは 51% であり、影響を受ける関数の情報を取り込んでいたものは僅か2%であったという。

ノイズの軽減

Endor Labs の警告は、このような情報がなければ、下流アプリケーションのコンテキストにおいて、既知の脆弱性を持つ関数の実行を判断することが、事実上不可能であるというものだ。

コスト削減とレジリエンスの向上は不可欠であるが、パッチ適用における脆弱性の優先順位付けは、ますます困難になっている。Endor labs の主張は、機能レベルで悪用が可能な脆弱性は 9.5% 未満であるというものだ。

同社は、優先順位付けの最も重要な手法として、アプリケーションで脆弱性が悪用可能かどうかを判断する “機能レベル到達可能性分析” として知られるコードスキャン技術を挙げている。そして2番目は、データ駆動型の EPSS (Exploit Prediction Scoring System) であると述べている。同社は、このシステムと到達可能性分析を組み合わせたプログラムでは、最大で 98%のノイズ低減を実現できると指摘している。