Plataforma
python
Componente
mlflow
Corrigido em
2.12.1
Uma vulnerabilidade de Path Traversal foi descoberta na função createmodel_version() do componente mlflow/mlflow. Esta falha permite que atacantes explorem o parâmetro source para acessar arquivos sensíveis no servidor. A vulnerabilidade afeta versões do MLflow anteriores ou iguais a 2.9.2. A correção está disponível na versão 2.12.1.
A exploração bem-sucedida desta vulnerabilidade permite que um atacante leia arquivos arbitrários no servidor MLflow. Isso pode levar à exposição de informações confidenciais, como chaves de API, dados de treinamento de modelos, ou até mesmo código-fonte. O impacto potencial é significativo, especialmente em ambientes de produção onde o MLflow é usado para gerenciar modelos de machine learning. A capacidade de ler arquivos arbitrários pode ser um ponto de partida para ataques mais sofisticados, como a execução de código malicioso ou a obtenção de acesso não autorizado a outros sistemas na rede. A falta de validação adequada do parâmetro source é a causa raiz do problema, permitindo que atacantes contornem as verificações de segurança.
Esta vulnerabilidade foi divulgada em 16 de abril de 2024. Não há informações disponíveis sobre exploração ativa em campanhas, mas a natureza da vulnerabilidade (Path Traversal) a torna um alvo atraente para atacantes. A ausência de um KEV listing indica que a probabilidade de exploração é considerada baixa a média. A existência de um proof-of-concept público pode aumentar o risco de exploração.
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
Status do Exploit
EPSS
0.09% (percentil 26%)
CISA SSVC
Vetor CVSS
A mitigação primária para esta vulnerabilidade é atualizar o MLflow para a versão 2.12.1 ou superior, que inclui a correção. Se a atualização imediata não for possível, considere implementar uma validação robusta do parâmetro source na função createmodel_version(). Isso pode envolver a sanitização do valor do parâmetro para remover caracteres especiais e garantir que ele corresponda a um caminho esperado. Como medida adicional, configure um Web Application Firewall (WAF) para bloquear solicitações que contenham padrões suspeitos no parâmetro source. Monitore os logs do servidor em busca de tentativas de acesso a arquivos não autorizados.
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.
Análise de vulnerabilidades e alertas críticos diretamente no seu e-mail.
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
Envie seu arquivo de dependências e descubra na hora se esta e outras CVEs te atingem.
Envie seu arquivo requirements.txt e descubra na hora se você está afetado.