実際のソフトウェアダウンロードがリモートバックドアを隠す方法
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
攻撃者は類似の RustDesk ダウンロードサイト(rustdesk.work)を運営しており、トロイの木馬化されたインストーラーを提供しています。正当な RustDesk セットアップに、 Winos4.0と呼ばれる悪意のあるローダーがバンドルされています。実行されると、ドロッパーは logger.exe and Libserver.exeを配置し、バックドアを メモリ内に ロードし、ディスク上のアーティファクトを減少させます。このインプラントは 207.56.13.76 上の TCP/5666を通じてコマンドアンドコントロールを確立し、持続的なリモートアクセスを可能にします。この活動は ソーシャルエンジニアリングとブランド偽装により推進されており、RustDesk ソフトウェアの脆弱性によるものではありません。
調査
アナリストは悪意のあるバイナリ rustdesk-1.4.4-x86_64.exe を取得し、正当な RustDesk インストーラーと共にディスクに武器化された logger.exe を書き込むことを観察しました。この logger.exe コンポーネントは Libserver.exeを生成し、次に WinosStager の DLL と大量のメモリ内ペイロードを、これらのモジュールをディスクに残さずに設定します。ネットワークテレメトリは 207.56.13.76:5666へのアウトバウンド通信を確認しました。これはキャンペーンの C2 チャンネルと評価されています。調査者は、偽装されたドメイン(rustdesk.work)、ドロップされたファイル名、および関連するファイルハッシュを含む主要な IOC を抽出しました。
緩和策
確認済みのソフトウェア取得プラクティスを施行し、RustDesk を公式のソース(rustdesk.com)からのみダウンロードしてください。未承認のバイナリの実行を防ぐためにアプリケーション許可リスト(または同等のコントロール)を適用し、特にユーザー書き込み可能なディレクトリからの「インストーラー」ファイルを防止してください。 TCP/5666へのアウトバウンドトラフィックを監視および制限し、接続に対する検出/ブロックルールを追加します。 rustdesk.workをブロックし、DNS、プロキシ、およびファイアウォールコントロール全体で悪意のあるドメインをブロックします。 207.56.13.76 レスポンス
の実行を検出するための検出を作成し、ネットワーク接続の警告があればお知らせします。
アドバイザリ: トロイの木馬化されたインストーラー(および利用可能な logger.exe and Libserver.exeSHA-256 207.56.13.76:5666のインジケータ)があるエンドポイントを積極的に探索し、RustDesk が非承認ソースからインストールされたかどうかを検証します。脅威が確認された場合、影響を受けるホストを隔離し、悪意のあるプロセスツリーを終了し、関連するアーティファクトを削除し、潜在的に露出したクレデンシャル(特にインストール中またはその後のリモートセッション中に使用されたアカウント)をローテーションします。 SHA-256 indicators) and validate whether RustDesk was installed from non-approved sources. If compromise is confirmed, isolate affected hosts, terminate the malicious process tree, remove related artifacts, and rotate potentially exposed credentials (especially any accounts used during installation or subsequent remote sessions).
“graph TB %% クラス定義 classDef action fill:#99ccff classDef technique fill:#ffcc99 classDef malware fill:#ff9999 classDef process fill:#ffdd99 classDef tool fill:#cccccc classDef operator fill:#ff9900 %% ノード action_initial_access[“<b>アクション</b> – 初期アクセス<br/><b>テクニック</b>: T1204 ユーザー実行”] class action_initial_access action tech_user_execution[“<b>テクニック</b> – T1204 ユーザー実行<br/>被害者が悪意のあるコンテンツを実行”] class tech_user_execution technique tech_malicious_link[“<b>テクニック</b> – T1204.001 悪意のあるリンク<br/>リンクが悪意のあるインストーラのダウンロードにつながる”] class tech_malicious_link technique tech_trojanized_installer[“<b>テクニック</b> – T1204.002 トロイの木馬化されたインストーラ<br/>インストーラは正規のように見えるがペイロードを含む”] class tech_trojanized_installer technique malware_logger_exe[“<b>マルウェア</b> – logger.exe<br/>入力をキャプチャし、特権アクションを実行”] class malware_logger_exe malware tech_process_masquerade[“<b>テクニック</b> – T1036.011 偽装<br/>プロセス名を偽装して正規に見せかける”] class tech_process_masquerade technique tech_argument_spoof[“<b>テクニック</b> – T1564.010 偽の引数<br/>コマンドライン引数を偽装”] class tech_argument_spoof technique tech_tls_injection[“<b>テクニック</b> – T1055.005 スレッドローカルストレージインジェクション<br/>TLSを介したコード注入”] class tech_tls_injection technique tech_appcert_dll[“<b>テクニック</b> – T1546.009 AppCert DLL 実行<br/>AppCert DLLを使用して自動実行”] class tech_appcert_dll technique tech_permission_hijack[“<b>テクニック</b> – T1574.005 実行フローのハイジャック<br/>インストーラファイルの権限の弱点を悪用”] class tech_permission_hijack technique action_defense_evasion[“<b>アクション</b> – 防御回避<br/>検知回避のための複数のテクニック”] class action_defense_evasion action action_persistence[“<b>アクション</b> – 永続性<br/>長期間の足場を確保”] class action_persistence action tech_registry_rc[“<b>テクニック</b> – T1037.004 レジストリ RC スクリプト<br/>レジストリ経由でスクリプトを実行”] class tech_registry_rc technique tech_active_setup[“<b>テクニック</b> – T1547.014 アクティブセットアップ<br/>アクティブセットアップによる自動起動”] class tech_active_setup technique tech_preos_boot[“<b>テクニック</b> – T1542 前 OS ブート<br/>ブートプロセスにフックする”] class tech_preos_boot technique action_credential_access[“<b>アクション</b> – 資格情報アクセス<br/>ユーザー資格情報の盗用”] class action_credential_access action tech_keylogging[“<b>テクニック</b> – T1056.001 キーロギング<br/>キーストロークの記録”] class tech_keylogging technique tech_credential_dump[“<b>テクニック</b> – T1003 OS 資格情報ダンプ<br/>パスワードハッシュの抽出”] class tech_credential_dump technique action_collection[“<b>アクション</b> – コレクション<br/>ユーザーデータの収集”] class action_collection action tech_screen_capture[“<b>テクニック</b> – T1113 画面キャプチャ<br/>スクリーンショットの取得”] class tech_screen_capture technique tech_video_capture[“<b>テクニック</b> – T1125 ビデオキャプチャ<br/>ビデオの記録”] class tech_video_capture technique tech_audio_capture[“<b>テクニック</b> – T1123 オーディオキャプチャ<br/>オーディオの記録”] class tech_audio_capture technique action_c2[“<b>アクション</b> – コマンド・アンド・コントロール<br/>リモートサーバーとの通信”] class action_c2 action tech_nonstandard_port[“<b>テクニック</b> – T1571 非標準ポート<br/>TCP ポート 5666 を使用”] class tech_nonstandard_port technique tech_ftp_style[“<b>テクニック</b> – T1071.002 FTP スタイルプロトコル<br/>FTP のようにトラフィックをエンコード”] class tech_ftp_style technique tech_port_knocking[“<b>テクニック</b> – T1205.001 ポートノッキング<br/>ポートシーケンスで C2 にシグナル送信”] class tech_port_knocking technique malware_memory_resident[“<b>マルウェア</b> – メモリ上に常駐するペイロード<br/>直接 RAM にロードされる”] class malware_memory_resident malware tech_registry_hide[“<b>テクニック</b> – レジストリ内の隠し設定<br/>レジストリに設定を保存”] class tech_registry_hide technique %% 接続 action_initial_access u002du002d>|使用| tech_user_execution tech_user_execution u002du002d>|含む| tech_malicious_link tech_user_execution u002du002d>|含む| tech_trojanized_installer tech_malicious_link u002du002d>|配信| malware_logger_exe tech_trojanized_installer u002du002d>|バンドル| malware_logger_exe malware_logger_exe u002du002d>|実行| tech_process_masquerade malware_logger_exe u002du002d>|実行| tech_argument_spoof malware_logger_exe u002du002d>|注入| tech_tls_injection malware_logger_exe u002du002d>|使用| tech_appcert_dll malware_logger_exe u002du002d>|悪用| tech_permission_hijack malware_logger_exe u002du002d>|実行| action_defense_evasion action_defense_evasion u002du002d>|確立| action_persistence action_persistence u002du002d>|使用| tech_registry_rc action_persistence u002du002d>|使用| tech_active_setup action_persistence u002du002d>|使用| tech_preos_boot action_defense_evasion u002du002d>|実行| action_credential_access action_credential_access u002du002d>|使用| tech_keylogging action_credential_access u002du002d>|使用| tech_credential_dump action_defense_evasion u002du002d>|実行| action_collection action_collection u002du002d>|キャプチャ| tech_screen_capture action_collection u002du002d>|キャプチャ| tech_video_capture action_collection u002du002d>|キャプチャ| tech_audio_capture action_defense_evasion u002du002d>|実行| action_c2 action_c2 u002du002d>|通信| tech_nonstandard_port tech_nonstandard_port u002du002d>|使用プロトコル| tech_ftp_style action_c2 u002du002d>|使用| tech_port_knocking malware_logger_exe u002du002d>|常駐| malware_memory_resident malware_memory_resident u002du002d>|設定保存| tech_registry_hide “
アタックフロー
検出
RustDesk ログファイルが作成されました(file_event 経由)
表示
リモートアクセスソフトウェアドメインの通信試行によるコマンド&コントロール活動の可能性(dns 経由)
表示
代替リモートアクセス/管理ソフトウェア(プロセス作成 経由)
表示
検出するための IOCs(SourceIP):リソースの実際のダウンロードがリモートバックドアを隠す方法
表示
検出するための IOCs(HashSha256):リソースの実際のダウンロードがリモートバックドアを隠す方法
表示
検出するための IOCs(DestinationIP):リソースの実際のダウンロードがリモートバックドアを隠す方法
表示
Winos4.0 ネットワーク活動の検出(悪意のあるコマンド&コントロールサーバーを経由して)[Windows ネットワーク接続]
表示
Winos4.0 バックドアを持つトロイ木馬化された RustDesk インストーラー [Windows プロセス作成]
表示
シミュレーション実行
前提条件: テレメトリ&ベースラインのプレフライトチェックが合格していること。
理由: このセクションでは、検出ルールをトリガーするために設計された敵対者技法 (TTP) の正確な実行を詳細に説明します。コマンドとナラティブは、特定された TTP を直接反映し、検出ロジックによって予想されるテレメトリを正確に生成することを目的としています。
-
攻撃の説明とコマンド:
- 配信と実行: 攻撃者はトロイの木馬化された RustDesk インストーラー (
rustdesk-1.4.4-x86_64.exe) をフィッシングメールを通じて配信します。ファイルは%TEMP%に保存され、昇格された特権で実行されます。 - ペイロードのドロップ: 実行すると、インストーラーは 2 つの悪意のあるバイナリ—
logger.exeandLibserver.exe—を同一ディレクトリに抽出し、直ちに子プロセスとして起動します。 - 永続性(T1546.016):
logger.exeは Run キーエントリ(HKCUSoftwareMicrosoftWindowsCurrentVersionRun)を自分自身を示すように書き込み、再起動後の永続性を確保します。 - コードインジェクション (T1574.005 / T1055.005):
Libserver.exeは反射型 DLL をexplorer.exeに注入して高権限での実行を取得し、攻撃者の C2 への逆シェルを開きます。 - 回避(偽装 – T1036.011): すべてのバイナリは「RustDesk」命名規則を保持し、正当なソフトウェアと自分をブレンドします。
- 配信と実行: 攻撃者はトロイの木馬化された RustDesk インストーラー (
-
回帰テストスクリプト: 以下のスクリプトは手順 1‑3 を自動化し、3 つの必要なプロセス作成イベントを生成します。PowerShell を使用して、事前に配置された悪意のあるバイナリ(安全のため無害なプレースホルダーでシミュレーション)をコピーし、適切な親子関係で起動します。
# ------------------------------------------------- # シミュレーションスクリプト – トロイ木馬化された RustDesk インストーラー # ------------------------------------------------- # 前提条件: 2 つの無害なプレースホルダー実行ファイルが C:Malware に配置されている(logger.exe および Libserver.exe と名付けられたもの) # 実際のレッドチームテストでは、これらは実際の悪意のあるペイロードになります。 # ------------------------------------------------- $installerPath = "$env:TEMPrustdesk-1.4.4-x86_64.exe" $payloadDir = "$env:TEMPrustdesk_payload" $loggerPath = "$payloadDirlogger.exe" $libserverPath = "$payloadDirLibserver.exe" # 1. ダミーインストーラーをデプロイ(単に無害な exe のコピー) Write-Host "[*] 偽の RustDesk インストーラーをデプロイしています..." New-Item -ItemType Directory -Path $payloadDir -Force | Out-Null Copy-Item -Path "C:WindowsSystem32notepad.exe" -Destination $installerPath -Force # 2. ペイロードドロップをシミュレート – プレースホルダーバイナリをコピー Write-Host "[*] ペイロードをドロップします..." Copy-Item -Path "C:Malwarelogger.exe" -Destination $loggerPath -Force Copy-Item -Path "C:MalwareLibserver.exe" -Destination $libserverPath -Force # 3. インストーラーを実行(親プロセスを作成) Write-Host "[*] インストーラーを実行しています..." $installer = Start-Process -FilePath $installerPath -PassThru # 4. インストーラーの子として logger.exe を起動 Write-Host "[*] logger.exe を起動(インストーラーの子として)..." Start-Process -FilePath $loggerPath -ArgumentList "--parent $($installer.Id)" -NoNewWindow # 5. インストーラーの子として Libserver.exe を起動 Write-Host "[*] Libserver.exe を起動(インストーラーの子として)..." Start-Process -FilePath $libserverPath -ArgumentList "--parent $($installer.Id)" -NoNewWindow Write-Host "[+] シミュレーション完了. SIEMでのアラートを確認してください。" -
クリーンアップコマンド: 一時ファイルを削除し、残っているプロセスを終了します。
# ------------------------------------------------- # クリーンアップスクリプト – シミュレーションアーティファクトの削除 # ------------------------------------------------- $installerPath = "$env:TEMPrustdesk-1.4.4-x86_64.exe" $payloadDir = "$env:TEMPrustdesk_payload" Write-Host "[*] 起動中のプロセスを停止しています..." Get-Process -Name "logger","Libserver","rustdesk-1.4.4-x86_64" -ErrorAction SilentlyContinue | Stop-Process -Force Write-Host "[*] ファイルを削除しています..." Remove-Item -Path $installerPath -Force -ErrorAction SilentlyContinue Remove-Item -Recurse -Force -Path $payloadDir -ErrorAction SilentlyContinue Write-Host "[+] クリーンアップ完了。"