
JA3/JARMフィンガープリントのランダム化、ドメインフロンティング、可変C2プロファイルの検証、IPホワイトリストによるブルーチーム、AV、EDR、サイバースペースマッピングを回避するC2フロントフロー制御ツール。
英語 | 中文ドキュメント

RedGuardは、C2フロントフロー制御技術に基づく派生ツールで、より軽量な設計、効率的なトラフィックインタラクション、そしてGoプログラミング言語での開発との信頼性の高い互換性を備えています。サイバー攻撃が絶えず進化し、レッドチームとブルーチームの演習がますます複雑になる中、RedGuardはレッドチームにより優れたC2チャネル隠蔽ソリューションを提供するように設計されており、C2チャネルのフロー制御を提供し、「悪意のある」分析トラフィックを遮断し、攻撃タスク全体をより良く完了します。
RedGuardは、ブルーチーム、AVS、EDR、サイバースペース検索エンジンの検出を回避できるC2フロントフロー制御ツールです。
コンパイル済みバージョンを直接ダウンロードして使用するか、Goパッケージをリモートでダウンロードして独立してコンパイルおよび実行することができます。```bash git clone https://github.com/wikiZ/RedGuard.git cd RedGuard
go build -ldflags "-s -w" -trimpath
chmod +x ./RedGuard&&./RedGuard
# 0x02 設定の説明
## 初期化
下図のように、実行権限を設定し、RedGuardを初期化します。初回実行時には、現在のユーザーのホームディレクトリに設定ファイルが生成され、柔軟な機能設定が可能です。設定ファイル名: **.RedGuard_CobaltStrike.ini**。

**設定ファイルの内容:**

certの設定オプションは主に、サンプルとC2フロントインフラストラクチャ間のSSL証明書で暗号化されたHTTPS通信の設定情報に関するものです。proxyは主にリバースプロキシトラフィック内の制御オプションを設定するために使用されます。具体的な使用方法については以下で詳しく説明します。
SSL証明書で暗号化されたHTTPS通信は、RedGuardが実行されているディレクトリ内のcert-rsa/ディレクトリに生成されます。設定ファイルを変更することで、ツールの基本機能の開始および停止が可能です **(証明書のシリアル番号はタイムスタンプに基づいて生成されるため、この機能に関連付けられることを心配する必要はありません)**。独自の証明書を使用したい場合は、それらをca.crtとca.keyに名前変更するだけです。```bash
openssl x509 -in ca.crt -noout -text

RedGuard が起動されるたびにランダムな TLS JARM フィンガープリントが更新され、これが C2 インフラストラクチャの認証に使用されるのを防ぎます。

独自の証明書を使用する場合は、設定ファイルの HasCert パラメータを true に変更して、JARM 難読化のランダム化によって生じる CipherSuites 暗号スイートとカスタム証明書の非互換性に起因する通常の通信問題を防止します。```bash
HasCert = false
### 偽造されたTLS証明書
C2トラフィックを隠すためにドメインフロンティングを展開する場合、デフォルトでは加速ドメイン名にHTTPS証明書情報がありません。これは明らかに問題があるため、ドメイン名を設定する際には証明書の設定に注意する必要があります。これはまた、サンプルがドメインフロントエンドトラフィックであるかどうかを判断するデフォルトの基準でもあります。

[^Tencent Cloud]: https://raw.githubusercontent.com/wikiz/redguard/main/%E3%82%B3%E3%83%B3%E3%83%86%E3%83%B3%E3%83%84%E9%85%8D%E4%BF%A1%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%AE%E8%A8%BC%E6%98%8E%E6%9B%B8%E8%A8%AD%E5%AE%9A
これを読んだ後、皆さんはいくつかの疑問を持つことでしょう。**設定された証明書をどのように取得するのか?アプリケーションに独自の証明書を使用すると、期待する匿名性効果が得られません。** ここでは、複製した証明書を設定に使用できます。Tencent Cloudを例にとると、テストでは、カスタムでアップロードした証明書の有効性を検証しないことがわかりました。加速ドメイン名の実際のサイトと同じ証明書を使用して偽造することができます。偽造された証明書は、通常の状況下でCSのデフォルト証明書を置き換えると通信できませんが、クラウドサービスプロバイダのCDN全サイト加速とRedGuardに展開する場合、有効性は検証されず、C2インタラクティブトラフィックは正常に通信できます。
**以下はGithub上の既存のプロジェクトアドレスです**```bash
https://github.com/virusdefender/copy-cert
サンプルドメインのフロントエンドトラフィック側の証明書は解決されましたが、大規模なネットワークマッピングの観点から見ると、C2サーバーは依然として外部に露出しており、実際のC2サーバーと検出・関連付けられる可能性があります。この場合、RedGuardを使用してC2のフロンティングデフォルト証明書を変更し、匿名性を実現できます。

上記はC2サーバーの偽造証明書の効果です。脅威情報コミュニティのインテリジェンスにおいて、それが信頼でき、期限切れでないことがわかります。デジタル証明書を取得する主な方法は、クラウドサンドボックスでのサンプル分析中にリアルタイムで抽出・更新することですが、明らかに効果的に検証されていません。ステータス値は有効期限のみを検証します。証明書の信頼性検証は、通常の通信が達成できるかどうかのみに基づくべきです。
注意すべき点として、脅威情報コミュニティは、サンプルリクエストのSNIおよびHOSTアドレスを証明書インテリジェンスでマークしません。これは実際には誤検知を防ぐためです。私はこれが正しいと考えています。研究者の分析を支援する重要な基盤として、脅威情報は不完全である方が、誤った方向を指すよりも良いです。後続の分析において誤判断を引き起こす可能性があります。全サイトアクセラレーション用に証明書を設定することが通信トラフィック用の証明書を偽造することであるならば、RedGuard C2の事前応答証明書を設定することは、パブリックネットワークに展開された実際のC2サーバーの行動特性を偽造し、マッピング対策効果を達成することであり、非常に必要です。
証明書のシリアル番号を抽出:55e6acaed1f8a430f9a938c5、HEXエンコードを実行してTLS証明書フィンガープリントを取得:26585094245224241434632730821
| IP | ポート | プロトコル | サービス | 国 | 都市 | タイトル | 時間 |
|---|---|---|---|---|---|---|---|
| 103.211.xx.90 | 443 | https | Apache httpd | 中国 | 蘇州 | 百度图片-发现多彩世界 | 2023-08-28 |
| 223.113.xx.207 | 443 | https | JSP3 | 中国 | 徐州 | 403 Forbidden | 2023-08-28 |
| 223.112.xx.48 | 443 | https | JSP3 | 中国 | 徐州 | 403 Forbidden | 2023-08-28 |
| 223.113.xx.40 | 443 | https | JSP3 | 中国 | 徐州 | 403 Forbidden | 2023-08-28 |
| 223.113.xx.31 | 443 | https | JSP3 | 中国 | 405 Not Allowed | 2023-08-28 | |
| 223.113.xx.206 | 443 | https | JSP3 | 中国 | 徐州 | 403 Forbidden | 2023-08-28 |
検索結果数: 2291
サイバースペースマッピングを通じて、2,291の独立したIPアドレスが発見され、検証によりそれらすべてがBaiduに属するTLS証明書を持っていることが確認されました。通信トラフィックのみに基づいて悪意のある通信かどうかを判断することは困難です。しかし、ドメインフロントエンド + C2フロントエンドトラフィック施設のTLS証明書が偽造され、スペースマッピングと脅威情報に干渉し、誤った情報の関連付けを引き起こし、攻撃者のトラフィック特性をよりリアルに見せかけ、通常の通信トラフィックを偽装する目的を達成しました。

C2トラフィックフロントエンド施設の前に隠れた転送処理がなくても、RedGuardの証明書を変更することをお勧めします。デフォルトでは、現在サイバースペースマッピングで使用されている一般的なコンポーネントのフィンガープリント識別によって形成されるフィンガープリントライブラリは、識別に一般的なコンポーネントのデフォルト設定特性の動作を使用しています。異なるグループは、これらのカスタマイズプロセス中に異なるユニークな特性を示す可能性があります。もちろん、フィンガープリントの形成にはターゲットコンポーネントの一定の理解が必要であり、ターゲットのデフォルト特性を抽出し、関連するフィンガープリントを形成します。ここでは、RG証明書の行動特性がサイバースペースマッピングに使用され、パブリックネットワークに展開された多数のRGノードと関連付けられています。
著者がフィンガープリントを抽出できたことは驚くべきことではありませんが、それでもRedGuardユーザーはデフォルトの証明書情報を変更し、プロフェッショナルなハッカーになることをお勧めします:)