Platform
python
Component
mlflow
Opgelost in
2.12.1
CVE-2024-1558 beschrijft een Path Traversal kwetsbaarheid in de createmodel_version() functie van MLflow. Deze kwetsbaarheid stelt aanvallers in staat om willekeurige bestanden op de server te lezen door de 'source' parameter te manipuleren. De kwetsbaarheid treft versies van MLflow tot en met 2.9.2. Een upgrade naar versie 2.12.1 of hoger is vereist om de kwetsbaarheid te verhelpen.
Een succesvolle exploitatie van deze Path Traversal kwetsbaarheid kan leiden tot ongeautoriseerde toegang tot gevoelige bestanden op de MLflow server. Dit omvat potentieel configuratiebestanden, API sleutels, of andere data die opgeslagen is op de server. De impact kan variëren afhankelijk van de gevoeligheid van de bestanden die toegankelijk zijn, maar kan in het ergste geval leiden tot data-exfiltratie en compromittering van de gehele MLflow omgeving. Het is vergelijkbaar met scenario's waarbij een aanvaller toegang krijgt tot de root directory van een webserver via een path traversal aanval.
Deze kwetsbaarheid is openbaar bekend gemaakt op 2024-04-16. Er zijn momenteel geen bekende actieve campagnes die deze specifieke kwetsbaarheid exploiteren, maar het is waarschijnlijk dat er proof-of-concept exploits zullen verschijnen. De kwetsbaarheid is opgenomen in het CISA KEV catalogus (KEV status onbekend op moment van schrijven). Het is belangrijk om snel te reageren en de kwetsbaarheid te patchen om verdere exploitatie te voorkomen.
Organizations deploying MLflow for machine learning model management, particularly those using older versions (≤2.9.2), are at risk. Shared hosting environments where multiple users share the same MLflow instance are especially vulnerable, as an attacker could potentially access data belonging to other users. Environments with weak access controls to the MLflow tracking server are also at increased risk.
• python / mlflow:
import os
import mlflow
# Attempt to read a file outside the intended directory
try:
mlflow.tracking.MlflowClient().create_model_version('model', '1', source='../../../../../../etc/passwd')
print('Potential vulnerability detected!')
except Exception as e:
print(f'Error: {e}')• generic web: Check MLflow server logs for requests containing path traversal sequences (e.g., '../').
• generic web: Monitor network traffic to the MLflow server for suspicious requests targeting the /tracking/model-versions endpoint.
disclosure
Exploit Status
EPSS
0.09% (26% percentiel)
CISA SSVC
CVSS-vector
De primaire mitigatie voor CVE-2024-1558 is het upgraden van MLflow naar versie 2.12.1 of hoger. Indien een directe upgrade niet mogelijk is, kan een tijdelijke workaround bestaan uit het implementeren van strenge input validatie op de 'source' parameter in de createmodel_version() functie. Dit kan worden bereikt door een whitelist van toegestane bestandsnamen en paden te gebruiken. Het is ook aan te raden om de toegang tot de MLflow server te beperken tot geautoriseerde gebruikers en systemen. Na de upgrade, verifieer de correcte werking door een testmodel te creëren en te controleren of de 'source' parameter correct wordt gevalideerd.
Actualice la biblioteca mlflow a la última versión disponible. Esto solucionará la vulnerabilidad de path traversal. Consulte las notas de la versión para obtener más detalles sobre la actualización.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
CVE-2024-1558 is a path traversal vulnerability in MLflow versions 2.9.2 and earlier, allowing attackers to read arbitrary files on the server by manipulating the 'source' parameter.
You are affected if you are using MLflow versions 2.9.2 or earlier. Upgrade to 2.12.1 or later to mitigate the risk.
Upgrade MLflow to version 2.12.1 or later. Implement temporary workarounds like restricting access and validating input if immediate upgrade is not possible.
There is currently no indication of active exploitation in the wild, but the vulnerability is publicly known and a proof-of-concept may be available.
Refer to the MLflow GitHub security advisory: https://github.com/mlflow/mlflow/security/advisories/GHSA-983x-x93g-956x
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.