CISAとOpenSSFは、開発者がコードに悪意のあるソフトウェアコンポーネントを取り込むのを難しくするための新しいガイダンスを共同で発表した。このガイダンスには、プロジェクト管理者のための多要素認証の有効化、第三者によるセキュリティ報告機能、古いまたは安全でないパッケージに対する警告などの技術的な制御が推奨されている。これらの措置は、公開リポジトリ上でオープンソースコードと偽装した悪意のあるコードやパッケージへの露出を減らすのに役立つ。
オープンソースのリポジトリは、現代のアプリケーションの実行と作成に不可欠であるが、不注意によりソフトウェアインフラストラクチャにバックドアや脆弱性が注入される可能性がある。IT部門とプロジェクト管理者は、悪意のあるコードがアプリケーションに組み込まれていないことを確認するために、プロジェクトのセキュリティ能力を評価する必要がある。
悪意のあるコードが見つかる可能性のある「水場」には、GitHub、PyPI(Pythonパッケージをホストする)、NPM(JavaScriptリポジトリ)、Maven Central(Javaリポジトリ)などが含まれる。PythonやRustなどの言語で書かれたプログラムは、複数のパッケージリポジトリからライブラリをダウンロードする。
開発者は、パッケージマネージャーに注入された悪意のあるソフトウェアを誤って取り込むことにより、ハッカーがシステムにアクセスする可能性がある。PythonやRustで書かれたプログラムは、開発者が誤ったURLに接続した場合、悪意のあるソフトウェアを含む可能性がある。
Python Software Foundationは昨年、Sigstoreを採用し、PyPIおよびその他のリポジトリ内のパッケージの完全性と出所を保証するセキュリティ努力をすでに採用している。リポジトリ間のセキュリティは一様ではないが、不十分ではないとArasaratnamは述べている。
CISAの「パッケージリポジトリセキュリティの原則」に記載されたガイドラインは、開発者が誤ったファイル名やURLをタイプミスして悪意のあるパッケージをダウンロードする可能性があるnamesquattingなどのインシデントを防ぐことができる。
【ニュース解説】
現代のアプリケーション開発において、オープンソースのリポジトリは欠かせない存在です。これらのリポジトリは、開発者が必要とする様々なプログラムやツール、APIを提供しています。しかし、この便利さの裏で、悪意のあるコードやバックドア、脆弱性を含むソフトウェアコンポーネントが混入するリスクがあります。
この問題に対処するため、Cybersecurity and Infrastructure Security Agency (CISA) と Open Source Security Foundation (OpenSSF) は、開発者が悪意のあるソフトウェアコンポーネントをコードに取り込むことを難しくするための新しいガイダンスを共同で発表しました。このガイダンスには、プロジェクト管理者のための多要素認証の有効化、第三者によるセキュリティ報告機能、古いまたは安全でないパッケージに対する警告など、様々な技術的な制御が推奨されています。
この取り組みの背景には、GitHub、PyPI、NPM、Maven Centralなどのリポジトリがあります。これらの「水場」では、Python、Rustなどの言語で書かれたプログラムが、必要なライブラリをダウンロードします。しかし、開発者が誤って悪意のあるソフトウェアを取り込んでしまうリスクがあります。例えば、誤ったURLに接続することで、ハッカーがシステムにアクセスする可能性があります。
このガイダンスの目的は、リポジトリ間でのセキュリティの一貫性を高め、開発者が誤って悪意のあるパッケージをダウンロードするリスクを減らすことです。Python Software FoundationがSigstoreを採用したように、パッケージの完全性と出所を保証する取り組みがすでに行われていますが、この新しいガイダンスはそれをさらに強化するものです。
この取り組みのポジティブな側面は、開発者が安全でないパッケージや悪意のあるコードを取り込むリスクを減らすことができる点です。これにより、ソフトウェアのセキュリティが向上し、最終的にはエンドユーザーの安全を守ることに繋がります。一方で、新しいガイダンスの導入には、プロジェクト管理者や開発者にとっての学習コストや運用コストの増加が潜在的なリスクとして考えられます。
長期的な視点では、このガイダンスが広く採用されることで、オープンソースのエコシステム全体のセキュリティが向上し、より信頼性の高いソフトウェア開発が可能になると期待されます。また、セキュリティの規制や基準が強化されることで、将来的にはより安全なデジタル社会の実現に貢献することができるでしょう。
from How to Ensure Open-Source Packages Are Not Mines.