CobaltStrike Malleable C2 プロファイル解析 は何をしますか?
概要
Cobalt Strike Malleable C2 プロファイルは、Beacon がチームサーバーと通信する方法をカスタマイズするドメイン固有言語のスクリプトであり、HTTP リクエスト/レスポンス変換、スリープ間隔、ジッター値、User-Agent、URI パス、プロセスインジェクション動作を定義します。脅威アクターは malleable プロファイルを使用して C2 トラフィックを正規のサービス(Amazon、Google、Slack)に偽装します。これらのプロファイルを分析すると、URI パターン、HTTP ヘッダー、POST/GET 変換、DNS 設定、プロセスインジェクション手法などのネットワーク指標が明らかになり、検出に役立ちます。dissect.cobaltstrike ライブラリはプロファイルファイルの解析と、ビコンペイロードからの設定抽出の両方が可能で、pyMalleableC2 は Lark 文法を使用した AST ベースの解析を提供し、プログラムによるプロファイルの操作と検証を実現します。
使用すべきケース
- セキュリティインシデントの調査において、CobaltStrike malleable C2 プロファイルの分析が必要な場合
- このドメインに関連する検出ルールや脅威ハンティングクエリを構築する場合
- SOC アナリストがこの分析タイプの構造化された手順を必要とする場合
- 関連する攻撃手法に対するセキュリティモニタリングのカバレッジを検証する場合
前提条件
- Python 3.9+ と
dissect.cobaltstrikeまたはpyMalleableC2 - Malleable C2 プロファイルのサンプル(公開リポジトリから入手可能)
- HTTP プロトコルと Cobalt Strike ビーコン通信モデルの理解
- シグネチャ展開のためのネットワーク監視ツール(Suricata/Snort)
- トラフィック検証のための PCAP 分析ツール
手順
- ライブラリをインストール:
pip install dissect.cobaltstrikeまたはpip install pyMalleableC2 C2Profile.from_path("profile.profile")でプロファイルを解析- HTTP GET/POST ブロックの設定(URI、ヘッダー、パラメーター)を抽出
- User-Agent 文字列と偽装対象を特定
- スリープ時間、ジッター率、DNS ビーコン設定を抽出
- プロセスインジェクション設定(spawn-to、割り当て手法)を分析
- 抽出したネットワーク指標から Suricata/Snort シグネチャを生成
- プロファイルを既知の脅威アクタープロファイルコレクションと比較
- ステージング URI とペイロード配信メカニズムを抽出
- IOCs と推奨ネットワークシグネチャを含む検出レポートを作成
期待される出力
抽出された C2 URI、HTTP ヘッダー、User-Agent、スリープ/ジッター設定、プロセスインジェクション設定、spawn プロセスパス、DNS 設定、および生成された Suricata 互換の検出ルールを含む JSON レポート。