GitHub、npmとActionsのサプライチェーン攻撃対策を強化
詳細を読む
GitHubは7月28日、パッケージ管理のnpmとCI/CD基盤のGitHub Actionsに、過去数ヶ月で実装したサプライチェーン攻撃対策をまとめて公表しました。近年、公開パッケージやCI/CDの弱点を突いて多数のオープンソースへマルウェアを拡散し、認証情報を窃取する攻撃が相次いでいます。同社は単一の防御ではなく、攻撃連鎖の各段階を断つ多層的な既定変更で被害を抑える方針を示しました。
まず攻撃の起点となるアカウント乗っ取りや不正なワークフロー実行への対策を強化しました。npmでは重要アカウントがメール変更や2FA復旧コード使用時に72時間の読み取り専用となり、乗っ取りへの対応時間を確保します。GitHub Actionsではフォークからの未検証コード実行を防ぐようactions/checkoutの既定を変更し、実行トリガーの権限も制御できるようにしました。
認証情報の窃取を防ぐ取り組みも進めています。長期間有効な認証情報をCI/CDから排除する信頼された公開(Trusted Publishing)はCircleCIに対応し、より多くの開発者が利用できるようになりました。技術プレビューのネットワークファイアウォールは、ワークフローの外部通信を記録し、不審な挙動の検知を可能にします。
窃取した認証情報による攻撃の拡散を抑える機能も加わりました。段階的公開では公開に追加の承認と2FAを求め、npm v12ではインストール時スクリプトを既定で無効化します。さらにDependabotのバージョン更新は、リリースから3日間待機してからPRを開き、悪意ある更新が下流へ届く前に検知の猶予を設けます。
インシデント対応の面では、企業がユーザーの全認証情報を即座に失効できるセルフサービス機能や、OAuth・Appトークンへ対応を広げた認証情報失効APIを提供します。GitHubは「既定で安全」を優先課題とし、今後もオープンソース全体を狙う攻撃の遮断を続けると表明しました。経営者やエンジニアにとって、依存先の安全性を左右する重要な動きと言えます。