偽の注文書を通じて配信されたRemcos RAT
Detection stack
- AIDR
- Alert
- ETL
- Query
要約
注文書をテーマにしたフィッシングメールが、二重拡張子を持つアーカイブを配信します。このアーカイブからは悪意のあるVBSローダーが抽出されます。そのローダーは隠しPowerShellプロセスを起動し、エンコードされたペイロードを含む偽のPNGファイルを取得します。このペイロードはデオブスクートされ、.NETポータブル実行可能ファイルとして再構築され、メモリ内に直接ロードされ、最終的にRemcosリモートアクセス型トロイの木馬が展開されます。このキャンペーンは、馴染みのあるメールベースの攻撃手法を用いたファイルレス実行チェーンを強調しています。
調査
分析は、最初のフィッシングメールから最終的なRemcos RATの展開に至るまでの感染シーケンス全体を解析しました。調査員は、VBSスクリプト名、PowerShellの環境変数の使用、および偽のPNGファイルをダウンロードするためのURLを含む重要なアーティファクトを特定しました。再構築された.NETアセンブリはメモリ内にロードされ、Remcos特有のレジストリエントリとミューテックスアーティファクトが最終的なペイロードを確認するのに役立ちました。研究者はまた、このキャンペーンに関連付けられたコマンド・アンド・コントロールドメインを含む関連するネットワークインジケータも捉えました。
軽減策
組織は、誤解を招く二重拡張子を使用するアーカイブファイルをブロックし、添付ファイルのスキャンを強化する必要があります。PowerShellの実行ポリシーを強制する必要があり、 wscript.exe の使用は可能な限り厳しく制限する必要があります。また、防御者は不審なレジストリキーを HKCUSOFTWARE の下で監視し、Remcosの活動に関連するTLS JA3フィンガープリントを追跡する必要があります。メールセキュリティゲートウェイは、調達および財務関連ワークフローを狙ったフィッシングルアーの検出能力を向上させるために定期的に更新する必要があります。
対応策
この活動が検出された場合、直ちに影響を受けたエンドポイントを隔離し、疑わしい PowerShell or wscript.exe プロセスを終了してください。クリーンアップの前に、メモリダンプと関連するレジストリアーティファクトを収集して法医学分析を行います。Remcosのペイロードと関連する永続化エントリを削除し、露出した可能性のある任意の資格情報をリセットします。また、同様のインジケーターを示すシステムを特定するために、環境全体での包括的な脅威ハントを実施するべきです。
攻撃フロー
検出
LOLBAS WScript / CScript (via process_creation)
表示
Powershellから.NETの不審なメソッドを呼び出す (via powershell)
表示
不審なPowershell文字列 (via powershell)
表示
動的DNSサービスが接続された可能性 (via dns)
表示
IOCs (HashSha256) 検出: ある不正注文書からRemcos RATへの流れ
表示
IOCs (SourceIP) 検出: ある不正注文書からRemcos RATへの流れ
表示
IOCs (DestinationIP) 検出: ある不正注文書からRemcos RATへの流れ
表示
Remcos RAT のコマンド&コントロールドメインと悪意あるペイロードURLアクセス [Windows ネットワーク接続]
表示
VBSスクリプトの実行後にExecutionPolicy Bypass付きのPowerShellを検出 [Windows プロセス作成]
表示
シミュレーション実行
前提条件: テレメトリーとベースラインの事前チェックを通過する必要があります。
攻撃の概要とコマンド
攻撃者は、添付 悪意ある.vbsを含むフィッシングメールを送信します。ユーザーがファイルをダブルクリックすると、 wscript.exeが呼び出されます。VBSスクリプトは次に、 ExecutionPolicy Bypass を使用してリモートPowerShellペイロードをダウンロードし、Remcos RATをインストールします。具体的なコマンドラインは次の通りです:
powershell.exe -ExecutionPolicy Bypass -NoLogo -WindowStyle Hidden -EncodedCommand
回帰テストスクリプト
#--------------------------------------------------------------------
# シミュレーションスクリプト: VBS → PowerShell ExecutionPolicy Bypass
#--------------------------------------------------------------------
# 1. 小さなPowerShellペイロードを作成する(例: マーカーファイルを書き込み)
$payload = 'Set-Content -Path "$env:Temppwned.txt" -Value "Compromised"'
$encoded = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($payload))
# 2. PowerShellコマンドを実行する悪意あるVBSファイルを作成する
$vbsContent = @"
Set objShell = CreateObject("WScript.Shell")
objShell.Run "powershell.exe -ExecutionPolicy Bypass -NoLogo -WindowStyle Hidden -EncodedCommand $encoded", 0, False
"@
$vbsPath = "$env:Tempmalicious.vbs"
Set-Content -Path $vbsPath -Value $vbsContent -Encoding ASCII
# 3. VBSスクリプトを実行する(ユーザーがダブルクリックをシミュレート)
Start-Process -FilePath "wscript.exe" -ArgumentList "`"$vbsPath`"" -WindowStyle Hidden
# オプション: ペイロードが実行されるのを数秒待つ
Start-Sleep -Seconds 5
Write-Host "シミュレーション完了。アーティファクトを確認するには$env:Temppwned.txtをチェックしてください。"
#--------------------------------------------------------------------
クリーンアップコマンド
# シミュレーション中に作成されたアーティファクトを削除
Remove-Item -Path "$env:Tempmalicious.vbs" -ErrorAction SilentlyContinue
Remove-Item -Path "$env:Temppwned.txt" -ErrorAction SilentlyContinue
# スクリプトによって開始された残留PowerShellプロセスを停止(必要に応じて)
Get-Process -Name "powershell" -ErrorAction SilentlyContinue | Stop-Process -Force