
npmパッケージ/GitHub Actionsを利用する側/公開する側でサプライチェーン攻撃を防ぐためにやることメモ
ARANK
パッケージを利用する側、パッケージを公開する側でサプライチェーン攻撃を防ぐためにできることのメモ書きです。パッケージを利用する側npmやGitHub Actionsなどを利用する側として、サプライチェーン攻撃を防ぐためにできることをまとめます。ロックファイルを使うnpmやYarn、pnpmなどのパッケージマネージャーは、依存関係のバージョンを固定するためにロックファイル(例: package-lock.json, yarn.lock, pnpm-lock.yaml)を使用するGitHub ActionsではSHA Pinを行うpinactなどを使ったGitHub ActionsのSHA Pinを行うまた、GitHubリポジトリの"Require actions to be pinned to a full-length commit SHA”を有効にするrenovatebotもdependabotも - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 みたいな書式でアップデートは対応してるので、pre-commitとかにSHA Pinする処理を入れれば気にすることは特になくなるGitHub Actionsには最小の権限を与える依存のアップデートサプライチェーン攻撃起きてからすぐパッケージをアップデートしてしまうと受動的に攻撃を受ける可能性がある。そのため、パッケージが公開されてから1週間経ってか…