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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/saereya/cve-2025-14847---mongobleed
Memory ForensicsVulnerability AnalysisExploitationPenetration TestingLearning & EducationDatabase Security
GitHubsaereya/cve-2025-14847---mongobleed

CVE-2025-14847---MongoBleed

CVE-2025-14847 (MongoBleed)에 대한 Go 언어 개념 증명 익스플로잇입니다. 이는 MongoDB 메모리 노출 취약점으로, 변조된 BSON 문서를 생성하여 오류 메시지를 통해 초기화되지 않은 서버 메모리를 유출합니다.

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

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

Mongobleed (CVE-2025-14847) – Go 개념 증명

이 저장소는 MongoDB 메모리 노출 취약점인 CVE-2025-14847 (일반적으로 Mongobleed라고 함)에 대한 Go 개념 증명 익스플로잇을 포함합니다.

이 PoC는 Joe Desimone의 원본 Python 익스플로잇을 Go로 재구현한 것이며, 다음에서 확인할 수 있습니다: https://github.com/joe-desimone/mongobleed

이 익스플로잇은 zlib 압축 해제 및 BSON 파싱 결함을 악용하여 취약한 MongoDB 서버에서 초기화되지 않은 메모리를 유출합니다.

블로그 게시물 읽기 - https://saereya.github.io/posts/mongobleed-cve-2025-14847/

취약점 개요

CVE-2025-14847은 MongoDB에서 압축된 OP_MSG 메시지를 부적절하게 처리하여 발생합니다. 부풀려진 문서 길이를 가진 변조된 BSON 문서를 생성하고 이를 OP_COMPRESSED 메시지로 감싸면, 서버가 압축 해제된 버퍼의 경계를 넘어 읽을 수 있습니다.

이로 인해 MongoDB는 남은 메모리를 BSON 필드 이름으로 해석할 수 있으며, 이후 오류 메시지에 그대로 반영됩니다. 이 과정을 다양한 오프셋에서 반복하면 서버 메모리 조각을 유출할 수 있습니다.

익스플로잇 기법

이 PoC는:

  • 위조된 문서 길이를 가진 최소 BSON 문서를 생성합니다
  • zlib을 사용하여 압축합니다
  • 압축된 메시지를 OP_COMPRESSED MongoDB 와이어 프로토콜 메시지로 래핑합니다
  • 인증 없이 TCP를 통해 직접 전송합니다
  • 오류 응답에서 유출된 메모리 조각을 파싱합니다

유출된 데이터는 다음과 같은 오류 문자열에서 추출됩니다:

  • field name '...'
  • type <n>

영향 받는 버전

이 취약점은 공식 패치 이전의 특정 MongoDB 버전에 영향을 미칩니다. 정확한 버전 범위는 MongoDB 보안 권고를 참조하십시오.

사용법

빌드:

root@kitploit:~
go build -o mongobleed

실행:

root@kitploit:~
./mongobleed --host <target> --port 27017

선택적 플래그: --min-offset: 시작 BSON 문서 길이 (기본값: 20) --max-offset: 종료 BSON 문서 길이 (기본값: 8192)

출력:

root@kitploit:~
[*] MongoBleed - CVE-2025-14847
[*] Targetting localhost:27017
[*] Offset:  20 -> 8192
[+] offset= 117 len=  51: ssions^\u0001f\bD\\��A6�;7\u0003��V%\u0019\u001a9ip
[+] offset= 119 len=  51: ssions^\u0001f\bD\\��A6�;7\u0003��V%\u0019\u001a9ip
[+] offset= 120 len=  51: ssions^\u0001f\bD\\��A6�;7\u0003��V%\u0019\u001a9ip
[+] offset= 121 len=  51: ssions^\u0001f\bD\\��A6�;7\u0003��V%\u0019\u001a9ip

면책 조항

이 코드는 교육 및 연구 목적으로만 제공됩니다.

소유하지 않거나 명시적 테스트 허가를 받지 않은 시스템에 대해 이 도구를 실행하지 마십시오. 무단 사용은 불법적이고 비윤리적일 수 있습니다.

크레딧

  • 원본 Python 익스플로잇:
    • Joe Desimone https://github.com/joe-desimone/mongobleed
도구 다운로드