Googleフォームの「求人概要」があなたのデバイスを感染させる可能性があります
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
脅威アクターは、Google Formsを悪用して悪意のあるZIPアーカイブを配布し、最終的にPureHVNC RATをインストールしています。アーカイブには、DLLハイジャックを通じて実行される標的PDFと悪意のある実行可能ファイルおよびDLLペアが含まれています。起動されると、マルウェアはシステム偵察、データの窃取、レジストリ変更およびスケジュールされたタスクを使用した持続化の確立を行います。
調査
研究者たちはいくつかのキャンペーンのバリエーションを文書化し、msimg32.dllのDLLハイジャックの悪用を確認しました。彼らはMiroupdateレジストリランキーを通じた持続化、ProgramDataに最終的なZIPを投入する段階的な実行、Donutシェルコードを稼働する難読化されたPythonローダーを観察しました。最終段階では、PureHVNC RATがSearchUI.exeに注入されます。
緩和策
ユーザーは信頼できないGoogle Formsページや短縮リンクからファイルをダウンロードすることを避けるべきです。特にLinkedInを通じて配信されたフォームやURLの正当性を注意深く確認する必要があります。組織は、既知の悪意のあるファイル、ドメイン、ペイロード配信パスをブロックするためにURLフィルタリングとエンドポイント保護を強化すべきです。
対応
検出チームはmsimg32.dll、Miroupdateランキー、base64のPowerShellを含むスケジュールされたタスク、PureHVNCプロセスインジェクションの兆候を探す必要があります。悪意のあるZIPファイルは隔離されるべきで、持続性メカニズムを除去し、関連するすべてのインフラストラクチャドメインをブロックすべきです。
攻撃の流れ
検出
パワーシェルを通じたスケジュールタスク作成の可能性
表示
コマンドライン経由での一般的ではないディレクトリへの圧縮ユーティリティの使用
表示
疑わしいフォルダからのPythonの実行 (コマンドライン経由)
表示
隠されたPowerShellコマンドラインを通じた実行の可能性
表示
持続可能性のポイントの可能性 [ASEPs – Software/NTUSERハイブ] (レジストリイベント経由)
表示
デバイスに感染する可能性がある「求人概要」に対するIOC (SourceIP) の検出
表示
デバイスに感染する可能性がある「求人概要」に対するIOC (HashSha256) の検出
表示
デバイスに感染する可能性がある「求人概要」に対するIOC (DestinationIP) の検出
表示
PureHVNC WMIクエリ検出 [Windows Sysmon]
表示
Pythonスクリプトの実行によるPDFおよびZIP解凍の疑わしい実行 [Windowsプロセス作成]
表示
シミュレーション実行
前提条件: テレメトリとベースラインの事前チェックが合格している必要があります。
説明: このセクションでは、検出ルールをトリガーするためにデザインされた敵の技術(TTP)の正確な実行を詳細に説明します。コマンドとナラティブは特定されたTTPを直接反映し、検出ロジックによって期待される正確なテレメトリの生成を目指します。
-
攻撃の説明とコマンド:
オペレーターはエンドポイントを侵害し、PureHVNCを配置しました。このツールはシステム情報を取得するために3つの異なるWMIクエリを発行する隠されたPowerShellプロセスを起動します。SELECT Caption FROM Win32_OperatingSystem– OSバージョンを収集。SELECT * FROM AntiVirusProduct– インストールされているAV製品を列挙。SELECT * FROM Win32_PnPEntity WHERE (PNPClass = 'Image' OR PNPClass = 'Camera')– 接続されたカメラおよびイメージングデバイスを発見。
クエリはwmicを使用して正当な管理活動と一体化しますが、正確な文字列は検出ルールの選択ブロックに一致します。
-
回帰テストスクリプト:
# PureHVNC WMIクエリシミュレーション – 検出ルールをトリガーします $queries = @( "SELECT Caption FROM Win32_OperatingSystem", "SELECT * FROM AntiVirusProduct", "SELECT * FROM Win32_PnPEntity WHERE (PNPClass = 'Image' OR PNPClass = 'Camera')" ) foreach ($q in $queries) { # wmicでクエリを実行。wmicは標準出力に出力をプリントします wmic /namespace:rootcimv2 path __Namespace where "Name='root'" call CreateInstance $q 2>&$null # 各イベントが別々にログに記録されることを保証するために短い一時停止を強制 Start-Sleep -Milliseconds 500 } -
クリーンアップコマンド:
# 一時ファイルを削除し、残存しているwmicプロセスを終了します Get-Process wmic -ErrorAction SilentlyContinue | Stop-Process -Force # 上記のスクリプトにより持続的な成果物は生成されません。