🔍 CVE-2026-4137

7.8
CVSS Score
HIGH
2026-05-18
2026-07-24 12:10
✅ 완료

🇰🇷 한글 설명

mlflow 3.11.0 미만 버전에서 임시 디렉토리를 생성할 때 권한 설정이 너무 느슨하게(0o777 또는 0o770) 설정되는 취약점이 존재합니다. 이를 통해 로컬 공격자가 모델 아티팩트를 변조할 수 있으며, 변조된 cloudpickle 객체가 역직렬화될 때 임의 코드가 실행될 수 있습니다. 특히 NFS가 활성화된 Databricks와 같은 공유 환경에서 위험도가 매우 높습니다.

💡 쉬운 설명

프로그램이 임시 파일을 만드는 폴더의 잠금 장치가 허술하여, 다른 사용자가 몰래 파일을 바꿔치기할 수 있는 문제입니다. 공격자가 악성 코드가 담긴 파일을 심어두면, 프로그램이 이를 읽는 순간 컴퓨터가 해킹될 수 있습니다.

🇺🇸 원문 (English)

In mlflow/mlflow versions prior to 3.11.0, the `get_or_create_nfs_tmp_dir()` function in `mlflow/utils/file_utils.py` creates temporary directories with world-writable permissions (0o777), and the `_create_model_downloading_tmp_dir()` function in `mlflow/pyfunc/__init__.py` creates directories with group-writable permissions (0o770). These insecure permissions allow local attackers to tamper with model artifacts, such as cloudpickle-serialized Python objects, and achieve arbitrary code execution when the tampered artifacts are deserialized via `cloudpickle.load()`. This vulnerability is particularly critical in environments with shared NFS mounts, such as Databricks, where NFS is enabled by default. The issue is a continuation of the vulnerability class addressed in CVE-2025-10279, which was only partially fixed.

📍 영향받는 시스템

mlflow versions prior to 3.11.0

⚔️ 공격 벡터

로컬 공격자가 공유 디렉토리 내의 모델 아티팩트를 변조하여 임의 코드 실행(ACE) 유도

🛡️ 대응 방법

mlflow를 3.11.0 이상의 최신 버전으로 업데이트하십시오.

🔧 검증 코드

출력된 Version이 3.11.0 미만이면 취약한 상태입니다.

Shell / Script
pip show mlflow | grep Version

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Python