Plataforma
python
Componente
mlflow
Corrigido em
2.9.3
Uma vulnerabilidade de Path Traversal foi descoberta no repositório mlflow/mlflow. Essa falha permite que atacantes manipulem URLs, utilizando o caractere ';' para injetar sequências de Path Traversal na seção 'params'. Isso possibilita o acesso não autorizado a arquivos e diretórios, potencialmente comprometendo a integridade do servidor. A vulnerabilidade afeta versões do MLflow até 2.9.2 e a correção já foi disponibilizada.
A exploração bem-sucedida desta vulnerabilidade permite que um atacante contorne as restrições de acesso ao sistema de arquivos do servidor MLflow. Ao injetar sequências de Path Traversal na URL, o atacante pode ler arquivos arbitrários, potencialmente expondo informações confidenciais, como chaves de API, dados de treinamento de modelos de machine learning ou configurações do sistema. Em cenários mais graves, a exploração pode levar à execução remota de código, permitindo que o atacante assuma o controle completo do servidor. Essa vulnerabilidade se assemelha a ataques de injeção de parâmetros observados em outras aplicações web, mas se aproveita da forma como o MLflow processa URLs.
A vulnerabilidade foi divulgada em 16 de abril de 2024. Não há informações disponíveis sobre a adição a KEV (CISA KEV) ou sobre a existência de exploits públicos. A probabilidade de exploração é considerada moderada, dada a natureza da vulnerabilidade e a sua relativa facilidade de exploração. É recomendável monitorar as fontes de inteligência de ameaças para detectar possíveis campanhas de exploração.
Organizations deploying MLflow for machine learning model tracking and management are at risk, particularly those using older versions (≤2.9.2). Shared hosting environments where MLflow is deployed alongside other applications are also at increased risk, as a successful exploit could potentially compromise the entire host.
• python / mlflow:
import re
def check_mlflow_params(url):
match = re.search(r'params=(.*?)(&|$)', url)
if match:
params = match.group(1)
if ';' in params:
print(f"Potential path traversal detected in params: {params}")• generic web:
curl -I 'http://your-mlflow-server/some/endpoint?params=;../sensitive/file'Inspect the response headers and body for any unexpected file disclosures.
disclosure
Status do Exploit
EPSS
0.31% (percentil 54%)
CISA SSVC
Vetor CVSS
A mitigação primária para esta vulnerabilidade é atualizar o MLflow para uma versão corrigida. Verifique o repositório oficial do MLflow para obter as versões mais recentes e as instruções de atualização. Se a atualização imediata não for possível, considere implementar medidas de proteção adicionais, como a validação rigorosa de todos os parâmetros de URL de entrada. Implementar regras de firewall (WAF) ou proxies reverso para filtrar solicitações maliciosas que contenham sequências de Path Traversal também pode ajudar a mitigar o risco. Após a atualização, confirme a correção verificando se a manipulação de URLs com ';' não resulta mais em acesso não autorizado a arquivos.
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-1593 is a path traversal vulnerability in MLflow versions 2.9.2 and earlier, allowing attackers to manipulate URL parameters to access unauthorized files.
You are affected if you are using MLflow version 2.9.2 or earlier. Check your MLflow version and upgrade as soon as a patch is available.
Upgrade to a patched version of MLflow. Until a patch is released, implement strict input validation on URL parameters and consider using a WAF.
There are currently no confirmed reports of active exploitation, but the vulnerability's ease of exploitation suggests it could become a target.
Monitor the MLflow GitHub repository and official MLflow documentation for updates and security advisories related to CVE-2024-1593.
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.