Endor Labsによると、オープンソースソフトウェアのバージョンアップグレードのほぼすべて(95%)には、他のコンポーネントを失敗させる少なくとも1つの破壊的変更が含まれており、パッチが破壊を引き起こす確率は75%に上る。
このセキュリティベンダーは、Endor Labsの脆弱性および顧客データ、Open Source Vulnerabilities(OSV)データベースの情報、ならびに上位15のオープンソース依存関係に関連するJava ARchives(JAR)に基づく、年次第3回のDependency Management Reportでこれらの調査結果を明らかにした。
調査結果によれば、脆弱なコンポーネントの4分の1(24%)はメジャーバージョン更新を必要とするという事実が、破壊的変更の課題をさらに深刻化させている。
しかし、これらの課題を緩和する方法はある。
報告書は、「プログラム全体のコールグラフと型階層の分析により、ライブラリ更新に伴う破壊的変更が、特定のアプリケーション文脈において実際に重要かどうかを明確にできる」と指摘した。
文書化の遅延
Endor Labsはまた、バグのあるオープンソースソフトウェアのエンドユーザーにとっての別の大きな課題として、脆弱性に関する重要情報の公開遅延を特定した。
報告書は、「最初に起こり得る遅延は、プロジェクトのソースコードリポジトリで脆弱性が修正されてから、Mavenやnpmのような公開リポジトリで対応するセキュリティリリースが公開されるまでの間に発生する。これにより、下流のユーザーが修正を取り込めるようになる」と説明した。
「この遅延が重要なのは、攻撃者が修正コミットを見つけられる可能性があり、その結果、脆弱性の技術的詳細や悪用方法を把握できる一方で、ユーザーにはシステムにパッチを当てる容易な手段がないためだ。」
Endor Labsは、セキュリティアドバイザリの69%が対応するセキュリティリリースの後に公開されており、中央値の遅延は25日だと付け加えた。
それらのアドバイザリがブログ投稿、CVE、またはGitHub Security Advisories(GHSA)の形であれ、脆弱性の存在とセキュリティリリースの入手可能性に関する重要情報を含んでいる。
したがって、その公開の遅れは、脅威アクターに脆弱なシステムを悪用するための別の機会の窓を与えることになると、Endor Labsは警告した。
報告書はさらに、修復プロセスに不可欠なソフトウェアコンポジション解析(SCA)ツールの情報源が遅かったり不正確だったりする場合にも、さらなる遅延が生じ得ると付け加えた。
例えば、National Vulnerability Database(NVD)はCVEの処理において広く文書化された遅延に苦しんでいる。
報告書は、調査対象となった6つのオープンソースエコシステム全体で、公的な脆弱性データベースにあるアドバイザリのほぼ半数(47%)がコードレベルの脆弱性情報をまったく含まず、51%が修正コミットへの参照を1つ以上含み、影響を受ける関数に関する情報を含むのはわずか2%にとどまると指摘した。
ノイズの削減
この種の情報がなければ、既知の脆弱な関数が下流アプリケーションの文脈で実行され得るかどうかを確立することは、事実上不可能だと同社は警告した。
こうした状況は、コスト削減とレジリエンス向上のために不可欠であるにもかかわらず、パッチ適用のための脆弱性の優先順位付けをますます困難にしている。
Endor labsは、関数レベルで悪用可能な脆弱性は9.5%未満だと主張した。同社は、脆弱性がアプリケーションで悪用可能かどうかを判断する「関数レベル到達可能性分析(function-level reachability analysis)」として知られるコードスキャン手法が、最も重要な優先順位付け手法だと論じた。
同社によれば、次に重要なのはデータ駆動型のExploit Prediction Scoring System(EPSS)であり、これと到達可能性分析を組み合わせたプログラムでは、最大98%の「ノイズ削減」が見られるという。
翻訳元: https://www.infosecurity-magazine.com/news/open-source-updates-75-breaking/