
VEHを使用して呼び出しをインターセプトし、スリープ中にモジュールをアンマップし、IOCを回避するために新しいモジュールを再マッピングする高度なモジュールストンピングを実行するCobalt Strike UDRL
Astral Projectionは、Cobalt StrikeのUDRL(ユーザー定義リフレクティブローダー)であり、高度なモジュールストンピングを実行します。
UDRLはLoadLibraryExWを使用してモジュールをロードし、次にVEHを設定して戦略的な呼び出しをインターセプトすることで内部を操作し、犠牲DLLのセクションハンドルを奪い、後でスリープマスクで使用するためにアクセス権を昇格させます。スリープ中はPEBエントリをそのまま維持しながらモジュールをアンマップし、その後新しいモジュールを再マップすることで、スリープ中のIOCを回避します。
このプロジェクトはCrystal Palaceを使用して構築されています。コードの一部はCrystal-Kitプロジェクトから採用されました。
使用されている技術を詳細に説明したテクニカルブログ記事はこちらにあります。
stage {
set sleep_mask "false";
set cleanup "true";
transform-obfuscate { }
}
post-ex {
set cleanup "true";
set smartinject "true";
}
crystalpalace.jarをCobalt Strikeクライアントディレクトリにコピーします。Astral_Projection.cnaをロードします。