English Advisory →
CVE-2026-648499.3/CRITICALCISA KEV 등재CWE-918

MLflow Webhook 테스트 엔드포인트 SSRF(서버 측 요청 위조) 취약점 (CVE-2026-64849)

영향받는 벤더 / 생태계
mlflow
대상 컴포넌트 / 패키지
mlflow
권고문 발행일
2026-08-17

실무자 핵심 요약 (Executive Summary)

SECOPS ASSESSMENT
영향 대상

MLflow 버전 3.3.0 이상 3.15.0 미만 버전

파급 효과

인증되지 않은 공격자가 내부 네트워크 자원 및 클라우드 메타데이터 서비스(IMDS)에 접근하여 민감한 자격 증명 및 데이터를 탈취할 수 있습니다.

권장 조치

MLflow 버전을 3.15.0 이상으로 즉시 업그레이드하고, 패치 적용 전까지 외부 웹훅 테스트 엔드포인트 접근을 제한하십시오.

영향받는 제품 및 버전 범위

MLflow 3.3.0 버전부터 3.15.0 미만 버전 전체

권장 패치 및 임시 완화(Workaround) 가이드

PATCH & WORKAROUND

1. 공식 패치 적용 (권장)

MLflow 버전을 3.15.0 이상으로 업그레이드하십시오. 이 버전에서는 리다이렉트 시에도 대상 주소를 재검증하고 고정하는 로직이 반영되었습니다.

bash
# pip를 사용하는 경우
pip install --upgrade mlflow>=3.15.0

# poetry를 사용하는 경우
poetry add mlflow@latest

2. 임시 완화 조치 (패치 적용 전)

즉각적인 업그레이드가 어려운 경우, 다음과 같은 네트워크 및 인프라 수준의 완화 조치를 적용하십시오.

  • WAF(웹 애플리케이션 방화벽) 규칙 적용:

/api/2.0/mlflow/webhooks/.*/test 경로로 인입되는 외부 요청을 차단하십시오.

  • 클라우드 메타데이터 서비스(IMDS) 보호:

AWS 환경의 경우 IMDSv2를 필수로 활성화하고 홉 제한(Hop Limit)을 1로 설정하여 컨테이너/포드 내부에서 메타데이터에 접근하는 것을 방지하십시오.

  • 네트워크 아웃바운드 제한:

MLflow 서버가 실행되는 컨테이너 또는 인스턴스에서 내부 사설 IP 대역(10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) 및 링크 로컬 주소(169.254.169.254)로의 아웃바운드 요청을 방화벽(Security Group, NetworkPolicy 등)을 통해 차단하십시오.

권장 아키텍처 방어 통제 (Recommended Security Control)
Datadog Cloud & Kubernetes Security
실제 악용 사례가 보고된 취약점이므로, MLflow 인스턴스를 즉시 3.15.0 버전으로 업데이트하고 외부 노출을 최소화하십시오.

실행 중인 Docker 컨테이너와 Kubernetes 클러스터의 컨테이너 탈출 및 권한 상승을 실시간 감시하세요

이미지 빌드 시점뿐 아니라 실제 운영 중인 클러스터 내부의 eBPF 기반 커널 이벤트와 잘못된 IAM/RBAC 구성을 실시간으로 감사하고 경보를 받으세요.

K8s/Docker 이미지 실시간 CVE 매핑 지원

취약점 발생 원리 및 공격 메커니즘

MLflow AI 엔지니어링 플랫폼에서 심각한 수준의 서버 측 요청 위조(SSRF, CWE-918) 취약점이 발견되었습니다. 이 취약점은 인증이 필요 없는 POST /api/2.0/mlflow/webhooks/{id}/test 엔드포인트에서 발생합니다.

취약점 발생 원인 및 메커니즘:

  • 불완전한 검증: MLflow의 mlflow/utils/validation.py 내 _validate_webhook_url() 함수는 사용자가 제공한 최초 URL에 대해서만 유효성 검증을 수행합니다.
  • 리다이렉트 추적 및 재해석: 실제 웹훅 요청을 전송하는 mlflow/webhooks/delivery.py 모듈은 HTTP 리다이렉션(3xx)을 허용하며, 검증된 IP 주소를 고정(Pinning)하지 않은 채 호스트 이름을 다시 해석(Re-resolve)합니다.
  • 우회 공격: 공격자는 검증을 통과하는 외부 도메인을 입력한 후, 해당 도메인이 내부 IP 주소(예: 루프백 주소 127.0.0.1 또는 클라우드 메타데이터 서비스 주소 169.254.169.254)로 리다이렉트되도록 설정하여 검증 로직을 우회할 수 있습니다.

파급력: 이 취약점은 CVSS 9.3의 치명적(Critical) 등급으로 평가되었으며, CISA KEV(악용된 취약점 카탈로그)에 등재되어 실제 공격에 악용되고 있음이 확인되었습니다. 공격자는 이 취약점을 통해 내부 네트워크의 비공개 서비스에 접근할 수 있을 뿐만 아니라, AWS/GCP/Azure 등 클라우드 환경의 메타데이터 서비스(IMDS)로부터 임시 자격 증명(IAM Credentials)을 탈취하여 클라우드 인프라 전체를 장악할 수 있습니다.

공식 보안 권고문 및 참조 링크

NVD Original English Description

MLflow is an open source AI engineering platform for agents, large language models, and machine learning models. Starting in 3.3.0 and prior to 3.15.0, the unauthenticated POST /api/2.0/mlflow/webhooks/{id}/test endpoint calls _validate_webhook_url() in mlflow/utils/validation.py only for the original URL while mlflow/webhooks/delivery.py follows redirects and re-resolves the hostname without pinning the validated address, allowing attackers to reach internal or cloud metadata services and receive response_status and response_body. This issue is fixed in version 3.15.0.

SecOps Advisory Dispatch & RSS Feed

일간 취약점 브리핑 및 긴급 Zero-Day 경보 구독

보안 실무자와 인프라·백엔드 엔지니어를 위해 매일 아침 주요 취약점과 패치 우선순위를 요약해 발송합니다.

Slack / Teams / RSS 리더 연동: