Skip to content
KitploitKITPLOIT
도구블로그
Log in
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
RedWarden — 패킷 검사 및 가변 프로파일 상관 분석을 통해 블루 팀, AV, EDR, 스캐너를 차단하는 Cobalt Strike C2 리버스 프록시 | Kitploit
도구/GitHubGitHub/mgeeky/redwarden
Penetration Testing FrameworksReconnaissanceExploit FrameworksWeb Proxies & InterceptionIDS/IPS EvasionReverse EngineeringInformation GatheringNetwork SecurityCommand and ControlThreat IntelligenceRed Teaming
997138243년 전Kitploit 검토 완료
Archived
GitHubmgeeky/redwarden

RedWarden

패킷 검사 및 가변 프로파일 상관 분석을 통해 블루 팀, AV, EDR, 스캐너를 차단하는 Cobalt Strike C2 리버스 프록시

저장소 보기

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

RedWarden - 유연한 CobaltStrike Malleable Redirector

(이전에는 proxy2's의 malleable_redirector 플러그인으로 알려짐)

C2 리다이렉터의 IR 회복탄력성 수준을 한 단계 더 높여볼까요?

RedWarden

Red Teaming 업계에서는 사고 대응자와 교전하고 동시에 저항력 있는 C2 리다이렉터 네트워크를 제공하면서 사고 대응자들을 잘못된 방향으로 유도하는 여러 훌륭한 아이디어들을 보아 왔습니다.

이 작업은 그러한 많은 훌륭한 아이디어들을 하나의 가벼운 유틸리티로 결합하여, Apache2가 단순한 HTTP(S) 리버스 프록시로서의 근본을 모방합니다.

Malleable C2 프로필 이해, 알려진 불량 IP 주소 풀에 대한 지식, 그리고 새로운 검사 및 잘못된 라우팅 로직을 쉽게 추가할 수 있는 유연성을 결합하여 IR 검사에 대한 교묘한 퇴치 도구를 탄생시켰습니다.

RedWarden

잘못된 인바운드 패킷이 RedWarden에 도달하면 redirect, reset 또는 단순히 proxy하여 처리할 수 있습니다!

개요

이 프로그램은 HTTP/HTTPS 리버스 프록시 역할을 하며, 인바운드 C2 HTTP 요청에 여러 제한을 적용하여 Teamserver로 보낼 패킷과 드롭할 패킷을 선택합니다. 이는 Apache2의 mod_rewrite에서 규정된 .htaccess 파일 제한과 유사합니다.

RedWarden은 C2 리다이렉터 계층에서 IR/AV/EDR/Sandbox 회피 문제를 해결하기 위해 만들어졌습니다. 이 목적으로 사용되던 기존의 Apache2 + mod_rewrite 설정을 대체하기 위한 것입니다.

특징:

  • Malleable C2 프로필 파서: 인바운드 HTTP/S 요청을 Malleable 계약에 따라 엄격하게 검증하고 위반 시 이상 패킷을 드롭합니다 (Malleable Profiles 4.0+ 및 변종 포함).
  • 프록시 및 캐시(예: CloudFlare) 같은 중간 시스템에 의해 추가된 예상치 못한 원치 않는 HTTP 헤더를 필터 해제/복구하여 유효한 Malleable 계약을 준수하도록 합니다.
  • IT 보안 업체와 관련된 것으로 알려진 IPv4 풀 및 범위의 방대한 통합 블랙리스트
  • grep 가능한 출력 로그 항목 (Apache2 결합 액세스 로그 및 사용자 정의 RedWarden 형식 모두)으로 피어 연결 이벤트/문제 추적에 유용
  • 연결 피어의 IPv4 주소를 IP 지리적 위치/whois 정보에 대해 조회하고 미리 정의된 정규 표현식과 대조하여 신뢰할 수 있는 조직/국가/도시 외부에서 연결하는 피어를 배제하는 기능
  • 수락된 요청의 MD5 해시를 로컬 SQLite 데이터베이스에 기록하고 이전에 수락된 요청을 방지하여 내장된 재생 공격 완화
  • 특정 URL과 일치하는 요청을 다른 호스트로 전달하는 ProxyPass 문 정의 가능
  • 여러 Teamserver 지원
  • 무작위 순서로 제공되는 여러 리버스 프록시 호스트/리다이렉션 사이트 지원 - 이를 통해 트래픽 부하 분산 또는 더 다양한 인프라 구축 가능
  • 트래픽 중 일부 헤더가 손상된 경우 예상되는 Malleable 계약에 따라 HTTP 패킷 복구 가능
  • "내 Beacon이 CloudFlare/CDN/Domain Fronting에서 왜 작동하지 않는지" 문제 해결에 보낸 잠 못 이루는 밤은 이제 상세한 HTTP(S) 요청/응답 로그 덕분에 끝났습니다.

RedWarden은 입력으로 Malleable C2 프로필과 teamserver의 hostname:port를 받습니다. 그런 다음 제공된 Malleable 프로필 섹션을 구문 분석하여 계약을 이해하고, 이를 충족하는 인바운드 요청만 통과시키고 다른 요청은 잘못된 방향으로 유도합니다.

http-stager, http-get, http-post 같은 섹션과 해당 URI, 헤더, prepend/append 패턴, User-Agent는 모두 합법적인 Beacon 요청과 관련 없는 인터넷 소음 또는 IR/AV/EDR의 범위를 벗어난 패킷을 구별하는 데 사용됩니다.

이 프로그램은 다음에서 제공되는 훌륭한 알려진 불량 IP 범위를 활용합니다: curi0usJack 및 기타: https://gist.github.com/curi0usJack/971385e8334e189d93a6cb4671238b10

IP 주소 블랙리스트와 Reverse-IP DNS 쿼리 및 HTTP 헤더 검사를 통한 알려진 불량 키워드 조회를 함께 사용하면, 공격자 인프라를 조사하려는 승인되지 않은 피어에 대한 리다이렉터의 회복탄력성을 크게 향상시킬 수 있습니다.

잘못된 패킷은 세 가지 전략에 따라 잘못 라우팅될 수 있습니다:

  • redirect: 피어를 Rick Roll과 같은 다른 웹사이트로 단순히 리디렉션합니다.
  • reset: 즉시 TCP 연결을 종료합니다.
  • proxy: 다른 웹사이트에서 응답을 가져와서 복제/하이재킹된 웹사이트를 최대한 가깝게 모방합니다.

이 구성은 설정 파일에 규정되어 있습니다:```yaml

What to do with the request originating not conforming to Beacon, whitelisting or

ProxyPass inclusive statements:

- 'redirect' it to another host with (HTTP 301),

- 'reset' a TCP connection with connecting client

- 'proxy' the request, acting as a reverse-proxy against specified action_url

(may be dangerous if client fetches something it shouldn't supposed to see!)

Valid values: 'reset', 'redirect', 'proxy'.

Default: redirect

drop_action: redirect

아래 예시는 `redirect`를 `https://googole.com`으로 설정한 결과를 보여줍니다:

![redirect](https://assets.kitploit.com/production/public/readmes/4322/2ac28c863e766b5aaa2f225c33c225075c7042383d9c51860342a4da63cc6dcd.png)


현명하게 사용하고 안전을 유지하세요.

### 요구 사항

이 프로그램은 fork를 사용하여 여러 프로세스를 생성하므로 Linux 시스템에서만 실행할 수 있습니다.

또한 SSL 인증서 생성에 사용되는 `openssl` 시스템 명령어가 설치되어 있어야 합니다.

마지막으로, 다음 명령어로 Python3 PIP 요구 사항을 쉽게 설치할 수 있습니다:```shell
bash $ sudo pip3 install -r requirements.txt

사용법

사용 예시

최소 RedWarden의 config.yaml 설정 파일은 다음을 포함할 수 있습니다:```yaml port:

  • 80/http
  • 443/https

profile: jquery-c2.3.14.profile

ssl_cacert: /etc/letsencrypt/live/attacker.com/fullchain.pem ssl_cakey: /etc/letsencrypt/live/attacker.com/privkey.pem

teamserver_url:

  • 1.2.3.4:8080

drop_action: reset

그런 다음, 구성 파일의 경로를 제공하여 프로그램을 실행할 수 있습니다:```shell
bash$ sudo python3 RedWarden.py -c config.yaml

  [INFO] 19:21:42: Loading 1 plugin...
  [INFO] 19:21:42: Plugin "malleable_redirector" has been installed.
  [INFO] 19:21:42: Preparing SSL certificates and keys for https traffic interception...
  [INFO] 19:21:42: Using provided CA key file: ca-cert/ca.key
  [INFO] 19:21:42: Using provided CA certificate file: ca-cert/ca.crt
  [INFO] 19:21:42: Using provided Certificate key: ca-cert/cert.key
  [INFO] 19:21:42: Serving http proxy on: 0.0.0.0, port: 80...
  [INFO] 19:21:42: Serving https proxy on: 0.0.0.0, port: 443...
  [INFO] 19:21:42: [REQUEST] GET /jquery-3.3.1.min.js
  [INFO] 19:21:42: == Valid malleable http-get request inbound.
  [INFO] 19:21:42: Plugin redirected request from [code.jquery.com] to [1.2.3.4:8080]
  [INFO] 19:21:42: [RESPONSE] HTTP 200 OK, length: 5543
  [INFO] 19:21:45: [REQUEST] GET /jquery-3.3.1.min.js
  [INFO] 19:21:45: == Valid malleable http-get request inbound.
  [INFO] 19:21:45: Plugin redirected request from [code.jquery.com] to [1.2.3.4:8080]
  [INFO] 19:21:45: [RESPONSE] HTTP 200 OK, length: 5543
  [INFO] 19:21:46: [REQUEST] GET /
  [...]
  [ERROR] 19:24:46: [DROP, reason:1] inbound User-Agent differs from the one defined in C2 profile.
  [...]
  [INFO] 19:24:46: [RESPONSE] HTTP 301 Moved Permanently, length: 212
  [INFO] 19:24:48: [REQUEST] GET /jquery-3.3.1.min.js
  [INFO] 19:24:48: == Valid malleable http-get request inbound.
  [INFO] 19:24:48: Plugin redirected request from [code.jquery.com] to [1.2.3.4:8080]
  [...]

위 출력에는 승인되지 않았으며 당사의 C2 프로필과 호환되지 않는 인바운드 요청이 있었음을 지적하는 줄이 포함되어 있습니다. 이 요청은 제시된 호환되지 않는 User-Agent 문자열로 인해 차단되었습니다.``` [...] [DROP, reason:1] inbound User-Agent differs from the one defined in C2 profile. [...]

## 사용 사례

### 비콘 트래픽 발신지에 IP 지리적 위치 정보 부과하기

사전 피싱(Pre-Phish) 및 OSINT를 매우 잘 수행했습니다. 이제 타겟이 어디에 살고 있는지 알고 있으며, 트래픽이 어디에서 발생해야 하는지에 대한 단서를 가지고 있거나, 적어도 완전히 보조적인 트래픽을 탐지하는 방법을 알고 있습니다.
리디렉터에서 비콘 요청에 IP 지리적 위치 정보를 어떻게 부과할까요?

RedWarden이 도움을 줍니다!

예를 들어, 유럽의 폴란드에서 발생하는 트래픽만 수락하려고 합니다.
사전 피싱/OSINT 결과는 다음을 나타냅니다:

- `89.64.64.150`은 폴란드에서 발생하는 타겟 중 하나의 합법적인 IP입니다.
- `59.99.140.76`은 그렇지 않으며 일반 인터넷 노이즈 패킷으로 시스템에 도달했습니다.
도구 다운로드