TerminalFixキャンペーン:永続的アクセスのためのリバーストンネルを構築
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
TerminalFixキャンペーンは、偽のCloudflare CAPTCHAオーバーレイを使用してユーザーを社会工学的に操り、悪意のあるPowerShellコマンドを実行させるClickFixの変種です。この攻撃チェーンは、DLLサイドローディング、PNG画像からのステガノグラフィ的なペイロード抽出、そして広範なActive Directory偵察を組み合わせています。最終的に、このキャンペーンは攻撃者に持続的なネットワークレベルのプロキシアクセスを与えるカスタムPythonベースのリバーストンネルインプラントを展開します。
調査
Microsoft Threat Intelligenceは、正当な署名済み LockScreenContentServer.exe バイナリを悪用したマルチステージ攻撃チェーンを分析しました。調査により、PNGピクセル内に隠された悪意のあるペイロードの隠蔽方法と、PythonランタイムがWebSocketベースのリバーストンネルを確立する方法が明らかになりました。研究者たちはまた、コマンド・アンド・コントロールインフラストラクチャと内部ネットワークをマップするために使用される偵察技術を特定しました。
緩和策
組織はAppLockerまたはグループポリシーを通じてPowerShellの実行を制限し、 LockScreenContentServer.exe 異常または非標準の場所から実行されることを監視するべきです。攻撃面削減(ASR)ルールは難読化されたスクリプトや認可されていない実行可能ファイルの起動をブロックするのに役立ちます。偽のCAPTCHAプロンプトを認識することを目的としたユーザーの意識向上トレーニングも重要な予防手段です。
対応策
TerminalFix活動が検出された場合、影響を受けたデバイスは潜在的なネットワークピボットポイントとして扱われ、横方向移動のために調査されるべきです。特に侵害されたシステムからアクセス可能なドメイン管理者アカウントのために、資格情報の回転を優先するべきです。セキュリティチームはまた、認可されていないPythonランタイムおよび疑わしい外向きWebSocket接続のためのフォレンジック分析を行うべきです。
攻撃フロー
この部分はまだ更新中です。
検出
可能な持続性のポイント [ASEPs – Software/NTUSER Hive] (via registry_event)
コマンドラインにおける可能なClickFix攻撃パターン (via cmdline)
疑わしいフォルダからのPython実行 (via cmdline)
Powershellのコマンドラインからの疑わしい.NETクラス/メソッド呼び出し (via process_creation)
可能なシステム列挙 (via cmdline)
可能なリモートシステムの発見または接続チェック (via cmdline)
疑わしいドメイン信頼の発見 (via cmdline)
ファイルを隠すためのAttrib実行 (via cmdline)
可能なPythonインタープリタの直接ダウンロード (via cmdline)
PowerShellを使用して疑わしいディレクトリに抽出されたアーカイブ (via powershell)
検出するためのIOCs (HashSha256): TerminalFixキャンペーンはマルチステージの侵入を通じてリバーストンネルを展開する
gitnow.devへの外向きTLS WebSocketトンネル [Windowsネットワーク接続]
TerminalFixリバーストンネルとDLLサイドローディング検出 [Windowsプロセス作成]
TerminalFixキャンペーンにおけるDLLサイドローディングとステガノグラフィ的ペイロード抽出 [Windowsイメージロード]
TerminalFixキャンペーンPowerShell実行とコマンドループ [Windows PowerShell]
シミュレーション実行
前提条件: テレメトリー & ベースライン事前チェックが成功していること。
根拠: このセクションでは、検出ルールをトリガーするために設計された敵対者技術 (TTP) の正確な実行を詳述しています。コマンドと記述は、特定されたTTPを直接反映し、検出ロジックが期待する正確なテレメトリーを生成することを目的としています。抽象的または無関係な例は誤診につながります。
-
攻撃の説明 & コマンド: 敵対者は持続的なリバーストンネルを確立しようとしています。システムプロセスと溶け込むために、最初に見た目が正当なバイナリをドロップし、
LockScreenContentServer.exeディレクトリに入れます。その後、DLLサイドローディングを利用して悪意のあるコードを実行します。これに続いて、Pythonベースのトンネルを開始し、pythonw.exe(コンソールウィンドウが見えないようにするため) を使用し、client.pyというスクリプトを実行します。このシーケンスは、WebSocketトンネリングを介して標準のファイアウォール制限を回避するネットワークレベルのバックドアを作成するように設計されています。 -
回帰テストスクリプト:
# シミュレーションスクリプト: TerminalFixリバーストンネルエミュレーション # 1. 環境設定 $targetDir = "C:UsersPublicDownloadsSystemFiles" New-Item -Path $targetDir -ItemType Directory -Force # 2. ダミーの 'LockScreenContentServer.exe' の作成 (サイドロードされたバイナリのシミュレーション) # 実際の攻撃では、これは実際のPEファイルになります。 $dummyExe = Join-Path $targetDir "LockScreenContentServer.exe" New-Item -Path $dummyExe -ItemType File -Force # 3. ダミーのPythonスクリプト 'client.py' の作成 $pythonScript = Join-Path $targetDir "client.py" "print('トンネルを確立中...')" | Out-File -FilePath $pythonScript -Encoding ascii # 4. '悪意のある' プロセスを実行して検出ロジックをトリガー # トリガーパートA: LockScreenContentServer.exe Start-Process -FilePath $dummyExe -WindowStyle Hidden # トリガーパートB: コマンドラインのclient.pyでpythonw.exeを使用 # 注: ルールで期待されるように、pythonw.exeのフルパスを使用 $pythonwPath = "C:WindowsSystem32pythonw.exe" # pythonwがSystem32にない場合、検索します if (-not (Test-Path $pythonwPath)) { $pythonwPath = (Get-Command pythonw.exe).Source } Start-Process -FilePath $pythonwPath -ArgumentList $pythonScript -WindowStyle Hidden -
クリーンアップコマンド:
# クリーンアップスクリプト $targetDir = "C:UsersPublicDownloadsSystemFiles" if (Test-Path $targetDir) { Remove-Item -Path $targetDir -Recurse -Force }