MLflow는 에이전트, 대규모 언어모델(LLM), 머신러닝 모델을 위한 오픈소스 AI 엔지니어링 플랫폼이다. 이 플랫폼의 웹훅(webhook) 전송 기능에 무인증 상태로 악용 가능한 SSRF(Server-Side Request Forgery) 취약점 CVE-2026-64849가 보고되어 CISA KEV(Known Exploited Vulnerabilities) 카탈로그에 등재됐다. 이 글은 취약점의 작동 방식, 영향 범위, 수정 사항까지 정리한다.
개요

CVE-2026-64849는 MLflow 3.15.0 이전 버전에서 발생하는 무인증 full-read SSRF 취약점이다. MLflow는 웹훅 URL 검증에 mlflow/utils/validation.py의 _validate_webhook_url() 함수를 사용해 웹훅 호스트명을 해석하고 비공개(내부) IP를 거부하도록 설계했다. 문제는 이 검증이 원본 URL에만 적용된다는 점이다. 실제 요청 전송을 담당하는 mlflow/webhooks/delivery.py는 HTTP 리다이렉트를 그대로 따르고, 검증 단계에서 확정된 주소를 고정하지 않는다.
그 결과, 인증을 요구하지 않는 POST /api/2.0/mlflow/webhooks/{id}/test 엔드포인트를 통해 공격자가 내부 네트워크나 클라우드 메타데이터 서비스에 도달하고, response_status(응답 상태)와 response_body(응답 본문)를 받아낼 수 있다. CVE Project 공식 기록은 이를 확인한다.
이 취약점은 CISA KEV 카탈로그에 등재되어 있으며, 공식 수정 버전은 3.15.0이다. CISA KEV 등재 기록에 따르면 이 SSRF 취약점은 공격자가 내부 또는 클라우드 메타데이터 서비스에 도달해 응답 상태와 응답 본문을 받아낼 수 있는 것으로 기술된다.
KEV 등재 시점(날짜)은 현재 확인된 자료에 없어, 실제 악용이 언제 시작됐는지는 단정할 수 없다.
영향 범위
영향을 받을 수 있는 범위는 다음과 같이 정리된다.
- 버전 범위: MLflow 3.15.0 이전 버전의 웹훅 전송 기능. 수정은 3.15.0에서 적용됐다.
- 엔드포인트 특성:
POST /api/2.0/mlflow/webhooks/{id}/test엔드포인트는 인증을 요구하지 않는다. - 방어 우회 조건: 3.10.0에 도입된 SSRF 방어(
_validate_webhook_url)가 적용돼 있으나, 리다이렉트·DNS rebinding으로 우회 가능한 상태의 환경. 이 방어만 신뢰하면 여전히 취약하다.
영향의 핵심은 무인증으로 내부 네트워크나 클라우드 메타데이터 서비스에 도달해 응답을 받아낼 수 있다는 점이다. MLflow GitHub의 기술 보고는 이 취약점이 클라우드 인스턴스 메타데이터 엔드포인트로의 SSRF를 가능하게 하고, 이를 통해 IAM 자격 증명과 클라우드 secret이 유출될 수 있다고 기술한다.
이어서 한 단계 더 나아가면, 유출된 자격 증명·secret이 악용될 경우 해당 클라우드 계정·리소스에 대한 추가 접근으로 이어질 수 있다. 다만 이는 자격 정보 노출에 기반한 조건부 해석이지, 증거가 직접 기술한 사실은 아니다. 횡단 이동 자체는 독립적으로 확인된 사실이 아니므로 과장 없이 조건부로만 제시한다.
또한 현재 확인된 자료에는 수치형 심각도(벤더 CVSS 점수)가 포함돼 있지 않다. 따라서 심각도를 수치로 제시하거나 정량적 우선순위를 단정하지 않는다. 3.10.0 이전 빌드의 구체적 방어 상태도 상세히 기술돼 있지 않아, 취약점 범위(3.15.0 이전)는 명확하되 그 이전 버전의 방어 수준은 확인한 바 없다.
기술적 분석
취약점의 근원은 '검증과 전송의 불일치'에 있다. SSRF 가드 _validate_webhook_url()(3.10.0, PR #20747 도입)은 웹훅 호스트명을 해석해 비공개(내부) IP를 거부한다. 그러나 MLflow의 보안 공지(GHSA-7gwp-5pfp-969j)에 따르면 이 가드는 우회 가능하다. 전송 단계에서 allow_redirects=False 없이 HTTP 리다이렉트를 따르고, 검증 당시 확정된 IP를 고정하지 않기 때문이다.
작동 흐름은 다음과 같이 이해할 수 있다. 원본 URL은 비공개 IP가 아니라는 조건으로 검증을 통과한다. 하지만 실제 전송 과정에서 DNS rebinding이나 HTTP 리다이렉트를 거치면, 같은 호스트명이 내부 네트워크나 클라우드 메타데이터 엔드포인트로 다시 해석될 수 있다. 검증은 원본 URL에 대해서만 수행되며, 전송 단계의 리다이렉트 추종과 호스트명 재해석 과정에서 검증된 주소가 고정되지 않기 때문에, 재해석된 주소로 요청이 전송될 수 있다.
이 취약점이 full-read인 이유는 응답이 호출자에게 반환되기 때문이다. response_status와 response_body가 그대로 돌아오므로, 공격자는 내부 서비스나 메타데이터에서 반환된 데이터를 직접 읽어낼 수 있다. AUTHENSOR의 GitHub 보고(Issue #24179)는 정확히 이 지점, 즉 클라우드 인스턴스 메타데이터 엔드포인트 접근과 그로 인한 자격 증명·secret 유출을 기술한다.
수정 사항에 대해선 명확하다. MLflow v3.15.0 릴리스는 PR #24258을 통해 웹훅 전송의 DNS-rebinding SSRF 우회를 수정했다. 즉, 3.15.0이 이 우회 경로를 막는 공식 버전이다.
공개 PoC·익스플로잇 분석
이 취약점에 대해 공개적으로 확인된 악용 근거가 있다. CISA KEV 등재와 함께, AUTHENSOR가 MLflow 저장소에 제출한 GitHub Issue #24179가 DNS rebinding으로 웹훅 SSRF 방어를 우회하는 경로를 공개적으로 기술한다.
- 출처: MLflow 공식 저장소의 공개 이슈(Issue #24179, AUTHENSOR 보고)와 CISA KEV 카탈로그 등재 기록.
- 전제조건: MLflow 인스턴스가 3.15.0 이전 버전이고, 인증을 요구하지 않는
POST /api/2.0/mlflow/webhooks/{id}/test엔드포인트에 도달할 수 있는 것. - 입증 범위: 공개 보고는 웹훅 SSRF 방어의 DNS rebinding 우회, 클라우드 인스턴스 메타데이터 엔드포인트로의 SSRF 도달, 그리고 그로 인한 IAM 자격 증명과 클라우드 secret 유출을 기술한다. 별도 악용 도구 또는 재현 스크립트의 존재 여부는 자료에 명시되어 있지 않다.
- 운영상 의미: 우회 경로가 공개 문서화된 상태이므로, 실제 악용 가능성을 낮게 볼 근거가 없다. 3.15.0 업그레이드가 우선적으로 처리돼야 한다. 공개 보고가 다루지 않는 세부 악용 방식은 단정하지 않는다.
대응 방안
확인된 사실에 기반한 대응의 핵심은 명확하다. 이 취약점은 3.15.0에서 수정됐고, CISA KEV 카탈로그에 등재되어 있다.
- 3.15.0 업그레이드: MLflow v3.15.0 릴리스가 웹훅 전송의 DNS-rebinding SSRF 우회를 PR #24258로 수정한 것이 확인된 수정 사항이다.
- KEV 등재 기반 우선순위: 이 취약점이 실제로 악용된 것으로 확인된(KEV 등재) 상태이므로, 3.15.0으로의 업그레이드를 우선적으로 처리해야 한다.
한계로, 현재 확인된 자료에는 수치형 심각도 점수와 KEV 등재 날짜가 없어 정량적 시급성 판단에는 한계가 있다.
참고자료
- CVE-2026-64849 (CVE List V5 record)
- GHSA-7gwp-5pfp-969j: Unauthenticated full-read SSRF in MLflow webhook delivery
- MLflow release v3.15.0
- Issue #24179: DNS rebinding bypass of webhook SSRF protection enables cloud metadata access
- CISA Known Exploited Vulnerabilities Catalog entry for CVE-2026-64849
함께 읽으면 좋은 글
- CVE-2026-8037: Progress LoadMaster 무인증 명령어 주입 RCE, KEV 등재와 실제 악용 시도가 확인됐다
- CVE-2026-72898: Metabase 인가 없는 SQL 인젝션, CISA KEV 등재와 자체 호스팅 인스턴스 점검
- CVE-2025-62593: Safari·Firefox DNS rebinding을 통한 Ray 개발 호스트 RCE, CISA KEV 등재
본 콘텐츠는 AI 기술로 작성된 분석 리포트를 포함하고 있습니다. 내용 중 사실과 다르거나 보완이 필요한 정보를 발견하셨으면 댓글을 통해 의견을 부탁드립니다. 여러분의 피드백은 더 정확한 보안 정보 공유에 큰 도움이 됩니다.
댓글 (0)
댓글을 작성하려면 로그인이 필요합니다.
로그인아직 댓글이 없습니다.
첫 번째 댓글을 작성해보세요!