toplogo
Sign In

公開ソフトウェアパッケージレジストリ4つにおける署名の量、品質、および影響要因


Core Concepts
公開ソフトウェアパッケージレジストリにおける署名の採用量と品質を測定し、その採用に影響を与える要因を明らかにした。
Abstract
本研究は、4つの主要なソフトウェアパッケージレジストリ(Maven Central、PyPI、Docker Hub、Hugging Face)における署名の採用量と品質を測定し、その採用に影響を与える要因を明らかにした。 主な結果は以下の通り: 2023年1月から12月の間、Maven Central以外のレジストリでは2%未満の成果物に署名がされていた。一方、署名を義務化しているMaven Centralでは97.1%の成果物に署名がされていた。 署名の品質については、Docker Hubが最も高く(全ての署名が有効)、次いでMaven Central(72.9%が有効)、PyPI(48.4%が有効)、Hugging Face(20.2%が有効)の順であった。 レジストリの署名ポリシーが署名の採用量に大きな影響を与えている。署名を義務化しているMaven Centralでは高い採用率を示す一方、PyPIでは署名の重要性が低下したことで採用率が低下した。 専用のツールを提供することで署名の品質が向上する。Docker Hubは専用ツールを提供しており、署名の品質が最も高かった。 一度署名を始めた維持者は、その後も継続して署名を行う傾向にある。署名を始めるのが最も難しい。 サイバー攻撃や新しい技術標準の公開などの署名関連のイベントは、署名の採用には影響を与えていない。署名の採用は、レジストリのポリシーによってより大きく左右される。 これらの結果は、ソフトウェアパッケージレジストリの管理者と署名インフラの重要性を示唆している。
Stats
2023年1月から12月の間、Maven Centralの97.1%の成果物に署名がされていた。 2023年1月から12月の間、Docker Hubの1.0%の成果物に署名がされていた。 2023年1月から12月の間、Hugging Faceの0.1%の成果物に署名がされていた。 2023年1月から12月の間、PyPIの0.2%の成果物に署名がされていた。 Maven Centralの72.9%の署名が有効であった。 PyPIの48.4%の署名が有効であった。 Hugging Faceの20.2%の署名が有効であった。
Quotes
"商用および政府のソフトウェア製品は、オープンソースのソフトウェアパッケージを組み込んでいる。" "悪意のある行為者がソフトウェア供給網を攻撃し、パッケージに悪意のあるコードを注入して下流システムにアクセスすることを始めている。" "ソフトウェア署名は、パッケージの信頼性を保証する最も強力な方法である。"

Deeper Inquiries

ソフトウェア署名の採用を促進するためには、どのような政策的な支援が必要だと考えられるか。

ソフトウェア署名の採用を促進するためには、以下の政策的支援が重要と考えられます: 義務化: Maven Centralのように署名を義務付ける政策が効果的であることが示されています。他のレジストリでも署名を義務付けることで、署名の採用率を向上させることが期待されます。 専用ツールの提供: Docker Hubのように署名を容易にするための専用ツールを提供することが重要です。ツールの利用が簡素化されることで、署名の品質が向上しやすくなります。 教育と啓発: ソフトウェア開発者やメンテナーに対して、署名の重要性や手法についての教育と啓発活動を行うことが必要です。意識向上を図ることで、署名の採用を促進することができます。 規制と基準の整備: 政府や業界団体がソフトウェア署名の採用を奨励する規制や基準を整備することが重要です。これにより、業界全体での署名の標準化と普及が促進されます。

ソフトウェア供給網の脆弱性に対して、署名以外にどのような有効な対策が考えられるか。

ソフトウェア供給網の脆弱性に対処するためには、署名以外にも以下の有効な対策が考えられます: ソフトウェアビルドの再現性: ソフトウェアのビルドプロセスを再現可能にすることで、ソフトウェアの信頼性を高めることができます。再現性のあるビルドは、外部依存関係の透明性を確保し、悪意のある変更を検知するのに役立ちます。 セキュリティテストと監視: ソフトウェアに対して定期的なセキュリティテストを実施し、脆弱性や悪意のあるコードを検出することが重要です。また、ソフトウェアの監視を行い、不審なアクティビティや侵入を早期に検知することも効果的です。 ソフトウェアビルドチェーンのセキュリティ強化: ソフトウェアビルドチェーン全体にセキュリティ対策を施すことで、ソフトウェア供給網全体の脆弱性を低減することができます。ビルドチェーン内の各段階でのセキュリティ対策を徹底することが重要です。

ソフトウェア署名の採用を阻害する要因として、技術的な課題以外にどのような社会的・組織的な要因が考えられるか。

ソフトウェア署名の採用を阻害する社会的・組織的な要因には以下のようなものが考えられます: 意識の欠如: ソフトウェア開発者やメンテナーの間で、署名の重要性や利点に対する認識が不足している場合、署名の採用が阻害される可能性があります。適切な教育や啓発活動が行われていない場合、署名の重要性が理解されず、採用が進まないことがあります。 組織文化と方針: ソフトウェア開発組織の文化や方針が署名の採用に影響を与えることがあります。組織がセキュリティに対する重要性を適切に認識していない場合や、署名の実施に対する適切な方針が欠如している場合、採用が阻害される可能性があります。 コストとリソース: 署名の実施には一定のコストとリソースが必要です。開発者やメンテナーが署名の手法やツールにアクセスできない、または十分な時間やリソースを割けない場合、署名の採用が困難になることがあります。組織が適切な支援を提供しない場合、採用が阻害される可能性があります。
0