ONNX: Modelos ONNX maliciosos podem travar servidores explorando configurações de objeto desprotegidas.
Plataforma
python
Componente
onnx
Corrigido em
1.21.0
### Resumo A classe ExternalDataInfo no ONNX estava usando a função setattr() do Python para carregar metadados (como caminhos de arquivos ou comprimentos de dados) diretamente de um arquivo de modelo ONNX. O problema? Não verificava se as "chaves" no arquivo eram válidas. Como confiava cegamente no arquivo, um invasor poderia criar um modelo malicioso que sobrescreve as propriedades internas do objeto. ### Por que é perigoso **DoS de travamento instantâneo**: Um invasor pode definir a propriedade de comprimento para um número enorme, como 9 petabytes. Quando o sistema tenta carregar o modelo, ele tenta alocar toda essa RAM de uma vez, fazendo com que o servidor trave ou congele por falta de memória (Out of Memory). **Desvio de acesso**: Ao definir um deslocamento negativo -1, um invasor pode enganar o sistema para ler partes de um arquivo que não deveria tocar. **Corrupção de objeto**: Os invasores podem até injetar atributos "dunder", como __class__, para alterar o tipo do objeto completamente, o que pode levar a exploits mais complexos. **Corrigido**: https://github.com/onnx/onnx/pull/7751 corrupção do estado do objeto e DoS via injeção de atributo ExternalDataInfo
Como corrigir
Nenhum patch oficial disponível. Procure alternativas ou monitore atualizações.
Monitore suas dependências automaticamente
Receba alertas quando novas vulnerabilidades afetarem seus projetos.
Começar grátis