Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-61301 — CVE-2025-61301 개념 증명으로, 재귀적 프로세스 포크를 통해 CAPEv2에서 분석 거부(denial-of-analysis)를 유발하며, MongoDB BSON 한도 및 orjson 직렬화 오류를 트리거하여 불완전한 악성코드 동작 보고서를 초래합니다. | Kitploit
도구/GitHubGitHub/egkritsis/cve-2025-61301
Dynamic Analysis (Sandboxing)Vulnerability AnalysisExploitationMalware AnalysisPenetration Testing
GitHubegkritsis/cve-2025-61301

CVE-2025-61301

CVE-2025-61301 개념 증명으로, 재귀적 프로세스 포크를 통해 CAPEv2에서 분석 거부(denial-of-analysis)를 유발하며, MongoDB BSON 한도 및 orjson 직렬화 오류를 트리거하여 불완전한 악성코드 동작 보고서를 초래합니다.

저장소 보기
2710개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-61301 - CAPEv2: 재귀적 프로세스 포킹을 통한 분석 거부

설명

CAPEv2(커밋 52e4b43, 2025-05-17)의 reporting/mongodb.py 및 reporting/jsondump.py에 영향을 미치는 고위험(High-Severity) 분석 거부(Denial-of-analysis) 취약점으로, 샘플을 제출할 수 있는 공격자가 샌드박스에서 샘플이 실행될 때 MongoDB BSON 한도 또는 orjson 재귀 오류를 트리거하는 심층 중첩 또는 과대한 동작 데이터를 생성하여 불완전하거나 누락된 동작 분석 보고서를 유발할 수 있습니다.


CVSS 점수

CVSS v3.1: 7.5 (High)
벡터: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H


작성자 / 연구자

  • Evgenios Gkritsis - 그리스 아테네 경제경영대학교 정보학과
  • Constantinos Patsakis - 그리스 피레우스대학교 정보학과
  • George Stergiopoulos - 그리스 아테네 경제경영대학교 정보학과

세부 정보

이 취약점의 근본 원인은 동적 악성코드 분석 중 생성되는 크고 깊이 중첩된 동작 보고서를 CAPEv2가 처리하는 방식에 있습니다.

  • MongoDB BSON 문서 크기 한도:
    CAPEv2는 16MB BSON 문서 크기 한도[1]가 있는 MongoDB를 사용하여 분석 보고서를 저장합니다.
    보고서가 이 크기를 초과하면(대개 방대한 프로세스 트리, API 호출 또는 재귀 데이터로 인해) 데이터베이스가 삽입을 거부하여 보고서 생성이 실패합니다.

  • MongoDB 중첩 깊이 한도:
    MongoDB는 또한 BSON 문서당 최대 100단계 중첩 깊이를 적용합니다.
    재귀적 악성코드 동작은 이 한도를 쉽게 초과할 수 있으며, 문서 크기가 16MB 미만인 경우에도 삽입 실패로 이어집니다.

  • Python JSON 직렬화 한도:
    CAPEv2는 결과를 JSON으로 직렬화하기 위해 Python의 orjson 라이브러리에 의존합니다.
    깊게 중첩되거나 재귀적인 구조는 직렬화기가 Python의 재귀 한도에 도달하게 하여 직렬화 실패와 보고서 생성 중단을 초래합니다 [2].

  • 가지치기 및 오류 처리:
    CAPEv2는 보고서의 큰 부분을 점진적으로 가지치기(자식 노드 또는 전체 프로세스 하위 트리 제거)하여 이러한 문제를 완화하려고 시도합니다.
    그러나 동작 복잡성이 가지치기 임계값을 초과하면 이는 충분하지 않으며, 보고서 저장 실패가 반복됩니다.


실제 발현 형태

  • 긴 시간 제한(timeout)과 복잡한 페이로드를 가진 분석 작업은 이러한 한도를 트리거하는 대형 보고서를 생성합니다.
  • 시스템은 JSON 직렬화 중 MongoDB OperationFailure Code 15 오류와 "Recursion limit reached"(재귀 한도 도달) 오류를 기록합니다.
  • 최종 보고서는 종종 동작 데이터 없음을 표시하거나 보고 실패를 나타내어, 악성코드가 양성 또는 비활성 상태였던 것처럼 보이게 합니다.

영향

이것은 CAPEv2의 분석 거부 취약점으로, 동적 분석 엔진이 동작 활동을 캡처하거나 보고하지 못하게 할 수 있습니다. 악용 시 공격자는 동작 탐지를 우회하고 불완전하거나 누락된 분석 보고서를 생성할 수 있습니다.

주요 영향

  • 탐지 우회: 악성 동작이 기록되거나 보고되지 않아 분석 결과에서 악성코드가 깨끗하거나 양성으로 보일 수 있습니다.
  • 허위 신뢰: CAPEv2는 가시적인 오류 없이 분석을 완료할 수 있지만 동작 로깅이 부분적으로 또는 완전히 실패하여 분석가에게 잘못된 안정감을 줄 수 있습니다.
  • 재사용 가능한 우회 기법: 이 기법은 로더, 드로퍼 또는 스테이징 페이로드에 포함될 수 있어 여러 캠페인에 걸쳐 재사용할 수 있습니다.
  • 악용 용이성: 이 기법은 재현이 간단하고 깊은 기술적 전문 지식을 요구하지 않아 대량 배포 또는 레드팀 도구로 매력적입니다.

후속 영향

트라이지(triage) 또는 위협 인텔리전스 강화를 위해 CAPEv2에 의존하는 파이프라인에서 이 결함은 다음을 초래할 수 있습니다:

  • IOC 누락
  • 고급 위협의 오분류
  • 불완전한 포렌식 타임라인

영향을 받는 제품

CAPEv2 — 저장소: https://github.com/kevoreilly/CAPEv2

관련 커밋 / 빌드 정보

  • 커밋 해시: 52e4b43a2cb508d3483819042cf8e4d8348f3a05
  • 커밋 날짜: 2025년 6월 17일 화요일 — 16:09:50 (UTC+1)
  • 작성자: Kevin O'Reilly ([email protected])
  • 브랜치: master
  • 관련 PR / 머지: PR #2624 — enzok/updates-01

증거 표

다음 표는 여러 분석 작업의 증거를 보여 주며, 복잡성과 지속 시간이 증가함에 따라 MongoDB 및 직렬화 실패가 발생하여 불완전하거나 누락된 동작 보고서가 생성되는 방식을 보여줍니다.

시간 제한(초)사용자 정의 설정지속 시간(초)기록된 프로세스 수BSON 로그(파일 / 크기)Report.json 크기(KB)오류 / 경고동작 상태
60enforce-timeout4132425 / 126 KB613–동작 정상
60–2523839 / 200 KB923–동작 정상
60full-proc-memory-dumps, import-reconstruction-proc-dumps, enforce-timeout, syscall2304243 / 230 KB1054–동작 정상
100full-proc-memory-dumps, import-reconstruction-proc-dumps, enforce-timeout, syscall3306162 / 318 KB1482–동작 정상
100–2778182 / 493 KB2032–동작 정상
120full-proc-memory-dumps, import-reconstruction-proc-dumps, enforce-timeout, syscall3407273 / 383 KB1793–동작 정상
120––8889 / 475 KB2228–동작 정상
180full-proc-memory-dumps, import-reconstruction-proc-dumps, enforce-timeout, syscall4149091 / 492 KB2356MongoDB Code 15동작 없음
180–3238889 / 475 KB2228–동작 정상
200–413119120 / 645 KB3174MongoDB Code 15동작 없음
200full-proc-memory-dumps, import-reconstruction-proc-dumps, enforce-timeout––144 / 726 KB–재귀 한도 도달, MongoDB Code 15보고 실패
300–513146147 / 779 KB3676MongoDB Code 15동작 없음
300full-proc-memory-dumps, import-reconstruction-proc-dumps, enforce-timeout, syscall––167 / 892 KB–재귀 한도 도달, MongoDB Code 15보고 실패

표 1: 작업 복잡성, 보고서 크기 및 실패 조건 간의 상관관계를 보여주는 CAPEv2 분석 결과

개념 증명(PoC)

요약

5,000개의 프로세스를 생성하고 런타임에 다중 라운드 XOR 복호화를 수행하여 실제적인 우회를 에뮬레이션합니다. 맞춤형 빌드(다른 재귀 라운드, 키 길이 또는 프로세스 규모)가 필요한 경우 작성자에게 맞춤 버전을 문의하십시오.

데모 실행:

poc\vathos_demo.exe <IP> <PORT>

연결 시도를 관찰하려면 지정된 IP/PORT에서 리스너(예: nc, ncat, Metasploit 또는 모든 C2 리스너)가 실행 중인지 확인하십시오. 정상적으로 작동하는 샌드박스에서는 연결 시도가 표시되지만, 설명된 분석 거부 조건에서는 해당 연결이 CAPEv2 보고서에 나타나지 않을 수 있습니다.

테스트를 위한 권장 CAPEv2 구성

  • 시간 제한 범위: 180+초

변경할 옵션:

  • full-proc-memory-dumps 사용 / 미사용
  • import-reconstruction-proc-dumps 사용 / 미사용
  • store_compressed = yes 및 store_compressed = no

이 테스트에서는 MongoDB와 orjson이 기본 한도를 사용하고 있는지 확인하십시오.

예상 결과

프로세스 트리의 깊이와 복잡성이 증가함에 따라 다음과 같은 보고 실패가 발생할 수 있습니다:

  • MongoDB Code 15(BSON 문서 크기 초과)
  • BSON 중첩 한도 초과
  • Python / orjson 재귀 한도 도달

CAPEv2는 다음을 수행할 수 있습니다:

  • 전체 보고서 생성 실패
  • 동작 데이터 누락
  • 웹 인터페이스에서 응답하지 않는 동작 표시
  • 악성 활동 탐지 실패

그림 1 - 백엔드 로그는 JSON 덤프 경고, orjson/직렬화 오류 및 MongoDB OperationFailure 항목을 보여줍니다. 그림 1 - 백엔드 로그

그림 2 - 대시보드: failed_analysis 그림 2 - 분석 작업 상태

그림 3 - 동작 탭: "죄송합니다! 동작이 없습니다." 그림 3 - 실행에도 불구하고 동작 페이지가 비어 있음


참고 문헌

  1. “MongoDB 한도 및 임계값 - 데이터베이스 매뉴얼 - MongoDB Docs.” https://www.mongodb.com/docs/manual/reference/limits/
  2. orjson — 빠르고 정확한 Python JSON 라이브러리. https://github.com/ijl/orjson
  3. https://www.cve.org/CVERecord?id=CVE-2025-61301
도구 다운로드