本文へスキップ
hdknr blog
戻る

ForceMemo: GitHub アカウントを乗っ取り Python リポジトリにバックドアを仕込む新型攻撃

2026年3月上旬から、GitHub アカウントを侵害して Python リポジトリに悪意あるコードを注入する「ForceMemo」と呼ばれる大規模攻撃キャンペーンが確認されています。force-push によるコミット履歴の書き換えと、Solana ブロックチェーンを利用した C2(Command and Control: 攻撃者がマルウェアに指令を送る仕組み)通信という巧妙な手法が特徴です。

攻撃の概要

ForceMemo は、以下の流れで Python プロジェクトを侵害します:

  1. GitHub アカウントの侵害 — GlassWorm と呼ばれる情報窃取マルウェアが VS Code / Cursor 拡張機能から GitHub トークンを抽出
  2. コードの改ざん — 侵害したアカウントで setup.pymain.pyapp.pymanage.py 等に難読化されたマルウェアを注入
  3. 痕跡の隠蔽 — force-push でコミット履歴を書き換え、タイムスタンプを維持することで改ざんを検知困難に
  4. C2 通信 — Solana ブロックチェーンのメモ機能を使ったコマンド&コントロール通信

GlassWorm による初期侵入

攻撃の起点となる GlassWorm は情報窃取型マルウェアで、VS Code および Cursor の拡張機能を経由して感染します。窃取対象となる GitHub トークンの格納先は多岐にわたります:

窃取されたトークンを使って正規のアカウントとしてリポジトリにアクセスし、コードを改ざんします。

force-push による履歴改ざん

通常のコミットであれば git log で変更履歴を追跡できますが、ForceMemo は force-push を使ってコミット履歴自体を書き換えます。さらにタイムスタンプも維持するため、リポジトリのメンテナーやユーザーが改ざんに気づきにくい構造になっています。

Solana ブロックチェーンを利用した C2

従来のマルウェアは HTTP/HTTPS ベースの C2 サーバーと通信しますが、ForceMemo は Solana ブロックチェーンのメモ(Memo)機能——トランザクションに任意のテキストデータを添付できる機能——を C2 通信に利用します。ブロックチェーン上のトランザクションデータを介して指令を受け取るため、従来のネットワーク監視では検知が困難です。

影響範囲

対策

リポジトリ管理者向け

開発者向け

組織向け

まとめ

ForceMemo は、GlassWorm による GitHub トークン窃取を起点に、force-push での履歴改ざんと Solana ブロックチェーン C2 という検知困難な手法を組み合わせたサプライチェーン攻撃です。Python リポジトリの管理者・利用者は、ブランチ保護ルールの設定、署名付きコミットの強制、拡張機能の見直しなど、早急に防御策を講じることを推奨します。

参考リンク



前の記事
OpenClaw 入門: チャットボットを超える AI エージェントランタイムの全体像
次の記事
DuckDB・Apache Arrow・Parquetの関係を整理する:列指向エコシステムの全体像