Transformers do Hugging Face grava arquivo antes do consentimento
O CERT/CC revelou em 1º de setembro a falha CVE-2026-80047 no Hugging Face Transformers: um arquivo Python remoto é gravado no disco antes de o usuário aprovar. Ainda não há correção disponível.

O CERT Coordination Center (CERT/CC) dos Estados Unidos publicou em 1º de setembro de 2026 um alerta de segurança sobre uma falha no Hugging Face Transformers, a biblioteca Python mais usada do mundo para carregar e executar modelos de inteligência artificial. Catalogada como CVE-2026-80047, ela afeta as versões 4.49.0 a 5.8.1 da biblioteca. O portal japonês de vulnerabilidades JVN (Japan Vulnerability Notes) publicou informação equivalente no mesmo dia, noticiada originalmente pelo veículo INTERNET Watch. Até o fechamento desta reportagem, a Hugging Face não havia divulgado correção nem posicionamento oficial.
O Hugging Face Transformers é a biblioteca Python oferecida pela plataforma Hugging Face para carregar modelos de IA pré-treinados — processamento de linguagem natural, visão computacional, áudio, vídeo e sistemas multimodais — e executar inferência ou re-treinamento. O CERT/CC a descreve como um dos frameworks mais difundidos desse tipo, usado tanto em pesquisa quanto em produção ao redor do mundo.
Um arquivo gravado antes mesmo da pergunta ser feita
A falha está na função GenerativePreTrainedModel.load_custom_generate(), que permite que um repositório de modelo forneça sua própria lógica de geração. Essa função busca o módulo remoto por meio de get_cached_module_file() e o grava no cache local do usuário, em ~/.cache/huggingface/modules — antes de a biblioteca avaliar o consentimento do usuário via resolve_trust_remote_code(), o mecanismo trust_remote_code destinado a bloquear a execução de código não aprovado. O CERT/CC observa que a execução em si é bloqueada corretamente quando o usuário recusa; o que é incondicional é a gravação inicial em disco. A causa raiz é uma cópia de arquivo incondicional dentro de dynamic_module_utils.py, um comportamento diferente das demais rotas de carregamento dinâmico da biblioteca — AutoConfig, AutoModel, AutoTokenizer e AutoImageProcessor — que verificam o consentimento antes de buscar ou gravar qualquer coisa.
- Mesmo que o usuário recuse a execução na tela de confiança, o arquivo permanece salvo no cache local
- O autor de um repositório de modelo malicioso pode colocar qualquer código Python em custom_generate/generate.py
- Basta tentar carregar o modelo para disparar a gravação, sem privilégios elevados nem ação adicional do usuário
- Em ambientes onde o cache é reutilizado, um arquivo malicioso já gravado pode ser executado por engano em um carregamento posterior considerado confiável
Sem correção ainda, apenas uma recomendação provisória
A falha foi reportada pelo pesquisador de segurança Prasanna Dabi. O CERT/CC afirma ter notificado a Hugging Face em 4 de agosto de 2026; na data de publicação do alerta, 1º de setembro, a empresa não havia se manifestado, e seu status de fornecedor consta como 'Unknown' no registro. Sem correção disponível, tanto o CERT/CC quanto o JVN recomendam evitar chamar load_custom_generate() em repositórios de modelo não confiáveis, e inspecionar periodicamente o diretório ~/.cache/huggingface/modules para remover qualquer arquivo inesperado.
O CERT/CC também observa que a cópia inicial do arquivo não pode ser desfeita depois de realizada: o mecanismo trust_remote_code bloqueia corretamente a execução do código caso o usuário recuse, mas nada remove o arquivo já gravado em disco. O alerta recomenda ainda, como princípio geral de design, que qualquer verificação do tipo trust_remote_code ocorra antes de qualquer busca ou gravação de conteúdo remoto — um requisito que a função afetada atualmente não cumpre. O código-fonte da biblioteca é público no GitHub, onde o repositório huggingface/transformers continua sendo, por ora, o único canal oficial para acompanhar uma correção.
O alerta credita a descoberta ao pesquisador de segurança Prasanna Dabi e indica o analista do CERT/CC Bob Kemerer como autor do documento. Passou-se menos de um mês entre a notificação privada à Hugging Face, em 4 de agosto, e a publicação do alerta, em 1º de setembro — período durante o qual, segundo o cronograma de divulgação coordenada do CERT/CC, a empresa não deu nenhuma resposta.
O CERT/CC integra o Software Engineering Institute da Universidade Carnegie Mellon e opera com o apoio da Cybersecurity and Infrastructure Security Agency (CISA), a agência federal americana de cibersegurança.
A execução do módulo é corretamente bloqueada, mas a gravação inicial do arquivo é incondicional — um comportamento diferente das outras rotas de carregamento dinâmico de módulos da biblioteca.
O que isso muda para uma equipe de desenvolvimento no Brasil
Para qualquer equipe brasileira que construa pipelines de IA sobre o Hugging Face Transformers — de startups a fintechs e universidades — essa falha é um item de checklist imediato, não mais um alerta para ignorar. Vale mapear todas as chamadas a load_custom_generate() no código e nos pipelines de CI/CD, confirmar que nenhuma delas aponta para repositórios de modelo não verificados, e revisar o diretório ~/.cache/huggingface/modules em máquinas de desenvolvimento e servidores de build em busca de arquivos Python inesperados. Até que uma correção oficial seja lançada, fixar a versão da biblioteca em produção e documentar um procedimento de revisão do cache é a medida mais confiável disponível.
Fontes
- 「Hugging Face Transformers」に脆弱性、ユーザーの同意前にPythonファイルを保存INTERNET Watch · 2 de setembro de 2026
- VU#456290 - Hugging Face Transformers library writes remote code to disk prior to consent checkCERT Coordination Center (CERT/CC) · 1 de setembro de 2026



