|
Veracode による最近の調査レポート「State of Software Security v11: Open Source Edition」では、現代のソフトウェアの表面下にはセキュリティ上の危険地帯が存在し、サードパーティ ライブラリの 80% はコードベースに組み込まれた後、開発者によって一度も更新されていないと指摘されています。 このレポートは、86,000以上のソフトウェアライブラリ(301,000以上の固有ライブラリを含む)の1,300万回にわたるスキャン分析に基づいています。また、約2,000人の開発者を対象に、サードパーティ製ソフトウェアの使用方法に関する調査も実施しました。Veracode社は、修正の3分の2以上が軽微であり、最も複雑なソフトウェアアプリケーションの機能にも影響を与えるものの、オープンソースライブラリの継続的な進化により、今日安全と思われているものも明日は安全ではなくなる可能性があり、ソフトウェアベンダーとユーザーに重大なセキュリティリスクをもたらす可能性があると述べています。 調査によると、ライブラリの人気と脆弱性は年によって大きく変動しています。例えば、2019年に最も人気があった5つのRubyライブラリのうち4つは、2020年にはトップ10から外れました。また、2019年に最も脆弱だったGoライブラリの一部は、2020年には脆弱性が低下し、その逆も同様です。現代のアプリケーションのほとんどすべてがサードパーティ製のオープンソースソフトウェアを使用して構築されていることを考えると、1つのライブラリに1つの欠陥や変更があると、そのコードを使用するすべてのアプリケーションに影響を及ぼす可能性があります。つまり、こうした絶え間ない変化はソフトウェアセキュリティに直接的な影響を与えるということです。 ほぼすべてのリポジトリに、少なくとも1つの脆弱性を持つライブラリが含まれていました。Veracodeのチーフリサーチオフィサーであるクリス・エング氏は、次のように説明しています。「今日のアプリケーションの大多数はオープンソースコードを使用しています。ライブラリのセキュリティは急速に変化する可能性があるため、アプリケーション内のコンテンツを常に最新の状態に保つことが重要です。開発者は一度ライブラリを選択すると、それをほとんど更新しないことがわかりました。ベンダーはサプライチェーンのセキュリティに対する厳しい監視に直面しており、『一度設定して忘れる』という考え方ではもはや正当化できません。開発者はこれらのコンポーネントを最新の状態に保ち、新たな脆弱性が発見された際に迅速に対応することが極めて重要です。」 さらに、ソフトウェア環境は動的であるにもかかわらず、開発者はオープンソースライブラリをアプリケーションに組み込んだ後、アップデートを忘れてしまうことがよくあります。脆弱なライブラリとアプリケーションの関係性に関する文脈的な理解が不足していることも、制約を生み出す可能性があります。レポートでは、情報不足の開発者は脆弱性の50%を修正するのに7か月以上かかると指摘しています。しかし、適切な情報とガイダンスがあれば、この期間は3週間にまで大幅に短縮できます。 さらに、脆弱なライブラリが発見された場合、迅速に対応し、1時間以内に17%の欠陥を、1週間以内に25%の欠陥を修正できます。したがって、タイムリーかつ正確な情報があれば、開発者はセキュリティの優先順位を適切に設定し、脆弱性を迅速に修正することができます。 その他の主な調査結果は次のとおりです。
|