この記事について海外で公開された情報をもとにAIが要約・解説した記事です。原文の翻訳ではありません。正確な内容は記事末尾の出典元をご確認ください。
この記事の要点
  • 攻撃者がkeyvの保守者アカウントを乗っ取り、正規のGitHub Actions経由でワーム入りパッケージを公開
  • 来歴証明は偽造ではなく、正規ワークフローで発行されたため検知が困難に
  • 感染した開発者のnpmトークンを利用して次々と他パッケージへ拡散、被害は数百規模

攻撃の概要

米国時間の8月4日、npmで配布されているkeyvの保守担当者のGitHubアカウントが乗っ取られました。keyvは小規模なキーバリューストレージライブラリで、npm上で週に約1億2700万回ダウンロードされています。乗っ取りから数時間以内に、keyvと関連するキャッシュパッケージの改竄版がnpmに公開され、認証情報を盗むワームが仕込まれました。

セキュリティ企業Aikidoの分析では、少なくとも868のパッケージ、1381のバージョンが汚染され、これらを合わせた月間インストール数は20億回を超えます。別の調査会社JFrogは、400以上のパッケージと1700以上の改竄バージョンを独自に確認しており、被害範囲はなお拡大中です。

来歴証明が機能しなかった理由

この事件の最大の特徴は、改竄されたパッケージが有効な来歴証明(プロビナンス)を伴って配布された点です。来歴証明とは、パッケージが主張する作成元から来たことを暗号的に保証する仕組みで、サプライチェーン攻撃への備えとして近年採用が進んでいます。しかし攻撃者はこの証明を偽造せず、正規のリリースプロセスを通じて取得していました。

Aikidoの分析によると、攻撃者は保守担当者が管理するリポジトリのメインブランチに悪意のあるファイルを直接プッシュし、すぐに新しいリリースを作成しました。リリースは保守担当者自身のGitHub Actionsワークフローで実行されたため、npmは正規の来歴証明を生成しました。セキュリティ監査の立場からは、この改竄ビルドは本物と区別がつきません。

JFrogが追跡した特定の経路では、さらに自動化された攻撃が確認されています。GitHub Actionsの実行内でOIDCトークン(OpenID Connectの認証トークン)を取得し、それをnpm公開トークンと交換し、SigstoreのFulcioとRekorを使ったバンドルを作成していました。これにより、信頼できるワークフローから生成された来歴が悪意のあるパッケージに付与されていたとみられます。

感染の拡大と影響

ワームは感染した開発環境やビルドランナーから入手した認証情報を収集し、見つかったnpm公開トークンを使って他のパッケージを改竄しました。被害に遭った保守担当者は、気づかないうちに感染拡大の担い手となります。Aikidoによれば、数分ごとに数十の新たに汚染されたパッケージが出現したといいます。

このワームは、窃取したシークレットを「Shai-Hulud: Here We Go Again」というタグの付いた公開GitHubリポジトリに送信しており、キャンペーン名の由来となっています。影響範囲は単純なユーティリティにとどまらず、keyvは多くの人気ツールで間接的な依存関係として含まれているため、企業のnpmスコープにまで到達しました。確認された被害には、Deliveroo、Qlik、Picsartに関連するリリースが含まれます。開発者は意図してkeyvをインストールしたわけではなく、依存関係の深い階層に存在していたために影響を受けたと言えます。

CrowdStrike報告との符合

この攻撃の前日、CrowdStrikeは2026年の脅威ハンティング報告書を公開し、まさにこの形の攻撃を予測していました。報告書では、ソフトウェアサプライチェーン攻撃の進化として、開発者エコシステム、パッケージレジストリ、CIパイプライン、コンテナレジストリ、エディタ拡張機能などが攻撃対象になっていると指摘しています。特にnpmパッケージは、上半期に追跡された悪意のあるレジストリ脅威の87%に関連していました。

keyvワームは、その報告が示す攻撃パターンを24時間以内に現実のものにしました。セキュリティ担当者にとっては、正しいアカウントを所有した攻撃者がサプライチェーンの信頼シグナルを満たすことができ、開示から悪用までの時間が月次パッチでは追いつかないほど短くなっているという警鐘と受け止められています。

原文からの引用
The trust signals built into the software supply chain can be satisfied by an attacker who owns the right account, and the window between disclosure and exploitation has collapsed past what monthly patching absorbs.

ソフトウェアサプライチェーンに組み込まれた信頼シグナルは、正しいアカウントを所有する攻撃者によって満たされ得る。そして開示から悪用までの時間枠は、月次パッチでは吸収できないほど短くなっている。

日本の開発者・IT企業にとっての意味

日本のIT企業にとって、今回の事件は自社の依存関係を再確認する契機となります。keyvのような小規模ライブラリが多くの製品に間接的に含まれているケースは少なくなく、npmで配布されるパッケージの来歴証明が正規であっても安全とは限らないことを意味します。開発チームは、パッケージ更新時のソースコードレビューや改ざん検知を強化し、認証情報の保管を最小化する必要があります。また、GitHubアカウントの保護(多要素認証の徹底、トークンのスコープ制限)が最重要となります。さらに、CrowdStrike報告にあるように、レジストリ自体が攻撃対象になっている認識を持ち、サプライチェーン全体の監視を自動化することが求められます。

用語解説

来歴証明(provenance)
ソフトウェアがどこから来たかを暗号的に証明する仕組み。ビルド時の署名やメタデータで、改ざんや偽造を防ぐ目的がある。
GitHub Actions
GitHub上でビルド、テスト、デプロイを自動化するCI/CDサービス。リリース作業もワークフローとして実行できる。
OIDCトークン
OpenID Connectを使った認証トークン。GitHub Actionsが外部サービスへのアクセス権を取得する際に利用される。
Sigstore
ソフトウェアの署名と来歴を管理するオープンな仕組み。Fulcio(証明書発行)とRekor(透過的ログ)で構成される。

出典

The Shai-Hulud npm worm didn't fake its security check — it earned a legitimate one

VentureBeat / louiswcolumbus@gmail.com (Louis Columbus) / 2026年8月6日

https://venturebeat.com/security/the-shai-hulud-npm-worm-didnt-fake-its-security-check-it-earned-a-legitimate-one

AI導入も顧問も、お任せください

何から手をつけるか、どこまでAIに任せるか。自社の業務に合わせて整理し、導入から運用まで伴走します。相談だけでも構いません。

AI導入について相談する