Ollama 메모리 누수 재현 완료: CVE-2026-7482 상위 위험

🚨 Ollama 메모리 누수 취약점 재현 완료: CVE-2026-7482 상위 위험
보안 연구자들이재현에 성공한Ollama 메모리 누수 취약점(CVE-2026-7482)은heap out-of-bounds read취약점입니다:
- 영향 버전: Ollama 0.17.1 미만의 모든 버전
- 취약점 유형: 힙(Heap) 범위 밖 읽기(CWE-125)
- 공격 경로: /api/create → GGUF 로드 → 양자화 → 메모리 누수 → /api/push 외부 유출
- 누출 데이터: 환경 변수, API Keys, 시스템 프롬프트, 사용자 대화
- 인증 없음: /api/create 및 /api/push 엔드포인트에 인증 없음
🎯 취약점 핵심
GGUF 모델 로더 취약점
취약점은GGUF model loader에 있습니다:
- /api/create엔드포인트가 공격자가 제공한 GGUF 파일을 받아들입니다
- 텐서 오프셋과 크기(tensor offset과 size)가 파일의 실제 길이를 초과합니다
- 양자화 과정에서 할당된 힙 버퍼를 벗어난 영역을 읽습니다
- 위치: fs/ggml/gguf.go 및 server/quantization.go(WriteTo())
메모리 누출 내용
누출된 메모리 내용에는 다음이 포함될 수 있습니다:
| 누출 데이터 | 위험도 |
|---|---|
| 환경 변수 | 민감한 설정이 포함되어 있을 수 있음 |
| API Keys | 높음: API 키 노출 |
| 시스템 프롬프트 | 내부 설정 노출 |
| 동시 접속 사용자의 대화 데이터 | 높음: 개인정보 유출 |
데이터 유출 경로
누출된 메모리 내용은/api/push엔드포인트를 통해 외부로 유출될 수 있습니다:
- 모델 업로드: 결과 모델 아티팩트(artifact)를 업로드
- 공격자 레지스트리: 공격자가 통제하는 레지스트리에 업로드
- 인증 없음: 상류 배포 과정에서 엔드포인트에 인증 없음
⚠️ 위험 등급
CVSS 4.0 점수
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:H/SC:N/SI:N/SA:N/AU:Y/R:A/V:D/RE:L/U:Red
| 차원 | 점수 | 설명 |
|---|---|---|
| 공격 벡터 | 네트워크(AV:N) | 네트워크를 통한 공격 가능 |
| 공격 복잡도 | 낮음(AC:L) | 공격이 간단함 |
| 권한 요구 | 없음(PR:N) | 인증 불필요 |
| 사용자 상호작용 | 없음(UI:N) | 사용자 상호작용 불필요 |
| 기밀성 영향 | 높음(VC:H) | 기밀성에 미치는 영향 높음 |
| 가용성 영향 | 높음(VA:H) | 가용성에 미치는 영향 높음 |
📊 영향받는 배포 환경
기본 설정
Ollama의 기본 바인딩 값은127.0.0.1이지만,OLLAMA_HOST=0.0.0.0설정이 널리 사용되고 있습니다:
- 기본 바인딩: 127.0.0.1(로컬)
- 공개 노출: OLLAMA_HOST=0.0.0.0(널리 사용됨)
- 대규모 노출: 다수의 공인망 노출이 확인됨
고위험 시나리오
| 시나리오 | 위험도 |
|---|---|
| 공인망에 노출된 Ollama | 매우 높음: 직접 공격 가능 |
| 다중 사용자가 공유하는 Ollama | 높음: 다른 사용자의 대화 유출 가능 |
| 민감한 API Keys 포함 | 높음: API Keys 유출 |
| 로컬 배포 | 중간: 로컬 접근 필요 |
🔧 완화 조치
방안 1: 0.17.1+로 업그레이드(권장)
# 升级 Ollama # macOS brew upgrade ollama # Linux curl -fsSL https://ollama.com/install.sh | sh
수정 내용: 패치는 GGUF 로더의 범위 밖 읽기 문제를 수정했습니다.
방안 2: 네트워크 노출 제한
# 不要使用 0.0.0.0 绑定 # 保持默认 127.0.0.1 OLLAMA_HOST=127.0.0.1
방안 3: 방화벽 제한
# 限制 /api/create 和 /api/push 端点访问 # 只允许可信来源
방안 4: 비정상 GGUF 파일 모니터링
- GGUF 파일 검사: 텐서 오프셋과 크기가 합리적인지 확인
- /api/create 모니터링: 업로드된 GGUF 파일의 출처 기록
- /api/push 모니터링: 업로드 대상 레지스트리 기록
🚀 재현 상태
재현 완료: 보안 연구자들이 이 취약점을 성공적으로 재현했습니다:
- 재현 조건: Ollama < 0.17.1
- 공격 경로: 악성 GGUF 업로드 → 양자화 유발 → 메모리 누수
- 누수 검증: 환경 변수와 대화 데이터를 성공적으로 누출
- 외부 유출 검증: /api/push를 통한 데이터 외부 유출 성공
📅 패치 정보
| 정보 | 링크 |
|---|---|
| 수정 버전 | v0.17.1 |
| 패치 커밋 | 88d57d0483 |
| PR | #14406 |
📝 요약
Ollama CVE-2026-7482 메모리 누수 취약점재현 완료:
- Ollama 0.17.1 미만의 모든 버전에 영향
- 힙 범위 밖 읽기, CWE-125
- 누출: 환경 변수, API Keys, 시스템 프롬프트, 사용자 대화
- 외부 유출 경로: /api/push로 공격자 레지스트리에 업로드
- 인증 없는 엔드포인트: /api/create 및 /api/push
- 공인망 노출 위험: OLLAMA_HOST=0.0.0.0 널리 사용됨
- 완화: 0.17.1+로 업그레이드 또는 네트워크 노출 제한
재현된 고위험 취약점이므로 즉시 업그레이드하거나 노출을 제한하세요.