OWN NEWS GATHER
← 戻る
The Hacker News

MemTensorの公式npm・PyPIパッケージが侵害、認証情報を窃取する「sckit」の混入が判明

要点

  • AI関連ライブラリを提供するMemTensorの正規パッケージが侵害され、Go言語製マルウェア「sckit」が仕込まれていたことが判明した。

  • 影響が確認されたのはnpmの「@memtensor/memos-cloud-openclaw-plugin」とPyPIの「MemoryOS」の特定バージョンである。

  • マルウェアはWindows、Linux、macOSに対応し、クラウド認証情報や各種APIキー、さらにはユーザーのプロンプト内容まで窃取する。

  • 攻撃者はGitHub Actionsのワークフローから公開用トークンを奪取したとされ、マルウェア自体にも自己拡散(ワーム)機能が備わっている。

  • セキュリティ各社は、安全なバージョンへの固定や漏洩したシークレットの再発行、不審な通信先ドメインの遮断を呼びかけている。

  • AI向けメモリ統合ライブラリを開発するMemTensorの正規パッケージが正体不明の攻撃者によって侵害され、複数のプラットフォームを標的とするマルウェア「sckit」が配信されていたことが明らかになった。Aikido、SafeDep、Socket、StepSecurityなどのセキュリティ企業が2026年9月23日付の報告で明らかにしたもので、JavaScript向けパッケージ管理システムであるnpmと、Pythonの公式パッケージリポジトリであるPyPIの双方に悪意あるバージョンが公開されていたという。

侵害が確認されたパッケージと対象バージョン

セキュリティ各社の報告によると、今回のサプライチェーン攻撃で悪意あるコードの混入が確認されたのは以下のパッケージおよびバージョンである。

  • npmパッケージ:@memtensor/memos-cloud-openclaw-plugin(バージョン 0.1.21、0.1.23、0.1.25。なお、バージョン 0.1.22および0.1.24はクリーンな状態であることが確認されている)
  • PyPIパッケージ:MemoryOS(バージョン 2.0.34。本パッケージは現在、PyPI上で隔離措置が取られている)

マルウェアの起動メカニズムとプロンプトの傍受

混入された「sckit」は、Windows、Linux、macOS向けにそれぞれ設計されたクロスプラットフォーム対応のGo言語製インプラント(侵入先で活動する不正プログラム)である。

npmパッケージ版では、正規のAIメモリ統合機能の内部にGo言語のペイロードが隠蔽されていた。StepSecurityの説明によると、エージェントのゲートウェイが起動した際や、プラグインがメモリ想起(過去の会話や情報を参照する処理)イベントを処理するタイミングでペイロードが実行される仕組みになっていたという。このランチャーは、ホストプロセスの環境変数だけでなく、メモリ想起時にユーザーが入力したプロンプトのテキストまでも直接悪意ある実行ファイルへと渡すよう構成されていた。

対象となったプラグインは、自律型AIエージェントの実行基盤である「OpenClaw」をメモリサービスへ接続する役割を持ち、プロンプト処理前の関連メモリ読み出しや実行後のメモリ追加を行っていたほか、「Clawdbot」や「Moltbot」といったランタイム向けにも連携機能を提供していた。そのため、ユーザー入力を日常的に扱い、高度なアクセス権限を保持しやすい環境にマルウェアが直接入り込む形となっていた。

一方、PyPIパッケージ版においては、アプリケーション内で memos モジュールがインポートされた瞬間に、静的リンクされたGo言語バイナリが直ちに起動する構造になっていたとされる。

広範な認証情報の窃取と外部送信

攻撃の最終的な目的は、感染した環境から広範な機密データを収集し、外部サーバー「skyleen[.]fr」へ送信することにある。

セキュリティ企業Socketの分析によれば、開発者の端末やサーバー内から以下のような多岐にわたる機密情報が標的となっていた。

  • 認証情報ファイル:.npmrc、.vault-token、SSH秘密鍵(id_ecdsa)、credentials.db、access_tokens.json、stored_tokens など
  • 環境変数:NPM_TOKEN や PYPI_API_TOKEN をはじめとする、トークン、パスワード、APIキー、秘密鍵、セッションCookie、データベースやメッセージブローカーへの接続文字列
  • 各種クラウド・Webサービスのキー:AWSアクセスキー、GitHubおよびGitLabのトークン、npmおよびPyPIのトークン、Hugging Face、HashiCorp Vault、Slack、Stripe、SendGridのAPIキー、各種JWT(JSON Web Token)

開発者環境やCI(継続的インテグレーション)環境では、クラウド設定やリポジトリ操作、パッケージ公開のためのトークンが集約されていることが多く、これらが一括して抜き取られるリスクがあった。

CIパイプラインの悪用とワーム型の自己拡散機能

SafeDepの調査によると、攻撃者はMemTensor自身のGitHub Actionsによるリリースパイプラインを悪用して公開用トークンを入手したという。ワークフローに対して細工したコミットをプッシュすることで、パイプラインからnpmやPyPIの公開トークンを引き渡させていたと説明されている。

さらにインプラントを詳細に解析した結果、「sckit」には自己増殖を行うワームのような機能が備わっていることが判明した。開発者のマシンやCIジョブから認証情報を収集した上で、C2サーバー(指令サーバー)から暗号署名されたタスクを受信し、npmパッケージやPythonパッケージ、さらにはGitHub Actionsのワークフロー定義に自身を組み込むためのテンプレートを保持していた。これにより、奪取したトークンを使ってGitHubやパッケージリポジトリへ直接不正なパッケージを公開し、感染を横展開する能力を持っていたという。

なお、現時点でMemTensor以外のパッケージに同様の被害が及んでいるかどうかは明らかになっていない。

推奨される対処方法

悪意あるバージョンのnpmパッケージは依然としてダウンロード可能な状態にあることから、関係各社は以下の対策を講じるよう求めている。

  • npmパッケージはバージョン 0.1.20、PyPIパッケージは 2.0.33 などの安全が確認されているベースラインバージョンへ固定する
  • 侵害された環境に存在していた各種シークレットやAPIキー、トークンをすべて失効させ、再発行(ローテーション)を行う
  • 稼働している不審なsckitプロセスを停止(kill)する
  • 外部通信先であるドメイン「skyleen[.]fr」およびそのすべてのサブドメインへのアクセスを遮断する
元URL