SOC Prime Bias:

30 3月 2026 16:01

AGEWHEEZEツールを使用したCERT-UAからの通知に偽装されたサイバー攻撃UAC-0255

Author Photo
Ruslan Mikhalov SOC Primeの脅威リサーチ責任者 linkedin icon フォローする
AGEWHEEZEツールを使用したCERT-UAからの通知に偽装されたサイバー攻撃UAC-0255
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

概要

CERT-UAを装ったフィッシングキャンペーンが、AGEWHEEZEリモートアクセスツールを含むパスワード保護されたアーカイブを配信しました。このマルウェアはGoで書かれており、感染システムのフルリモートコントロールを可能にし、スクリーンキャプチャ、入力エミュレーション、ファイル操作、持続性を提供します。コマンドアンドコントロールのトラフィックはWebSockets経由で、OVHにホストされたサーバーのポート8443を通じて行われます。対象となる被害者は、ウクライナの政府機関、医療機関、金融機関、教育組織を含みます。

調査

CERT-UAの研究者たちはフィッシングメール、偽のウェブサイトcert-ua.tech、そして分析のための悪意のあるバイナリを収集しました。静的レビューはRAT関連のファイルパス、スケジュールされたタスク、および持続性に使用されるレジストリアウトランエントリを発見しました。ネットワーク分析により、自己署名証明書とWebSocketリスナーを使用しているOVH上のC2サーバーが特定されました。この活動はインシデントUAC-0255の下で追跡されました。

緩和策

組織は、CERT-UAを装った未知の送信者からのメッセージをブロックし、%APPDATA%の場所から起動されたファイルの実行を防ぎ、記載されたスケジュールされたタスクとレジストリRunキーを監視する必要があります。ネットワーク制御は、特定されたC2 IPおよび関連ドメインへのアウトバウンド接続を拒否するべきです。最小特権アクセスポリシーと最新のAVシグネチャを施行することもまた重要です。

対応

防御者はAGEWHEEZEバイナリ、スケジュールされたタスクSvcHelperとCoreService、および関連するレジストリRunエントリを検出するべきです。影響を受けたシステムは隔離され、揮発性の証拠を収集し、完全なマルウェア分析を行う必要があります。関連する国のCERTに通知し、抽出されたすべてのIOCで検出コンテンツを更新する必要があります。

攻撃フロー

検出

第三者サービス/ツールを介した可能性のあるデータ侵入 / 漏えい / C2(dns経由)

SOC Primeチーム
2026年3月30日

疑わしいスケジュールされたタスク(監査経由)

SOC Primeチーム
2026年3月30日

第三者サービス/ツールを介した可能性のあるデータ侵入 / 漏えい / C2(プロキシ経由)

SOC Primeチーム
2026年3月30日

稀なイメージによる疑わしいスケジュールされたタスクファイルアクセス(file_event経由)

SOC Primeチーム
2026年3月30日

パスワードで保護されたRARアーカイブの可能性のある開放(registry_event経由)

SOC Primeチーム、@SBousseaden
2026年3月30日

RARアーカイブからの実行 [WinRAR](process_creation経由)

SOC Primeチーム
2026年3月30日

検出すべきIOC(HashSha256):CERT-UAからの通知を装ったサイバー攻撃UAC-0255をAGEWHEEZEツールで使用

SOC Prime AIルール
2026年3月28日

検出すべきIOC(SourceIP):CERT-UAからの通知を装ったサイバー攻撃UAC-0255をAGEWHEEZEツールで使用

SOC Prime AIルール
2026年3月28日

検出すべきIOC(HashSha1):CERT-UAからの通知を装ったサイバー攻撃UAC-0255をAGEWHEEZEツールで使用

SOC Prime AIルール
2026年3月28日

検出すべきIOC(HashMd5):CERT-UAからの通知を装ったサイバー攻撃UAC-0255をAGEWHEEZEツールで使用

SOC Prime AIルール
2026年3月28日

検出すべきIOC(DestinationIP):CERT-UAからの通知を装ったサイバー攻撃UAC-0255をAGEWHEEZEツールで使用

SOC Prime AIルール
2026年3月28日

AGEWHEEZE RATコマンドとコントロール通信の検出 [Windowsネットワーク接続]

SOC Prime AIルール
2026年3月28日

AGEWHEEZE RATインストールパスの検出 [Windowsファイルイベント]

SOC Prime AIルール
2026年3月28日

シミュレーション実行

前提条件:テレメトリーとベースラインの事前フライトチェックが通過している必要があります。

理由:このセクションは、検出ルールをトリガーするために設計された敵の技術(T1059)の正確な実行を詳細に説明します。コマンドと叙述は、識別されたTTPを直接反映し、検出ロジックに期待される正確なテレメトリーを生成することを目指しています。

  • 攻撃の叙述とコマンド:
    すでにユーザーのセッションを侵害した敵は、AGEWHEEZE RATをインストールすることで持続性を確立しようとしています。彼らはRATバイナリをユーザーの %APPDATA%SysSvc ディレクトリ(既知の「インストール」フォルダ)にコピーし、コマンドラインインタープリタを介して実行します。バイナリの完全なパスがSigmaルールのハードコーディングされたセレクタの1つと一致するため、Sysmonはプロセスの作成をログに記録し、ルールがトリガーされます。

  • リグレッションテストスクリプト: (侵害されたユーザーとして実行)

    # ---------------------------------------------------------
    # 検出テストのためのAGEWHEEZE RATドロップと実行をシミュレート
    # ---------------------------------------------------------
    
    # 1. ターゲットのインストールパスを定義(検出セレクタの1つ)
    $targetDir = "$env:APPDATASysSvc"
    $targetExe = "SysSvc.exe"
    $fullPath = Join-Path -Path $targetDir -ChildPath $targetExe
    
    # 2. ディレクトリが存在することを確認
    if (-not (Test-Path -Path $targetDir)) {
        New-Item -ItemType Directory -Path $targetDir -Force | Out-Null
    }
    
    # 3. ダミーの実行可能ファイルを作成(ここではnotepad.exeをコピー)
    $sourceExe = "$env:SystemRootSystem32notepad.exe"
    Copy-Item -Path $sourceExe -Destination $fullPath -Force
    
    # 4. コピーされたバイナリを実行(RATの起動をシミュレート)
    Start-Process -FilePath $fullPath -WindowStyle Hidden
    
    # 5. オプション:検証のためのマーカーを書き込む
    Write-Host "AGEWHEEZE RATシミュレーションが$fullPathから実行されました"
    # ---------------------------------------------------------
  • クリーンアップコマンド: (検証後に実行)

    # ---------------------------------------------------------
    # AGEWHEEZE RATシミュレーションのアーティファクトをクリーンアップ
    # ---------------------------------------------------------
    
    $targetDir = "$env:APPDATASysSvc"
    $targetExe = "SysSvc.exe"
    $fullPath = Join-Path -Path $targetDir -ChildPath $targetExe
    
    # ダミーexeに一致する残りのプロセスを終了
    Get-Process -Name "notepad" -ErrorAction SilentlyContinue |
        Where-Object { $_.Path -eq $fullPath } |
        Stop-Process -Force
    
    # バイナリとそのフォルダーを削除
    Remove-Item -Path $fullPath -Force -ErrorAction SilentlyContinue
    # ディレクトリが空の場合は削除
    if ((Get-ChildItem -Path $targetDir -Force | Measure-Object).Count -eq 0) {
        Remove-Item -Path $targetDir -Force
    }
    
    Write-Host "クリーンアップ完了。"
    # ---------------------------------------------------------