概要
ForceMemoは、GitHubアカウントを乗っ取り、Pythonリポジトリにバックドアを設置するソフトウェア供給チェーン攻撃キャンペーンです。このキャンペーンでは、公式UIで正当なコミットのように見える強制プッシュを使用して、悪意のあるコードを注入します。
ForceMemoの特徴
ForceMemoは、GlassWormマルウェアによって盗まれた開発者資格情報を活用し、GitHubアカウントを乗っ取ります。その後、Solanaブロックチェーンを使用してコマンド&コントロール(C2)チャネルを確立します。
攻撃の手口
ForceMemoは以下の手順で攻撃を行います:
- GlassWormマルウェアによって盗まれたGitHubトークンを使用して、ターゲットのアカウントを乗っ取ります。
- ターゲットリポジトリの最新の正当なコミットを取得し、そのコミットに悪意のあるコードを追加します。
- 強制プッシュを使用して、修正されたコミットを元のブランチに戻します。これにより、GitHub UIでは何も異常が見つからないように装います。
被害状況
StepSecurityは、数百のGitHubアカウントとリポジトリがForceMemoによって乗っ取られ、バックドアが設置されていることを確認しています。特にPythonプロジェクト(DjangoアプリケーションやML研究リポジトリなど)がターゲットとなっています。
攻撃の検出
被害を確認するためには、GitHubコード検索で特定の変数名(lzcdrtfxyqiplpd)を使用して検索を行うことが推奨されています。
C2チャネルとマルウェアの詳細
ForceMemoは、SolanaブロックチェーンをC2チャネルとして使用し、特定のウォレット(BjVeAjPrSKFiingBn4vZvghsGj9KCE8AJVtbc9S8o8SC)から指示を受け取ります。マルウェアは高度にオブファスケートされており、ロシア語のコメントが含まれています。
対策
被害を防ぐためには:
- Pythonパッケージのインストール時に、最新の正当なコミットと一致していることを確認します。
- GitHubコード検索で特定の変数名を使用して定期的に監視を行います。
- CISエグレスモニタリングソリューションを導入し、異常なネットワーク活動を検出します。
