
Mini Shai-Hulud npm サプライチェーン型ワーム(CVE-2026-45321)用のワンコマンドスキャナー。トークンをローテーションする前に検出します。
Mini Shai-Hulud npm サプライチェーン攻撃(CVE-2026-45321、CVSS 9.6)のためのワンコマンドスキャナー。
このワームは、資格情報の失効を検出すると rm -rf ~ を実行する永続化デーモン(gh-token-monitor)をインストールします。デーモンが消えたことを確認するまで、GitHub PAT や npm トークンをローテーションしないでください。 検出 → デーモンの削除 → その後に ローテーション。
curl -fsSL https://raw.githubusercontent.com/prashanthnataraj/mini-shai-hulud-detector/main/shai-hulud-detector.sh | bash
または、最初にダウンロードして確認します(シェルにパイプするスクリプトには推奨):
curl -fsSL https://raw.githubusercontent.com/prashanthnataraj/mini-shai-hulud-detector/main/shai-hulud-detector.sh -o shai-hulud-detector.sh
# Read it. Then:
bash shai-hulud-detector.sh
| コード | 判定 |
|---|---|
0 | CLEAN — 指標なし |
1 | SUSPICIOUS — 手動レビューが必要 |
2 | INFECTED — 修復手順を正確に実行(スクリプト出力を参照) |
package-lock.jsonがない場合は設計上 SUSPICIOUS を返します —npm install後にスキャンを実行してください。
npm install、npm uninstall、git push を実行しないでください。rm -rf node_modules && npm install --ignore-scripts。.npmrc に追加:
ignore-scripts=true
minimum-release-age=4320
すべての GitHub Actions をバージョンタグではなく完全なコミット SHA に固定します。
Lume AI チームが 2026 年 5 月に実際の CVE-2026-45321 攻撃に遭遇した後に作成されました。このスクリプトは読み取り専用です — ダウンロード後のネットワーク呼び出しはなく、ディスクへの書き込みもありません。実行する前にソースを確認してください。
MIT — LICENSE を参照。
| ステップ | チェック内容 |
|---|
| 1 | package-lock.json 内の @tanstack/setup ファントムパッケージ |
| 2 | 既知の悪意のあるペイロードファイル(router_init.js、tanstack_runner.js) |
| 3 | ペイロード SHA-256 ハッシュと既知の悪性リストとの照合 |
| 4 | gh-token-monitor 永続化デーモン(LaunchAgent / systemd / pgrep) |
| 5 | ~/.claude/settings.json 内の予期しない PreToolUse / PostToolUse フック |
| 6 | .github/workflows 内の pull_request_target トリガーと固定されていないアクション参照 |