PhantomRavenと名付けられた新たなサプライチェーン攻撃が、インストール時に認証情報、トークン、シークレットを盗む悪意のあるパッケージをnpmレジストリに大量投入しました。これらのパッケージは最初にダウンロードした際には安全に見えるため、特にセキュリティアプリが特定するのが難しくなっています。
Koiの研究者によると、このキャンペーンは少なくとも2025年8月から活動しており、複数のアカウントによって公開された126個の悪意あるパッケージが関与しています。今週このキャンペーンが明るみに出るまでに少なくとも86,000回ダウンロードされており、公開時点でも80以上の感染パッケージがまだ稼働していました。
PhantomRavenの特徴は、研究者が「リモート動的依存関係(RDD)」と呼ぶ新しい手法を使っている点です。一般的なnpmマルウェアが可視の依存関係やpost-installスクリプトに依存するのに対し、PhantomRavenパッケージは最初は空のように見えます ― 依存関係も疑わしいコードもありません。しかし、ユーザーがインストールすると、パッケージは攻撃者が管理するリモートサーバーから追加のコードを取得します。悪意のあるペイロードはローカルで実行され、データを盗み出して攻撃者のインフラに送信します。
これにより、従来の方法では攻撃の検出が非常に困難になります。パッケージのメタデータや依存関係グラフの静的解析に頼るセキュリティツールは異常を検知できません。なぜなら、有害なコードはレジストリ自体には存在せず、インストール時に動的に取得されるため、ソースファイルには明らかな痕跡が残らないからです。
盗まれた情報にはnpmやGitHubのトークン、クラウド認証情報、SSHキー、開発やCI/CDパイプラインで一般的に使用されるその他の機密環境変数が含まれます。Koiによると、流出したデータは脅威アクターが管理するドメインに送信され、追跡を困難にするため被害者ごとにランダム生成されたサブドメインが使われていました。
Koiの研究者は、パッケージが無害な名前を使っているため、経験豊富な開発者でも騙される可能性があると指摘しています。また、一部はAIコーディングツールによって自動提案されたもののようです。攻撃者は複数のnpmアカウントにアップロードを分散し、使い捨てメールアドレスを利用して関連付けを困難にしています。
チームは、パッケージがnpmレジストリ上で無害に見えるよう、「Hello World」スクリプトなどの無害なプレースホルダーコードを含めて本来の機能を偽装していたことを発見しました。インストール時にのみ動的に本物のペイロードを取得・実行し、静的なセキュリティチェックを完全に回避します。
インフラとペイロードを分析した後、Koiは攻撃者のインフラが「驚くほどずさん」だったとしつつも、「巧妙な」手法を考案しており、他者にも再利用される可能性があると述べました。このキャンペーンは、悪意のあるアクターがパブリックレジストリの信頼をいかに簡単に悪用できるかを示し、既存のソフトウェアサプライチェーン防御の新たな死角を浮き彫りにしています。
「PhantomRavenは、洗練された攻撃者が従来のセキュリティツールの死角を突く手口をいかに巧妙に進化させているかを示しています」とKoiの研究者は述べています。リモート動的依存関係は静的解析では見えません。AIの幻覚がもっともらしいパッケージ名を生み出し、開発者が信用してしまいます。そしてライフサイクルスクリプトはユーザーの操作なしに自動実行されます。
「これらは理論上の脆弱性ではなく、まさに今、何千人もの開発者に影響を与えている実際の悪用手法です。」
PhantomRavenは、本当の危険が常にコード自体にあるとは限らず、インストール時に密かに取得されるものにあることを示しています。®
翻訳元: https://go.theregister.com/feed/www.theregister.com/2025/10/30/phantomraven_npm_malware/