Facebook Google Plus Twitter LinkedIn YouTube RSS Menu Search Resource - BlogResource - WebinarResource - ReportResource - Eventicons_066 icons_067icons_068icons_069icons_070
8-minute read Apr 1 2026

北朝鮮の攻撃者「UNC1069」による Axios npm サプライチェーン攻撃に関するよくある質問

白い背景にカラフルな幾何学模様の光線が放射状に広がるブログのヘッダー画像。 中央上部には Tenable Research の特別調査活動のロゴが入る。 その下には、インターロッキング・デザインのゴールドの六角形のアイコンがある。 Axios npm サプライチェーン攻撃」と書かれた黒い文字の上に、「よくある質問」と書かれた金色の文字。

北朝鮮が支援する攻撃者が、広く利用されている axios の npm パッケージを侵害し、3 月 31 日の約 3 時間にわたり、クロスプラットフォーム対応のリモートアクセス型トロイの木馬を、数百万規模の開発者環境に配布しました。

キーポイント

  1. axios の npm パッケージは、毎週 1 億回以上ダウンロードされている広く利用されているパッケージですが、Google Threat Intelligence Group (GTIG) は、これが金銭的動機を持つ北朝鮮が支援する攻撃者 UNC1069 によるサプライチェーン攻撃によって侵害されたとしています。
     
  2. 悪意のあるバージョン 1.14.1 と 0.30.4 が、約 3 時間にわたって npm レジストリ上で公開され、macOS、Windows、Linux システムにバックドアを仕掛ける WAVESHAPER.V2 を配信していました。
     
  3. 悪意のあるバージョンはnpmから削除され、それらをインストールした開発者は、影響を受けたシステムを完全に侵害されたものとして扱い、すべての認証情報を更新し、クリーンなスナップショットから再構築することが推奨されます。
     

背景

Tenable のリサーチの特別調査活動 (RSO) チームは、axios npm パッケージに対するサプライチェーン攻撃に関するよくある質問 (FAQ) に答えるために、このブログをまとめました。

よくあるご質問

axios の npm パッケージで何が起きたのか?

2026年3月31日、攻撃者がaxios npmパッケージの悪意のあるバージョン1.14.1と0.30.4の2つをnpmレジストリに公開しました。 攻撃者は、このパッケージに関連するメンテナアカウントを侵害し、「plain-crypto-js」と呼ばれる悪意のある依存関係を注入し、クロスプラットフォームのリモートアクセス型トロイの木馬(RAT)の配信手段として機能させていました。悪意のあるバージョンは、特定され削除されるまで、約3時間にわたってnpmレジストリ上に存在していました。

最近のサプライチェーン攻撃によって、特権を持つ開発者の資格情報の闇市場がどのように形成されているかをご覧ください。 

axios の npm パッケージはどの程度広く利用されているのか?

Axios は最も広く使われている JavaScript ライブラリのひとつで、HTTP リクエストを簡素化するために利用されます。1.xブランチの週間ダウンロード数は通常1億を超え、0.xブランチは8300万を超えます。

axios のメンテナーアカウントはどのように侵害されたのか?

StepSecurityとGoogle Threat Intelligence Group (GTIG)の分析によると、攻撃者は@jasonsaaymanのnpmアカウントを侵害し、関連するメールアドレスを攻撃者がコントローラーを持つアドレス([email protected])に変更しました。

攻撃者は、正規のリリースに使用されるGitHub Actions OIDCワークフローをバイパスして、悪意のあるバージョンを公開するために、長期的に使用される古典的なnpmアクセストークンを使用していました。 正規のaxiosリリースには、GitHub Actionsへの信頼されたパブリッシャーのバインディングと、それに対応するGitHubコミットとタグが表示されます。 悪意のあるバージョンにはこれがまったくなく、リリースが無許可であることを示す最も明確なシグナルのひとつとなっています。

悪意のある依存関係とは何か?

攻撃者は、最初の悪意のあるaxiosバージョンを公開する約22分前に、[email protected]という悪意のあるパッケージをnpmに公開しました。 無害なおとりバージョン (4.2.0) は、その約 18 時間前に公開されています。axiosパッケージ自体の唯一の変更は、package.jsonに依存関係としてplain-crypto-jsを追加したことでした。 このパッケージがaxiosのソースコードにインポートされたり、参照されたりすることはありません。

侵害された axios バージョンが npm でインストールされると、plain-crypto-js パッケージの postinstall フックによって、setup.js という難読化された JavaScript ファイルが実行されます。GTIG はこれを SILKBELL として識別しています。このドロッパーは、Base64 を逆順にしたものと XOR 暗号を組み合わせた 2 層のエンコーディング方式 (キー: "OrDeR_7077", 定数: 333) を使用し、コマンド・アンド・コントロール (C2) の URL および実行命令を隠蔽します。静的解析を回避するために、Node.js モジュール (fs、os、execSync) を動的に読み込みます。

プラットフォーム固有のペイロードをデプロイした後、ドロッパーはフォレンジック対策としての痕跡削除を実行します。すなわち、自身を削除し、悪意のあるpackage.jsonを削除し、クリーンなスタブファイル(package.md)をpackage.jsonにリネームし、感染後の検査で完全にクリーンなマニフェストを残します。

攻撃者はどのようなマルウェアを提供するのか?

GTIGは、以前UNC1069に起因するとされたWAVESHAPERバックドアの更新版であるWAVESHAPER.V2として、プラットフォーム固有のペイロードを追跡しています。 WAVESHAPER.V2には、macOS用(ネイティブC++バイナリ)、Windows用(PowerShell)、Linux用(Python)があります。

macOSでは、このドロッパーはMach-Oのバイナリを/Library/Caches/com.apple.act.mondにダウンロードし、アップルシステムのキャッシュファイルに偽装します。

Windows では、正規のPowerShell実行ファイルを%PROGRAMDATA%wt.exe(Windows Terminalに偽装)にコピーし、VBScriptランチャーを使用して、ダウンロードしたPowerShellスクリプトを隠し実行フラグとポリシーバイパスフラグで実行します。 Windowsでは、隠されたバッチファイル (%PROGRAMDATA%\system.bat) と、「MicrosoftUpdate」という名前のレジストリの Run キー (HKCU:\Software\Microsoft\Windows\CurrentVersion\Run) を用いて永続化が確立されます。

Linuxでは、Python RATが/tmp/ld.pyにダウンロードされ、nohup経由で起動されます。

プラットフォームに関係なく、WAVESHAPER.V2は、Base64エンコードされたJSONとWindows XPのInternet Explorer 8を偽装するハードコードされたUser-Agent文字列を使用して、60秒ごとにC2サーバーにビーコンを送信します。 バックドアは、以下のようなコマンドをサポートしています。

  • kill (プロセスを終了する)
  • rundir (ファイルシステムの列挙)
  • runscript (AppleScript の実行)
  • peinject (バイナリインジェクション)

この攻撃者の背後には誰がいるのか?

GTIG は、この活動 を UNC1069 によるものと特定しています。UNC1069 は、少なくとも 2018 年から活動している、金銭的動機を持つ北朝鮮系の攻撃者です。このグループは、これまで ClearSky (2020) および GTIG (2025) により、それぞれ CryptoCore および MASAN として追跡されてきました。この判断は、WAVESHAPER.V2 の使用 (これは、以前 UNC1069 に帰属するとされた WAVESHAPER バックドアの直接的な進化版です)、インフラの重複 (過去に UNC1069 が使用していた特定の AstrillVPN ノードからの接続)、および同一 ASN 上で歴史的に UNC1069 の活動と関連付けられている周辺インフラに基づいています。

侵害はどのくらい早く検出されたのか?

Socket.devの自動マルウェアスキャナーは、最初の悪意のあるバージョンが公開されてから約6分以内に侵害を検出しました。 悪質なaxiosの両バージョンは、公開から約3時間後にnpmレジストリから削除されました。

時間(UTC)Event
3月30日 05:57[email protected] (無害なおとり) 公開
3月30日 23:59[email protected](悪意のあるバージョン) が、postinstall フック付きで公開
3月31日 00:05Socket の自動スキャナーが、約 6 分以内に侵害を検出
3月31日 00:21[email protected] 公開
3月31日 01:00[email protected] 公開
3月31日 01:50Elastic Security Labs、GitHubセキュリティアドバイザリをAxiosリポジトリに提出
3月31日、~03:15npm が悪意のある両方の axios バージョンの公開を停止
3月31日 03:25npm が plain-crypto-js の公開をセキュリティ上の理由で保留
3月31日 04:26安全なスタブパッケージにより、悪意のあるパッケージが置き換えられた

潜在的な影響はどの程度広がっているのか?

両ブランチで毎週 1 億件以上のダウンロードがあることから、約 3 時間にわたる侵害による影響は広範に及びます。StepSecurity は、同社の Harden-Runner ツールが 12,000 以上のプロジェクトで異常な C2 通信を検出したと報告しています。さらに、数百の npm パッケージが axios に依存しているため、影響は下流にも拡大しています。

GTIGは、今回の攻撃やその他の最近のサプライチェーン攻撃の結果、「何十万もの盗まれた秘密が出回る可能性がある」とし、さらなるソフトウェアサプライチェーンの侵害、SaaS環境の侵害、ランサムウェアの発生、暗号通貨の盗難を可能にする可能性があると警告しています。

侵害の指標 (IoC) はあるか?

はい。GTIGは、Socket.devに加え、登録ユーザー向けにGTI Collectionを無償で提供しており、IoCの包括的なセットをブログ記事で公開しています。 利用可能なIoCの種類には、ネットワークインジケータ(C2ドメインとIP)、ファイルハッシュ(すべてのプラットフォーム固有のペイロードとドロッパーのSHA256)、プラットフォーム別のファイルシステムアーティファクト、レトロスペクティブハンティングのためのYARAルール、Google Security Operations検出ルールが含まれます。

ブロックすべき主なネットワーク指標 (IoC) は、sfrclak[.]com および 142.11.206.73 (ポート 8000) です。

最近のサプライチェーン攻撃との関連は?

この攻撃は、北朝鮮が支援する攻撃者によるものとされる、最近のオープンソース・サプライチェーン侵害の一つです。GTIG は、UNC6780 (TeamPCP としても知られる) が最近、Trivy、Checkmarx、LiteLLMなどのプロジェクトに関連するGitHub Actions や PyPI パッケージを改ざんし、SANDCLOCK クレデンシャルスティーラーを展開して、その後の恐喝活動を容易にしたと指摘しています。UNC1069 と UNC6780 は別個の攻撃者として追跡されていますが、オープンソースのパッケージエコシステムを標的とする北朝鮮系グループの動きは、より広範な傾向を示しています。

どのような修正が可能か?

悪意のある axios バージョン(1.14.1 および 0.30.4)が npm レジストリから削除されました。 どちらかのバージョンをインストールした開発者や組織には、次のことをお勧めします。

  • 安全なバージョンにダウングレードする: [email protected]または[email protected]
  • 不正な依存関係を削除する: node_modules/plain-crypto-js/
  • sfrclak[.]comと142.11.206.73へのC2トラフィックをブロックする
  • 影響を受けたシステムを完全に侵害されたものとして扱う: すべてのシークレットとクレデンシャルを更新し、クリーンなスナップショットから再構築します。
  • CI/CDパイプラインの監査: 一時的なランナーにはシークレットローテーションが必要です。
  • ファイルのアーティファクトを検索する: /Library/Caches/com.apple.act.mond (macOS)、%PROGRAMDATA%wt.exe (Windows)、/tmp/ld.py (Linux)

長期的なハードニングのために、パッケージマネージャは、新しく公開されたバージョンの自動インストールを防ぐバージョンのクールダウンポリシーをサポートするようになりました。

パッケージ・マネージャーセッティング
npm (v11.10.0+).npmrcのmin-release-age=7d
pnpm (v10.16+)minimum-release-age=7d
Yarn (v4.10+)npmMinimalAgeGate: "7d"
Bun (v1.3+)minimumReleaseAge = 604800

Tenableはプロダクトカバレッジをリリースしているか?

はい、侵害された axios npm パッケージと悪意のある plain-crypto-js npm パッケージを検出する Tenable プラグインが利用可能です。

さらに、Tenableアタックサーフェス管理を利用することで、JavaScript Libraries contains Axiosというフィルタを利用して、Axiosライブラリを実行しているパブリックフェーシング資産を特定することができます。

"JavaScript Libraries contains Axios "でフィルタリングされたクエリを示すTenable Attack Surface Management Exploreインターフェイスのスクリーンショット。


 

詳細情報

Tenable Connect 上で Tenable のリサーチの特別調査活動 (RSO) チームに参加し、Threat Roundtable グループで最新のサイバー脅威について議論にご参加ください。

DX 時代のアタックサーフェスのためのサイバーエクスポージャー管理プラットフォーム、Tenable One についてはこちらをご覧ください。

著者について

もっと詳しく