
JA3/JARM 지문 무작위화, 도메인 프론팅, 유연한 C2 프로필 유효성 검사, IP 화이트리스트를 통해 블루 팀, AV, EDR, 사이버 공간 매핑을 회피하는 C2 프론트 흐름 제어 도구입니다.
English | 中文文档

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**.

**구성 파일 내용:**

인증서 구성 옵션은 주로 샘플과 C2 프런트 인프라 간의 SSL 인증서 암호화 HTTPS 통신에 대한 구성 정보를 위한 것입니다. 프록시는 주로 역방향 프록시 트래픽의 제어 옵션을 구성하는 데 사용됩니다. 구체적인 사용법은 아래에서 자세히 설명합니다.
SSL 인증서 암호화 HTTPS 통신은 RedGuard가 실행되는 디렉터리 아래의 cert-rsa/ 디렉터리에 생성됩니다. 구성 파일을 수정하여 도구의 기본 기능을 시작 및 중지할 수 있습니다 **(인증서의 일련 번호는 타임스탬프에 따라 생성되므로 이 기능과 연관될 걱정은 하지 마세요)**. 자체 인증서를 사용하려면 이름을 ca.crt와 ca.key로 바꾸면 됩니다.```bash
openssl x509 -in ca.crt -noout -text

임의의 TLS JARM 지문은 RedGuard가 시작될 때마다 업데이트되어 C2 인프라를 인증하는 데 사용되는 것을 방지합니다.

자체 인증서를 사용하는 경우, 구성 파일의 HasCert 매개변수를 true로 수정하여 JARM 난독화 무작위화로 인한 CipherSuites 암호화 제품군과 사용자 정의 인증서의 비호환성으로 인해 발생하는 정상적인 통신 문제를 방지합니다.```bash
HasCert = false
### 위조된 TLS 인증서
C2 트래픽을 숨기기 위해 Domain Fronting을 배포할 때, 가속 도메인 이름은 기본적으로 HTTPS 인증서 정보가 없습니다. 이는 분명히 문제가 되므로, 도메인 이름을 구성할 때 인증서 설정에 주의해야 합니다. 이는 샘플이 도메인 프론트엔드 트래픽인지 판단하는 기본 기준이기도 합니다.

[^Tencent Cloud]: 콘텐츠 전송 네트워크 인증서 구성
이 글을 읽으신 후 몇 가지 질문이 있으실 거라 생각합니다. **구성된 인증서를 어떻게 얻나요? 인증서를 직접 애플리케이션에 사용하면 기대하는 익명 효과를 충족하지 못합니다.** 여기서는 복제된 인증서를 사용하여 구성할 수 있습니다. Tencent Cloud를 예로 들어, 테스트에서 사용자 정의 업로드 인증서의 유효성을 검증하지 않는다는 것을 발견했습니다. 가속 도메인 이름의 실제 사이트와 동일한 인증서를 사용하여 위조할 수 있습니다. 위조된 인증서는 일반적인 상황에서 CS의 기본 인증서를 교체할 때 통신할 수 없지만, 클라우드 서비스 제공업체 CDN 전사이트 가속 및 RedGuard에 배포될 때 유효성을 검증하지 않으며, C2 상호작용 트래픽은 정상적으로 통신할 수 있습니다.
**다음은 Github에 있는 기존 프로젝트 주소입니다.**```bash
https://github.com/virusdefender/copy-cert
샘플 도메인의 프론트엔드 트래픽 측 인증서가 해결되었지만, 대규모 네트워크 매핑 관점에서 볼 때 C2 서버는 여전히 외부에 노출되어 있으며 실제 C2 서버와 탐지 및 연관될 수 있습니다. 이때 RedGuard를 사용하여 C2의 프론팅 기본 인증서를 수정하면 익명성을 확보할 수 있습니다.

[^intelligence information]: TLS 인증서
위는 C2 서버 위조 인증서의 효과입니다. Threatbook 커뮤니티의 인텔리전스에서 신뢰할 수 있고 만료되지 않은 것을 확인할 수 있습니다. 디지털 인증서를 획득하는 주요 방법은 클라우드 샌드박스에서 샘플 분석 중에 실시간으로 추출 및 업데이트하는 것이지만, 분명히 유효하게 검증되지는 않습니다. 상태 값은 만료 시간만 검증합니다. 인증서 신뢰 검증은 정상적인 통신이 가능한지 여부에만 기반해야 합니다.
Threatbook 인텔리전스는 샘플 요청의 SNI 및 HOST 주소를 인증서 인텔리전스와 함께 표시하지 않는다는 점에 유의해야 합니다. 이는 실제로 오탐을 방지하기 위한 것입니다. 이는 올바른 접근 방식이라고 생각합니다. 연구자의 분석을 지원하는 중요한 기준으로서 위협 인텔리전스는 완전하지 않더라도 잘못된 방향을 제시하지 않는 것이 좋습니다. 잘못된 방향은 후속 분석에서 오판을 초래할 수 있기 때문입니다. 전체 사이트 가속을 위해 인증서를 구성하는 것이 통신 트래픽에 대한 인증서 위조라면, RedGuard C2의 사전 응답 인증서를 구성하는 것은 공용 네트워크에 배포된 실제 C2 서버의 행동 특성을 위조하여 매핑 방지 효과를 얻는 것입니다. 이는 매우 필요합니다.
인증서 일련번호 추출: 55e6acaed1f8a430f9a938c5, HEX 인코딩하여 TLS 인증서 지문 획득: 26585094245224241434632730821
| IP | 포트 | 프로토콜 | 서비스 | 국가 | 도시 | 제목 | 시간 |
|---|---|---|---|---|---|---|---|
| 103.211.xx.90 | 443 | https | Apache httpd | 중국 | Suzhou | 百度图片-发现多彩世界 | 2023-08-28 |
| 223.113.xx.207 | 443 | https | JSP3 | 중국 | Xuzhou | 403 Forbidden | 2023-08-28 |
| 223.112.xx.48 | 443 | https | JSP3 | 중국 | Xuzhou | 403 Forbidden | 2023-08-28 |
| 223.113.xx.40 | 443 | https | JSP3 | 중국 | Xuzhou | 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 | 중국 | Xuzhou | 403 Forbidden | 2023-08-28 |
검색 결과 수: 2291
사이버스페이스 매핑을 통해 2,291개의 독립 IP 주소가 발견되었고, 검증 결과 모두 Baidu에 속한 TLS 인증서를 가지고 있음이 확인되었습니다. 통신 트래픽만으로 악성 통신 여부를 판단하기는 어렵습니다. 그러나 도메인 프론트엔드 + C2 프론트엔드 트래픽 설비에 대한 TLS 인증서를 위조하여 공간 매핑 및 위협 인텔리전스를 성공적으로 방해함으로써 잘못된 정보 연관을 유발하고, 공격자의 트래픽 특성을 더욱 현실적으로 만들어 정상 통신 트래픽을 위조하는 목적을 달성했습니다.

C2 트래픽 프론트엔드 설비 앞에 숨겨진 포워딩 처리가 없더라도 RedGuard의 인증서를 변경하는 것이 좋습니다. 기본적으로 현재 사이버스페이스 매핑에서 사용되는 일반적인 구성 요소의 지문 식별을 통해 형성된 모든 지문 라이브러리는 식별을 위해 일반적인 구성 요소의 기본 구성 특성의 행동을 사용합니다. 서로 다른 그룹은 이러한 사용자 정의 과정에서 다양한 고유 특성을 보일 수 있습니다. 물론 지문을 형성하려면 대상 구성 요소에 대한 어느 정도의 이해가 필요하며, 이를 통해 대상의 기본 특성을 추출하고 연관된 지문을 형성할 수 있습니다. 여기서는 RG 인증서의 행동 특성을 사이버스페이스 매핑에 사용하여 공용 네트워크에 배포된 많은 RG 노드와 연관시킵니다.
저자가 지문을 추출할 수 있었다는 것은 놀라운 일이 아니지만, RedGuard 사용자에게는 기본 인증서 정보를 수정하고 전문적인 해커가 되기를 권장합니다:)