Gentlemenランサムウェアエミュレーションの説明
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
ジェントルメンランサムウェアグループは2025年7月以来活動しており、ファイルの暗号化とデータの盗難やリークサイトでの恐喝を組み合わせた二重恐喝モデルを採用しています。このマルウェアはGoで書かれており、Windows、Linux、ESXi環境をサポートし、暗号化プロセス中にハードコードされたパスワード引数を使用します。運用者は広範な調査、グループポリシーオブジェクトの悪用、WinSCPのような合法的なツールを利用して、暗号化された形でデータを移動および流出させます。
調査
AttackIQは、複数のセキュリティベンダーによって説明された戦術、技術、および手順を再現するエミュレーションを発表しました。これには、最初のアクセス、持続性、防御回避、発見、横移動、影響が含まれます。エミュレーションには、スケジュールされたタスクの作成、レジストリRunキー、悪意のあるサービス、ファイアウォールルールの変更、ボリュームシャドウコピーの削除などの動作が含まれています。
緩和策
防御者は、疑わしいPowerShellアクティビティ、予期しないスケジュールタスクの作成、ヌルセッションおよびMicrosoft Defenderの除外に関連するレジストリの変更、SMBv1を有効にしようとする試みを監視する必要があります。ネットワークのセグメンテーションと最小特権アクセスコントロールは、グループが共有リソースを通じて横方向への移動を制限するのに役立ちます。
対応
ジェントルメン関連の活動が検出された場合は、すぐに影響を受けたシステムを隔離し、揮発性の証拠を収集し、ランサムウェアのサンプルと関連するレジストリアーティファクトを保持し、可能であればバックアップからシャドウコピーとイベントログを回復するためのインシデントレスポンス手続きを開始します。また、資格情報の盗難や環境内の横移動を特定するためのフォレンジック調査を完全に実施する必要があります。
アタックフロー
検出
可能な永続性ポイント [ASEPs – Software/NTUSER Hive] (レジストリエベント経由)
Proof of Value
可能性のあるリモートデスクトップサービスシャドウイング (レジストリエベント経由)
Proof of Value
可能なシステム列挙 (cmdline経由)
Proof of Value
可能なネットワーク共有の発見 (cmdline経由)
Proof of Value
可能な管理者アカウントまたはグループの列挙 (cmdline経由)
Proof of Value
VSSADMINの疑わしい活動 (cmdline経由)
Proof of Value
PowerShell、CMDまたはWMIによりシャドウコピーを作成または削除する (cmdline経由)
Proof of Value
Windows Defenderプレファレンスの疑わしい変更 (powershell経由)
Proof of Value
可能な回避チェック (powershell経由)
Proof of Value
検出すべきIOC (HashSha256): ジェントルメンランサムウェアのエミュレーション
Proof of Value
ジェントルメンランサムウェアの活動の検出 [Windows PowerShell]
Proof of Value
シミュレーション実行
前提条件: テレメトリ & ベースライン事前チェックが合格している必要があります。
理由: このセクションでは、攻撃者の技術(TTP)の正確な実行を詳細に説明し、検出ルールをトリガーするために設計されたものです。コマンドと説明は、識別されたTTPを直接反映し、検出ロジックが期待する正確なテレメトリを生成することを目的とします。
攻撃のナラティブとコマンド
ドメインに参加しているWindowsサーバーで低権限実行を得た攻撃者は、ランサムウェア展開の準備のために環境を整えたいと考えています。彼らはネイティブのPowerShellコマンドレットを使用して:
- リアルタイム保護を無効にする (
Set-MpPreference). - ファイアウォールポートを開く (
Enable-NetFirewallRule). - 追加のWindows機能を有効にする (
Import-Module ServerManager+Enable-WindowsOptionalFeature). - ドメイン情報を抽出する (
Get-ADDomain,Get-ADComputer). - システム詳細を列挙する (
Get-WmiObject Win32_ComputerSystem,Get-PSDrive). - マルウェアのペイロードをリモート共有にコピーする (
Copy-Item).
各ステップは、Sigmaルールが監視する文字列の1つを含み、必要なテレメトリを生成するように、個別のPowerShellプロセスで実行されます。 それぞれ プロセスには、Sigmaルールが対象としている1つの文字列が含まれており、したがって必要なテレメトリが生成されます。
回帰テストスクリプト
# -------------------------------------------------
# シミュレーションスクリプト - ジェントルメンランサムウェア検出ルールをトリガー
# -------------------------------------------------
# 注: これは本番環境ではない隔離されたWindowsホストで実行してください。
# 1. Windows Defenderのリアルタイムモニタリングを無効化
powershell.exe -Command "Set-MpPreference -DisableRealtimeMonitoring $true"
# 2. ファイアウォールルールを有効化 (例: インバウンドSMBを許可)
powershell.exe -Command "Enable-NetFirewallRule -DisplayGroup 'File and Printer Sharing'"
# 3. サーバーマネージャーモジュールをインストールし、Windows機能を有効化
powershell.exe -Command "Import-Module ServerManager; Enable-WindowsOptionalFeature -Online -FeatureName TelnetClient -NoRestart"
# 4. ADドメイン情報を列挙
powershell.exe -Command "Get-ADDomain | Out-Null"
# 5. ADコンピュータをリスト (発見)
powershell.exe -Command "Get-ADComputer -Filter * | Select-Object Name | Out-Null"
# 6. WMIでシステム詳細をクエリ
powershell.exe -Command "Get-WmiObject Win32_ComputerSystem | Out-Null"
# 7. 現在のPSドライブを表示
powershell.exe -Command "Get-PSDrive | Out-Null"
# 8. ラテラルムーブメントをシミュレートするためにダミーファイルをリモート共有にコピー
# (REMOTE-SERVERShareをラボ内の到達可能なSMB共有に置き換えてください)
$dummy = "$env:TEMPdummy.txt"
"test" | Out-File -FilePath $dummy -Encoding ASCII
powershell.exe -Command "Copy-Item -Path '$dummy' -Destination '\REMOTE-SERVERSharedummy.txt'"
# ローカルのダミーファイルをクリーンアップ
Remove-Item $dummy -Force
クリーンアップコマンド
# -------------------------------------------------
# クリーンアップスクリプト - テスト前の状態にホストを復元
# -------------------------------------------------
# Windows Defenderのリアルタイム保護を再有効化
Set-MpPreference -DisableRealtimeMonitoring $false
# 上記で追加されたファイアウォールルールを無効化 (まだ存在する場合)
Disable-NetFirewallRule -DisplayGroup 'File and Printer Sharing'
# リモート共有からダミーファイルを削除 (書き込み権限が必要)
Remove-Item -Path 'REMOTE-SERVERSharedummy.txt' -Force -ErrorAction SilentlyContinue