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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-7482-PoC — CVE-2026-7482에 대한 개념 증명 익스플로잇으로, Ollama의 GGUF 로더에서 발생하는 인증되지 않은 힙(heap) out-of-bounds 읽기 취약점을 악용하여, 조작된 모델 파일을 통해 메모리 유출을 시연합니다. | Kitploit
도구/GitHubGitHub/0x0oz/cve-2026-7482-poc
Vulnerability AnalysisExploitationWeb SecurityBinary AnalysisLearning & Education
GitHub0x0oz/cve-2026-7482-poc

CVE-2026-7482-PoC

CVE-2026-7482에 대한 개념 증명 익스플로잇으로, Ollama의 GGUF 로더에서 발생하는 인증되지 않은 힙(heap) out-of-bounds 읽기 취약점을 악용하여, 조작된 모델 파일을 통해 메모리 유출을 시연합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-7482: Ollama 힙 범위 밖 읽기 (1-Day PoC)

이 저장소는 CVE-2026-7482에 대한 1-day PoC(개념 증명) 공격 체인을 포함하고 있습니다. 이 취약점은 Ollama의 GGUF 모델 로더(0.17.1 이전 버전)에서 발생하는 인증되지 않은 OOB(범위 밖) 읽기 취약점입니다.

참고: 이는 1-day 연구 재현입니다. 저는 원본 CVE를 발견하지 않았습니다. 이 PoC는 공개된 권고 세부 정보를 기반으로 교육 및 방어 연구 목적으로 취약점의 메커니즘을 시연하기 위해 제작되었습니다.

취약점 개요

/api/create 엔드포인트에 악의적으로 제작된 잘린 GGUF 파일을 제공하면, 공격자는 fs/ggml/gguf.go 및 server/quantization.go의 양자화 파서가 할당된 힙 버퍼를 넘어 읽도록 강제할 수 있습니다. 유출된 메모리는 이후 /api/push 엔드포인트를 통해 결과 모델 아티팩트를 공격자가 제어하는 Docker 레지스트리로 푸시하여 외부로 유출됩니다.

기술적 세부 사항: 익스플로잇 프리미티브

이 1-day 연구에서 크래시를 재현하는 것은 간단했지만, 서버를 크래시시키거나 API 검증 차단에 걸리지 않고 안정적인 유출을 달성하려면 특정 아키텍처 위조가 필요했습니다:

  1. 프론트엔드 검증 우회: 페이로드는 Ollama API의 엄격한 사전 검사를 통과하기 위해 F16(general.file_type = 1)로 태그되어야 합니다.
  • 양자화기 강제: 우리는 Q4_K_M 다운 양자화를 요청합니다. 페이로드가 F16으로 인식되므로 C++ ggml 백엔드는 안전한 1:1 메모리 복사를 수행하는 대신 페이로드를 처리하도록 강제됩니다.
  • 완벽한 블록 정렬: 대상 텐서(token_embd.weight)는 가장 안쪽 차원이 정확히 256인 2D 행렬(예: [num_rows, 256])로 형성되어야 합니다. 이는 Q4_K_M 블록 요구 사항과 엄격히 정렬되어 백엔드가 레이어를 건너뛰는 것을 방지합니다.
  • 물리적 잘림: 물리적 파일은 32바이트로 잘립니다. 행렬 곱셈 루프가 실행될 때 EOF에 도달하여 인접한 힙 공간으로 직접 초과 읽기를 수행합니다.
  • 사전 요구 사항

    root@kitploit:~
    pip install requests numpy gguf
    

    또한 유출된 Docker 레이어 푸시를 수신하려면 Ngrok과 같은 공개적으로 접근 가능한 HTTP 리스너가 필요합니다.

    사용 방법

    1. 악성 레지스트리 시작 유출된 메모리 블롭을 수신할 리스너를 시작합니다.

    root@kitploit:~
    sudo python3 registry.py
    

    2. 악성 페이로드 위조 잘린 GGUF 파일을 생성합니다. 스크립트 내부의 TARGET_LEAK_SIZE_MB를 조정하여 요청당 스크랩할 힙 메모리 양을 제어할 수 있습니다. (권장: 매핑되지 않은 페이지의 세그폴트를 피하기 위해 0.5MB ~ 2.0MB).

    root@kitploit:~
    python3 forge.py
    

    3. 익스플로잇 실행 exploit.py를 편집하여 대상 IP와 악성 레지스트리 URL을 포함시킨 후 실행합니다:

    root@kitploit:~
    python3 exploit.py
    

    4. 아티팩트 분석 레지스트리는 유출된 힙 덤프를 exfils/ 디렉토리에 저장합니다.

    데이터 무결성에 관한 참고 사항(양자화 함정): 익스플로잇이 최대 수 메가바이트의 서버 힙 메모리를 성공적으로 캡처하고 유출하지만, 데이터는 OOB 읽기 중에 Ollama의 Q4_K_M 다운 양자화 알고리즘을 거치게 됩니다. 백엔드는 원시 메모리 바이트를 float16으로 캐스팅하고 손실이 있는 4비트 블록 압축 방식을 적용합니다. 결과적으로 유출된 메모리는 수학적으로 변형됩니다. 표준 ASCII 추출 도구는 바이너리 쓰레기를 생성하므로, 이 특정 강제 경로를 통한 평문 자격 증명 복구는 실질적으로 불가능합니다.

    면책 조항

    이 프로젝트는 교육 및 승인된 취약점 연구 목적으로만 제공됩니다. 소유하지 않거나 명시적 테스트 권한이 없는 시스템에 이 도구를 사용하지 마십시오.

    도구 다운로드