Platform
python
Component
mlflow
Opgelost in
2.9.3
CVE-2024-1560 beschrijft een Path Traversal kwetsbaarheid in de MLflow artifact verwijderingsfunctionaliteit. Deze kwetsbaarheid stelt aanvallers in staat om willekeurige bestanden op de server te verwijderen, wat kan leiden tot dataverlies of systeemcompromittering. De kwetsbaarheid treedt op in MLflow versies tot en met 2.9.2 en kan worden verholpen door te upgraden naar een beveiligde versie.
Een succesvolle exploitatie van CVE-2024-1560 kan verstrekkende gevolgen hebben. Aanvallers kunnen gevoelige data, zoals modelbestanden, trainingsgegevens en configuratiebestanden, verwijderen of wijzigen. Dit kan leiden tot een verlies van functionaliteit, data-integriteitsproblemen en zelfs een volledige systeemuitval. De mogelijkheid om willekeurige bestanden te verwijderen, vergroot de blast radius aanzienlijk en maakt het mogelijk voor aanvallers om de controle over de server te verkrijgen. De dubbele decoding in de deleteartifactmlflowartifacts handler maakt deze exploitatie relatief eenvoudig uit te voeren.
Op het moment van schrijven is CVE-2024-1560 niet opgenomen in de CISA KEV catalogus. Er zijn publieke proof-of-concept exploits beschikbaar, wat de kans op actieve exploitatie verhoogt. De kwetsbaarheid is openbaar gemaakt op 2024-04-16, wat betekent dat aanvallers nu de tijd hebben om exploits te ontwikkelen en te implementeren. De relatieve eenvoud van de exploitatie maakt het een aantrekkelijk doelwit voor zowel geautomatiseerde aanvallen als gerichte aanvallen.
Organizations heavily reliant on MLflow for model tracking, deployment, and management are at significant risk. Specifically, environments with shared MLflow instances or those lacking robust access controls are particularly vulnerable. Users who have write access to the MLflow artifact store are potential threat actors.
• python / server:
import os
import subprocess
def check_mlflow_vulnerability():
try:
result = subprocess.run(['mlflow', 'artifacts', 'list'], capture_output=True, text=True, check=True)
if '2.9.2' in result.stdout:
print("MLflow version is vulnerable.")
else:
print("MLflow version is likely patched.")
except FileNotFoundError:
print("MLflow not found.")
check_mlflow_vulnerability()• linux / server:
journalctl -u mlflow -g 'artifact deletion' | grep -i error• generic web:
Use curl to test artifact deletion endpoints with path traversal payloads (e.g., curl 'http://mlflow-server/artifacts/../sensitive_file') and observe the response.
disclosure
Exploit Status
EPSS
0.11% (29% percentiel)
CVSS-vector
De primaire mitigatie voor CVE-2024-1560 is het upgraden naar een beveiligde versie van MLflow, hoger dan 2.9.2. Indien een directe upgrade niet mogelijk is, overweeg dan het implementeren van restricties op de artifact verwijderingsfunctionaliteit. Dit kan door middel van toegangscontroles of door het valideren van de paden die worden gebruikt voor verwijdering. Het monitoren van logbestanden op verdachte activiteiten, zoals ongebruikelijke bestandspaden in verwijderingsverzoeken, kan ook helpen bij het detecteren van pogingen tot exploitatie. Na de upgrade, verifieer de correcte werking van de artifact verwijderingsfunctionaliteit door een testverwijdering uit te voeren.
Actualice la biblioteca mlflow a una versión posterior a la 2.9.2. Esto solucionará la vulnerabilidad de path traversal. Puede actualizar usando `pip install mlflow --upgrade`.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
CVE-2024-1560 is a Path Traversal vulnerability in MLflow versions up to 2.9.2, allowing attackers to delete arbitrary files on the server.
You are affected if you are using MLflow version 2.9.2 or earlier. Check your MLflow version and upgrade if necessary.
Upgrade to a patched version of MLflow. Consult the official MLflow release notes for the latest version with the fix.
There is currently no confirmed evidence of active exploitation, but public proof-of-concept exploits are available.
Refer to the MLflow GitHub security advisory: https://github.com/mlflow/mlflow/security/advisories/GHSA-9894-3937-3947
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.
Upload je requirements.txt-bestand en we vertellen je direct of je getroffen bent.