イランのサイバー・パラドックス: 劣化したAPT、増加するプロキシ、ブートキットワイパー
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
イランに関連するサイバー活動は、既存のAPTチームから離れ、起動キットスタイルのワイパーを使用するプロキシオペレーターに向かっており、幅広いCVEを悪用し、クラウドインフラの物理的な妨害とサイバー操作を組み合わせることさえしています。Rusty BootsやMoKhargoshのような新しく追跡されたクラスターは、起動キットレベルの持続性を示しており、HYDRO KITTENはRockwell PLCやインターネット向けネットワークデバイスを資格情報に基づく侵入方法で攻撃しています。湾岸地域のクラウドデータセンターへの物理的攻撃は、リスクをハイブリッドなサイバー・フィジカルドメインに拡大しています。この報告書は、OT環境におけるファームウェア整合性検証と行動ベースの検出の重要性を強調しています。
調査
報告書は3つの主要な進展を強調しています。第一に、Rusty BootsとMoKhargoshが起動キットスタイルの持続性を持つワイパーを展開する能力を示しています。第二に、HYDRO KITTENはRockwellシステム、FortiGate、SonicWall、Ivanti、PAN-OS、およびOpenSSHに影響を与える複数のCVEを悪用しました。第三に、UNC6446は、DUSTYPROXYやERIESNAKE.GOを含むカスタムのC#およびGolangマルウェアを使用し、443ポートを通じて暗号化されていないHTTP通信を行っています。報告書はバーレーンとドバイのクラウドインフラを標的にした物理的攻撃も言及しています。
緩和策
組織はファイアウォール、OT資産、SSHサービス全体で参照されたすべてのCVEを修正すると同時に、安全な起動を強制し、定期的にファームウェアの整合性をチェックする必要があります。防御チームは、未加工ディスクの書き込み活動やMBRまたはVBRへの変更を監視し、ポート443経由の暗号化されていないHTTPトラフィックをブロックし、不明な実行可能ファイルのためにレジストリRunキーを確認し、OTの行動監視を実施して承認されていないメンテナンス期間外のPLC設定変更を検出する必要があります。
対応
防御者はDNS、プロキシ、およびエンドポイントコントロール全体で開示されたすべてのIPアドレス、ドメイン、ファイルハッシュを直ちにブロックする必要があります。暗号化されていないHTTP over TCP/443、セキュアブートの整合性失敗、新しいレジストリRunキーエントリ、および疑わしいPLC認証行動の検出コンテンツを展開する必要があります。脅威ハンティングは、上記のマルウェアシグネチャと、長期間の非アクティブ化の後に突然発生するOT関連操作の兆候を重点的に行う必要があります。
攻撃フロー
検知
可能な持続性ポイント [ASEPs – ソフトウェア/NTUSERハイブ](経由: registry_event)
表示
可能なシステム列挙(経由: cmdline)
表示
システムプロセスの模倣をする疑わしいプロセスが実行された(経由: cmdline)
表示
Wmi PowerShellモジュールを使用した可能なシステム情報発見(経由: powershell)
表示
IOC(HashMd5)を検出: イランのサイバーパラドックス: 劣化したAPT、権限を持つプロキシ、ブートキットワイパーの台頭
表示
IOC(SourceIP)を検出: イランのサイバーパラドックス: 劣化したAPT、権限を持つプロキシ、ブートキットワイパーの台頭
表示
IOC(DestinationIP)を検出: イランのサイバーパラドックス: 劣化したAPT、権限を持つプロキシ、ブートキットワイパーの台頭
表示
HYDRO KITTENのRockwell RSLogix 5000の悪用 [Firewall]
表示
ERIESNAKE.GOとDUSTYPROXYアクティビティを示唆する異常なHTTPトラフィックとプロキシリレー行動を検出 [Proxy]
表示
特定のプロセスによるERIESNAKE.GOのPowerShell実行の検出 [Windows PowerShell]
表示
DUSTYPROXYのレジストリRunキーを用いた持続性 [Windowsレジストリイベント]
表示
シミュレーション実行
前提条件: テレメトリーおよびベースラインのプレフライトチェックが合格している必要があります。
理由: このセクションは、検出ルールをトリガーすることを目的とした、敵対的技術(TTP)の正確な実行を詳細に説明します。コマンドとナラティブは直接TTPを反映し、検出ロジックによって予想されるテレメトリーを正確に生成する必要があります。抽象的または無関係な例は誤診に繋がります。
-
攻撃のナラティブとコマンド:
- 資格情報を取得する (T1078) – 低権限のサービスアカウントを侵害した攻撃者は、安全でない資格情報ストアから「Rockwell」サービス資格情報を取得します。
- リモート・インタラクティブ・ログオン (T1078, LogonType 10) – それらの資格情報を使用して、攻撃者はRDPを介してターゲットのPLC管理ワークステーションに接続し、規則に一致する成功したログオンイベント(EventID 4624, LogonType 10)を生成します。
selection1. - エクスプロイトの試み (T1190 / T1542.003) – ログイン時、攻撃者はRSLogix 5000ウェブサービスに対して作成したHTTPリクエストを実行し、認証バイパスをトリガーします(CVE‑2021‑22681)。サービスは失敗した認証イベント(EventID 4625)をログし、失敗理由文字列に「CVE‑2021‑22681」が含まれ、規則を満たします。
selection2. - 事後エクスプロイト (T1059.001, T1071.001, T1090.002) – 外部プロキシを通じてPowerShellリバースシェルが確立され、悪意のあるペイロードがダウンロードされますが、これらのステップは規則が発効するために必要ではありません。
-
回帰テストスクリプト: 以下のスクリプトは、ステップ2と3を自動化し、正確なテレメトリーを生成します。
# ============================== # Hydro Kitten 悪用テスト # ============================== # 1️⃣ 変数 - 環境値に置き換えてください $targetHost = "10.0.0.50" # RSLogixサーバのIP $rockwellUser = "Rockwell" $rockwellPwd = "P@ssw0rd!" # 既知(または取得した)パスワード $proxyUrl = "http://proxy.example.com:8080" # 2️⃣ Rockwellの資格情報を使用してリモートインタラクティブセッション(RDP)を確立する $secPwd = ConvertTo-SecureString $rockwellPwd -AsPlainText -Force $cred = New-Object System.Management.Automation.PSCredential ($rockwellUser, $secPwd) Write-Host "[*] $targetHostへのRDPセッションを$rockwellUserで開始しています..." # Start-Processは新しいログオンセッションを作成します - これがEventID 4624、LogonType 10を生成します Start-Process -FilePath "mstsc.exe" -ArgumentList "/v:$targetHost" -Credential $cred Start-Sleep -Seconds 10 # ログオンが記録される時間を許可します # 3️⃣ CVE-2021-22681認証バイパス試みをトリガーする $exploitUrl = "http://$targetHost/rslogix/rslogix.cgi?CVE-2021-22681=1" Write-Host "[*] CVE検出をトリガーするための不正なリクエストを送信しています..." Invoke-WebRequest -Uri $exploitUrl -Proxy $proxyUrl -Method GET -UseBasicParsing -ErrorAction SilentlyContinue Write-Host "[+] エクスプロイトリクエストが送信されました。SIEMでEventID 4625が『CVE-2021-22681』を含むか確認してください。" -
クリーンアップコマンド: RDPセッションと一時的なアーティファクトを削除してください。
# RDPクライアントプロセスを終了する Get-Process -Name mstsc -ErrorAction SilentlyContinue | Stop-Process -Force # (オプション)フォレンジックフットプリントを削減するためのPowerShell履歴のクリア Clear-History