Plataforma
python
Componente
mlflow
Corregido en
2.9.3
Se ha descubierto una vulnerabilidad de Path Traversal en MLflow, una plataforma de código abierto para gestionar el ciclo de vida del aprendizaje automático. Esta vulnerabilidad permite a un atacante, a través de la manipulación de rutas, eliminar archivos y directorios arbitrarios en el sistema de archivos del servidor. El problema afecta a las versiones de MLflow hasta la 2.9.2 y se debe a una sanitización incorrecta de las rutas proporcionadas por el usuario.
La vulnerabilidad de Path Traversal en MLflow permite a un atacante con acceso a la funcionalidad de eliminación de artefactos comprometer la integridad del sistema. Un atacante podría eliminar archivos de configuración críticos, archivos de datos o incluso componentes del sistema operativo, lo que podría resultar en la interrupción del servicio, la pérdida de datos o la toma de control del servidor. La capacidad de eliminar directorios arbitrarios amplía significativamente el alcance del daño potencial, permitiendo un acceso no autorizado a áreas sensibles del sistema de archivos. La explotación exitosa podría permitir la ejecución remota de código si se eliminan archivos necesarios para la ejecución de procesos críticos.
Esta vulnerabilidad ha sido publicada públicamente el 16 de abril de 2024. No se ha reportado su inclusión en el Catálogo de Vulnerabilidades Conocidas (KEV) de CISA al momento de esta redacción. No se han identificado públicamente pruebas de concepto (PoC) activas, pero la naturaleza de la vulnerabilidad de Path Traversal la convierte en un objetivo potencial para la explotación. La falta de una versión 'fixed_in' en la entrada limita la capacidad de evaluar el riesgo de explotación.
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
Estado del Exploit
EPSS
0.11% (29% percentil)
Vector CVSS
La mitigación principal para esta vulnerabilidad es actualizar a una versión de MLflow posterior a la 2.9.2, donde se ha corregido el problema. Si la actualización no es inmediatamente posible, se recomienda implementar medidas de seguridad adicionales. Restrinja el acceso a la funcionalidad de eliminación de artefactos solo a usuarios autorizados y con privilegios mínimos. Implemente controles de acceso estrictos en el sistema de archivos para limitar el acceso a directorios sensibles. Considere la implementación de un Web Application Firewall (WAF) para filtrar solicitudes maliciosas que intenten explotar la vulnerabilidad. Monitoree los registros del sistema en busca de patrones de actividad sospechosa, como intentos de eliminación de archivos no autorizados.
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`.
Análisis de vulnerabilidades y alertas críticas directamente en tu correo.
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
Sube tu archivo de dependencias y detecta esta y otras CVEs al instante.
Sube tu archivo requirements.txt y te decimos al instante si estás afectado.