Dependabot、npm依存のマルウェア検知
Dependabot が、npm パッケージの既知の悪意あるバージョンに依存しているリポジトリへアラートを出す。malware alerting を有効にすると、依存関係を GitHub Advisory Database の malware advisory と突き合わせる。リポジトリ・組織・Enterprise のセキュリティ設定にある新しいトグルからの opt-in で、セキュリティ構成による強制も可能。malware 由来のアラートは CVE ベースの脆弱性アラートとは別サブカテゴリとして表示され、トリアージを分けられる。Dependabot のルールで、悪意あるバージョンかパッケージ全体か、エコシステム、パッケージのスコープや名前パターン、複数選択に基づく一括 dismiss/reopen などを細かく調整可能。有効化時には、既存の依存に当てはまる malware advisory についても遡ってアラートが生成される。
2022 年には公開・非公開パッケージの同名による誤検知が多く、malware アラートを一時停止していた。今回は opt-in、デフォルトで悪意あるバージョンに限定する auto-triage、CVE 系との明確な分離で再設計。それでもプライベートパッケージが公開の悪意あるパッケージと同名の場合は誤検知の可能性があり、プライベートレジストリ利用時はルール設定での抑制を推奨。対象エコシステムは現時点で npm のみ。OpenSSF Malware Streams などとの連携で他エコシステムへの拡張を進行中。
Malware alerts の有効化は、リポジトリまたは組織の Settings → Code security → Dependabot から。Dependabot alert rules により受け取る malware アラートをさらに絞り込み可能。