dependabotのcooldownオプション
ライブラリがリリースされてからDependabotが数日待つようになるオプションが実装された
https://github.com/dependabot/dependabot-core/issues/3651#issuecomment-2691300935
code:dependabot.yml
version: 2
updates:
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "daily"
# 🔥 Cooldown settings (stored in update_config_cooldowns table)
cooldown:
default-days: 5 # Fallback cooldown if no other rule applies
semver-major-days: 30 # Cooldown for major version updates
semver-minor-days: 7 # Cooldown for minor version updates
semver-patch-days: 3 # Cooldown for patch updates
include:
- "lodash" # Apply cooldown to these dependencies
- "react"
- "dependabot*"
exclude:
- "eslint" # Exclude these dependencies from cooldown
- "webpack*"
サプライチェーン攻撃への対策(ライブラリ利用者側)になる
Cosenseに取り入れたshokai.icon
Dependabotにcooldownを設定してすぐライブラリアップデートさせない #7297
ドキュメントにあった設定をそのまま採用した
patchを3日待つのが、短いのか長いのか?適正値がわからない
1日など、極端に短い場合はサプライチェーン攻撃で侵害されたnpm更新をGithub securityが止めてくれる前にpull requestが立ってしまうのでダメ
極端に長いとセキュリティパッチの適用が遅れるのでダメ
それなら…3日ぐらいか?という感じになったshokai.icon
semantic versioningのpatch, minor, majorだけでなく、セキュリティアップデートだから急いでくれ!ってフラグもあったらいいのかな?
と思ったけど、攻撃者がそれを悪用するだろうから機能しないな
ある。CVEを使ってるので、それなりに信頼できる
CVE付きのセキュリティアップデートはdependabotのcooldown期間を無視して更新pull requestが作成される
という事はpatch versionは3日だけでなく、7日とかにしてもいいのかも?shokai.icon
renovateでminimumReleaseAgeを設定してnpmのパッケージの公開直後に起きる問題を回避する
renovateの同様の働きをするオプション