DUICUO

オープンソース ソフトウェアのセキュリティが成熟するにつれて、企業はどのようにセキュリティ戦略を策定すべきでしょうか?

最近の調査によると、オープンソース ソフトウェア (OSS) セキュリティ戦略を策定した企業は、準備状況の自己評価で優れた成績を収める傾向があり、通常、ソフトウェア セキュリティを推進する専任チームを有しています。

ソフトウェアセキュリティ企業SnykとLinux Foundationは火曜日、オープンソースソフトウェアのセキュリティポリシーを策定している企業のうち、10社中7社が自社のアプリケーションが「非常に安全」または「少なくともある程度安全」であると考えているという調査結果を発表しました。一方、セキュリティポリシーを策定していない企業では、「少なくともある程度安全」であると考えているのはわずか45%でした。

Snyk の開発者リレーション担当ディレクターの Matt Jarvis 氏は、オープンソース ソフトウェアはアプリケーション開発に大きなメリットをもたらすが、企業はその欠点も認識し、それに備える必要があると述べています。

彼は次のように述べています。「オープンソースはイノベーションと高品質なソフトウェア構築のための実証済みのメカニズムである一方、その成功は同時に、オープンソースソフトウェアの普及がサプライチェーン攻撃の格好の標的となるという犠牲も生んでいます。企業は、ガバナンスやコードを含むオープンソースの仕組みへの理解を深め、開発者中心のセキュリティツールと手法を導入することで、サプライチェーン管理を強化する必要があります。」

中小企業はオープンソース ソフトウェアのセキュリティ戦略において遅れをとっています。

全体的に、さまざまなコンポーネントやフレームワークを使用するために開発者をガイドするオープンソースのセキュリティ戦略を策定している企業は約半数にとどまっており、中小企業の大多数 (60%) はそのような戦略を策定していないか、策定しているかどうかさえ認識していません。

報告書は、スタートアップ企業や中小企業は経済的な考慮からセキュリティ戦略策定の優先順位を下げがちであると指摘している。

レポートでは、「小規模組織はITスタッフと予算が限られており、競争力維持のためにビジネス機能要件を優先することがよくあります。リソースと時間の不足は、組織がオープンソースソフトウェアのセキュリティに関するベストプラクティスに取り組めない主な理由です。」と述べています。

出典: レポート「オープンソースソフトウェアにおけるサイバーセキュリティの課題への取り組み」

調査によると、プログラミング言語によってセキュリティに関する考慮事項は異なります。例えば、.NETで書かれたアプリケーションは脆弱性の修正に最も時間がかかり、148日かかります。次いでJavaScriptが49日です。

多数のJavaScript依存関係によって引き起こされる問題

Snyk のデータによると、JavaScript アプリケーションは依存関係が最も多く、プロジェクトあたり平均 174 個あります。これは、依存関係が最も少ない Python (プロジェクトあたり平均 25 個) の約 7 倍です。

ジャービス氏は、大規模な推移的依存関係ツリーは脆弱性を修正するための回り道につながる可能性があるものの、組織が異なるプロジェクト間の関係を追跡する方法を持っている場合、高い依存関係は必ずしも不利にはならないと述べた。

他のエコシステムと比較して、JavaScript パッケージはスコープが狭い傾向があるため、パッケージ数は多いものの、潜在的な欠陥を監査するためのコードが少ない可能性があります。最も重要なのは、使用している依存関係、特に依存関係の依存関係として導入された推移的な依存関係を理解することです。そのためには、適切なセキュリティツールを使用してこれらの項目をスキャンする必要があります。

しかし、データは、言語によって脆弱性の程度が異なることも示しています。例えば、Javaで書かれたプロジェクトには、平均で高リスクの脆弱性が47件以上、中リスクの脆弱性が28件存在し、平均18件と21件で2位のJavaScriptや、平均20件のPythonを大きく上回っています。

データには、プロジェクトの複雑さ、開発者の数、人気度など、多くの要因が影響します。これらの要因はすべて、脆弱性の数と種類に影響を与える可能性があります。開発者に人気のあるプロジェクトには、より多くの脆弱性が存在する可能性があります。

自動化 = セキュリティの成熟度

調査結果によると、依存関係の脆弱性を見つけることは重要ですが、セキュリティ成熟度の高い企業 (つまり、オープンソース ソフトウェアのセキュリティ ポリシーを策定している企業) のほとんどは、主に業界の脆弱性コンサルティング (60%)、パッケージのバグの自動監視 (60%)、パッケージ管理者からの通知 (49%) に依存しています。

自動監視は、セキュリティ成熟度の高い企業とそうでない企業を分ける最も大きな違いの一つと言えるでしょう。セキュリティ成熟度の高い企業では60%が何らかの自動監視を導入しているのに対し、セキュリティ成熟度の高い企業では、戦略のない企業ではわずか38%しか導入していません。

ジャービス氏は、企業がオープンソース ソフトウェアのセキュリティ戦略を持っていないなら、開発のセキュリティを強化する方法として今すぐ始めるべきであり、軽い戦略でも良いスタートになると述べています。

彼は、「戦略の策定と意図の表明には相関関係があります。戦略の策定は、組織が潜在的な問題を認識し、行動を起こし始めたことを示すものであり、セキュリティ成熟度の適切な出発点であると考えています」と述べました。