Hugging Face から GO バックドアを展開:Marimo の脆弱性 CVE-2026-39987 を武器化

Attackers Weaponize CVE-2026-39987 to Spread Blockchain-Based Backdoor Via Hugging Face

2026/04/17 CyberSecurityNews — Marimo Python ノートブック・プラットフォームの深刻な脆弱性が、現在進行形の攻撃で積極的に悪用され、Blockchain ベースのバックドアが開発者のシステムに展開されている。この脆弱性 CVE-2026-39987 により認証不要のリモートコード実行が可能になるため、攻撃者にとって極めて魅力的な侵入ポイントが生じる。この脆弱性を悪用する攻撃者は、偽の Hugging Face Space を通じて NKAbuse マルウェアの新たなバリアントをインストールしている。

この脆弱性に関するアドバイザリ GHSA-2679-6mx9-h9xc が、2026年04月08日に GitHub 上で公開された。そして、公開からわずか 9時間41分後に、実環境での最初の悪用が確認された。

2026年04月11日から 04月14日にかけて、10 カ国にまたがる 11 個の IP アドレスから合計で 662 件のエクスプロイト・イベントが発信され、公開されている Marimo インスタンスに対して実行された。

初期のスキャン活動は急速にエスカレートし、AI 開発者ワークステーションを標的とする、複数の攻撃者による大規模なキャンペーンへと発展した。

Sysdig TRT の研究者たちが観測した攻撃は、4 つの明確なポスト・エクスプロイトのパターンに分類された。具体的には、認証情報の収集/リバースシェルの試行/DNS ベースのデータ流出/未確認の NKAbuse バリアントの展開である。

この迅速な武器化が示すのは、短期間において複数の攻撃者がそれぞれ、同一の脆弱性を標的としていたことである。

発見された中で最も深刻なケースは、正規の VS Code ツールを模倣する Hugging Face Space “vsccode-modetx” タイポスクワッティングにより、Go で書かれたバックドア “kagent” を配布する活動である。

この攻撃者は、Marimo エンドポイントに対する単純な curl コマンドによりシェルドロッパーを取得/実行し、侵害したシステムに “kagent” バイナリをダウンロードした。

その時点で、Hugging Face ドメインの 16 のレピュテーション・ソースにおいて悪性フラグは立たず、このペイロードによる標準的なセキュリティ・フィルタの回避が成立した。

この攻撃の影響は、単体のノートブックに留まらない。Marimo を侵害した攻撃者は、環境変数から取得した認証情報を用いて PostgreSQL データベースや Redis インスタンスへの横展開を実行した。

ある攻撃者が抽出したものには、AWS アクセスキー/データベース接続文字列/OpenAI API トークンなどがあり、単一の Marimo インスタンスがクラウド・インフラ全体への足掛かりとなることを示している。

NKAbuse バリアントと永続化手法

デバッグ情報などが取り除かれた “kagent” バイナリは、4.3 MB というサイズに UPX 圧縮された Go ELF ファイルであり、 15.5 MB のサイズに展開された後に、NKN blockchain ネットワークを介して Command-and-Control (C2) サーバと通信する。

NKN プロトコルは、分散リレーノードを使用するため、単一の IP アドレスやドメインを遮断できない。そのため、通常の Blockchain トラフィックに紛れる C2 通信を、従来ツールで検知することは困難である。

ドロッパー・スクリプトにより実行されるのは、3 つのステップを介した永続化である。

  • “~/.config/systemd/user/kagent.service” に systemd ユーザー・サービスを作成
  • crontab の @reboot エントリを追加
  • macOS の “~/Library/LaunchAgents/com.kagent.plist” をインストール

すべての出力は “~/.kagent/install.log” にリダイレクトされ、プロセス監視から活動を隠蔽する。完全に除去するためには、これら 3 箇所の確認が必要となる。

2023年12月ころの NKAbuse と 2026年版を比較すると、AI 開発ツールの標的/新規脆弱性の悪用/配布経路としての Hugging Face の悪用/”kagent” という Kubernetes エージェントの偽装という点で変化している。従来版は、6 年前の Apache Struts の脆弱性を用いて、Linux デスクトップや IoT デバイスを標的としていた。

Sysdig TRT は、防御策として以下を推奨している。

  • Marimo のバージョン 0.23.0 以降へと更新する。
  • Marimo を実行したシステムにおいて、”~/.kagent/” ディレクトリ/kagent.service/実行中の kagent プロセスを調査する。
  • 既知の配布 URL である “vsccode-modetx.hf.space” をプロキシ/DNS レベルで遮断する。
  • 露出した Marimo インスタンスの全認証情報をローテーションする。特に、 DATABASE_URL/AWS キー/API トークンを優先する。
  • 感染ホストからの NKN blockchain 通信パターンを監視し、C2 活動を検知する。
  • Hugging Face Spaces および AI/ML 依存関係を監査し、信頼済みの発行元だけに制限する。
  • シグネチャベースでは検知できないため、ランタイムの振る舞い検知を導入する。