SOC Prime Bias:

06 2月 2026 18:48

ランサムウェアのゴッドファーザー?ドラゴンフォースのカルテル野望を探る

Author Photo
Ruslan Mikhalov SOC Primeの脅威リサーチ責任者 linkedin icon フォローする
ランサムウェアのゴッドファーザー?ドラゴンフォースのカルテル野望を探る
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

概要

DragonForceは、システムを暗号化する一方で機密データを盗むという二重恐喝を行う高速のランサムウェアサービスです。Windows、Linux、ESXi、BSD、NASターゲットをサポートする柔軟なアフィリエイトプラットフォームを提供し、最近では独自のブランドで操作できる「カルテル」アプローチに転換しました。報告された被害は製造業、建設業、技術分野など複数の国にわたり、「データ監査」のような交渉圧力を高めるための追加サービスも提供しています。

調査

Cybereasonのアナリストはランサムウェアサンプルをレビューし、Conti系のmutexが確認され、SMBスキャン、wmic.exeを使用したシャドウコピー削除、ESXi暗号化のために特化したオプションを観察しました。サポートインフラには複数のIPアドレスと盗まれたデータを公開するための現在は使用されていないオニオンリークサイトが含まれていました。レポートはまた、LockBit、Qilin、その他のランサムウェアの関与と協力を示すシグナルも強調しています。

緩和策

アンチマルウェア、アンチランサムウェア対策、シャドウコピーガード、およびアプリケーション制御を含む多層エンドポイント保護を有効にします。システムをパッチアップし、多要素認証を要求し、オフラインの定期的なバックアップを維持し結合テストで復元を確認します。SMBスキャンやwmic.exe駆動のシャドウコピー削除、参照されたmutexの早期警戒テレメトリーを監視してください。

対応

ランサムウェア活動が検出された場合、影響を受けたホストを隔離し、揮発性証拠を収集し、インシデントレスポンスプレイブックを起動します。検証済みのクリーンバックアップから復元し、必要に応じて法執行機関に関与し、環境全体におけるアフィリエイトの足場を探します。既知のインフラストラクチャIP/ドメインをブロックし、データ窃盗の範囲を把握して封じ込め、通知、および復旧行動に役立てます。

攻撃の流れ

この部分はまだ更新中です。通知を受け取るにはサインアップしてください。

通知を受け取る

シミュレーションの実行

前提条件:テレメトリー & ベースラインチェックをパスしている必要があります。

理由:このセクションでは、敵の技術(TTP)の正確な実行を詳述しており、検出ルールをトリガーすることを目的としています。コマンドと説明は、識別されたTTPを直接反映し、検出ロジックによって期待される正確なテレメトリーを生成することを目的としています。抽象的または無関係な例は誤診に繋がります。

  • 攻撃ストーリー & コマンド:
    攻撃者はまずテストドキュメント(secret.txt)にダミーデータを含めて作成。PowerShellの.NET暗号化クラスを使用して、AES-256でファイルを暗号化し、システムはEvent 4663としてログに書き込み操作を記録します AccessMask が0x2(メタデータを読む)となり、元のプレーンテキストの削除が続きます。両方のアクションが同じイベントIDを生成します。
    活動を隠すため、攻撃者はWindowsセキュリティログファイルの場所を標準外のパス(C:TempSecLog.evtx)に再定義し、 wevtutilを使用してレジストリキー変更のために別の4663イベントを生成。このステップは、DragonForceのファイル暗号化と自身のログを再配置して進捗を監視する報告された行動をエミュレートします。

  • 回帰テストスクリプト:

    # -------------------------------------------------
    # DragonForceランサムウェアシミュレーション - PowerShell
    # -------------------------------------------------
    
    # 1. テストアーティファクトを準備
    $plainPath = "$env:TEMPsecret.txt"
    "暗号化が必要な機密データ" | Set-Content -Path $plainPath -Encoding UTF8
    
    # 2. ファイルを暗号化(AES‑256, CBC)
    $key = (1..32 | ForEach-Object { Get-Random -Maximum 256 })
    $iv  = (1..16 | ForEach-Object { Get-Random -Maximum 256 })
    $aes = [System.Security.Cryptography.Aes]::Create()
    $aes.Key = $key
    $aes.IV  = $iv
    $aes.Mode = [System.Security.Cryptography.CipherMode]::CBC
    
    $encryptedPath = "$env:TEMPsecret.txt.enc"
    $fsIn  = [System.IO.File]::OpenRead($plainPath)
    $fsOut = [System.IO.File]::Create($encryptedPath)
    $crypto = $aes.CreateEncryptor()
    $cs = New-Object System.Security.Cryptography.CryptoStream($fsOut, $crypto, [System.Security.Cryptography.CryptoStreamMode]::Write)
    $buffer = New-Object byte[] 1048576   # 1 MiB バッファ
    while (($read = $fsIn.Read($buffer,0,$buffer.Length)) -gt 0) {
        $cs.Write($buffer,0,$read)
    }
    $cs.FlushFinalBlock()
    $cs.Dispose()
    $fsIn.Dispose()
    $fsOut.Dispose()
    
    # 3. 元のプレーンテキストを削除(削除イベントをトリガー)
    Remove-Item -Path $plainPath -Force
    
    # 4. セキュリティイベントログの場所を再定義(ログファイルの再定義)
    $newLog = "C:TempSecLog.evtx"
    wevtutil sl Security /lfn:$newLog
    
    Write-Host "シミュレーション完了 – 暗号化されたファイルが$encryptedPathに作成され、ログのパスは$newLogに変更されました。"
  • クリーンアップコマンド:

    # -------------------------------------------------
    # クリーンアップ-元の状態を復元
    # -------------------------------------------------
    
    # 元のセキュリティログの場所を復元(デフォルト)
    wevtutil sl Security /lfn:"%SystemRoot%System32winevtLogsSecurity.evtx"
    
    # 暗号化されたアーティファクトを削除
    $encPath = "$env:TEMPsecret.txt.enc"
    if (Test-Path $encPath) { Remove-Item $encPath -Force }
    
    # 一時的なログファイルが存在する場合は削除
    $tempLog = "C:TempSecLog.evtx"
    if (Test-Path $tempLog) { Remove-Item $tempLog -Force }
    
    Write-Host "クリーンアップ完了。"