CEVIU Logo
Voltar
CVE-2026-66066: Falha Crítica de Leitura Arbitrária de Arquivos e RCE Potencial no Ruby on Rails

Alerta Crítico: Falha no Ruby on Rails Permite Leitura Arbitrária de Arquivos e RCE

Aprofundamento CEVIU

Aprofundamento

A falha CVE-2026-66066 no Ruby on Rails é um alerta crítico para quem gerencia aplicações web. Ela explora uma brecha no processamento de imagens do Active Storage, especificamente quando a biblioteca `libvips` é usada. O problema reside no fato de que o Active Storage não desabilitava operações 'unfuzzed' ou 'untrusted' em `libvips` antes de processar arquivos enviados por usuários. Isso permite que um atacante, ao carregar uma imagem maliciosa, force a leitura de arquivos arbitrários do sistema.

O ataque é sofisticado. Um invasor cria um blob via endpoint de upload direto do Active Storage, falsificando o tipo de conteúdo da imagem. Em seguida, ele obtém uma `variation_key` assinada de uma página que renderiza uma representação do Active Storage. O arquivo manipulado se identifica como um arquivo MATLAB nível 5, mas é lido como um contêiner HDF5. A partir daí, a funcionalidade `External File List` do HDF5 é abusada para ler bytes de um caminho escolhido pelo atacante, que são então renderizados como pixels de imagem. Com segredos expostos, como o `secret_key_base` do Rails, a execução remota de código (RCE) se torna uma possibilidade real, sem a necessidade de deserialização `Marshal`.

O que mudou

A notícia mais recente mostra uma evolução crucial na resposta à vulnerabilidade. Inicialmente, em 29 de julho de 2026, o projeto Ruby on Rails publicou apenas o alerta de segurança, sem detalhes técnicos completos, e com previsão de divulgação para 28 de agosto de 2026. Contudo, em 31 de julho de 2026, a equipe do Rails antecipou a publicação de detalhes técnicos e ferramentas forenses. Essa aceleração ocorreu após diversos pesquisadores de segurança fazerem engenharia reversa do ataque e publicarem provas de conceito (PoC), tornando a ameaça ainda mais iminente e exigindo uma ação imediata da comunidade.

Por que isso importa

Esta falha no Ruby on Rails é de severidade máxima, com um CVSSv4 de 9.5. Sua capacidade de permitir a leitura arbitrária de arquivos sem autenticação prévia é extremamente perigosa. Com acesso a arquivos como o `secret_key_base`, um atacante pode forjar credenciais, comprometer sessões de usuários e, em última instância, obter execução remota de código. Considerando a vasta base de aplicações construídas com Rails, muitas delas utilizando o Active Storage, o impacto potencial é enorme.

A ameaça de RCE em aplicações web é uma constante. O CEVIU News tem reportado uma série de vulnerabilidades similares, como as encontradas no WordPress Core em 20 de julho de 2026, no GitLab em 27 de julho de 2026 e na ServiceNow AI Platform em 22 de julho de 2026, algumas delas com exploração ativa. Esta nova falha no Rails reforça a necessidade de vigilância constante e de um ciclo de patching ágil para proteger infraestruturas digitais críticas.

Linha do tempo

  1. Ruby on Rails publica alerta de segurança para CVE-2026-66066.

  2. Rails antecipa a publicação de detalhes técnicos e ferramentas forenses da falha.

Perguntas frequentes

O que é a vulnerabilidade CVE-2026-66066 no Ruby on Rails?

É uma falha crítica de segurança no Active Storage do Ruby on Rails, com CVSSv4 9.5. Ela permite que um atacante não autenticado leia arquivos arbitrários do sistema ao explorar operações inseguras da biblioteca `libvips` durante o processamento de imagens, podendo levar à execução remota de código.

Quais são as condições para que uma aplicação seja vulnerável?

A aplicação é vulnerável se usar `libvips` para processamento de imagens do Active Storage e aceitar uploads de imagens de usuários não confiáveis. A `libvips` é o processador padrão para Rails 7.0 e versões posteriores. Apenas o processador Vips é afetado, não o Magick.

Como posso proteger minha aplicação Rails contra essa falha?

A proteção principal é a atualização imediata para as versões corrigidas: Active Storage 7.2.3.2, 8.0.5.1 ou 8.1.3.1. Certifique-se também de que o `libvips` esteja na versão 8.13 ou superior e `ruby-vips` na versão 2.2.1 ou superior. Como medida paliativa, rotacione o `secret_key_base` e use `Vips.block_untrusted(true)` em um inicializador.

Qual o risco de uma falha de leitura arbitrária de arquivos?

Uma falha de leitura arbitrária permite que um atacante acesse arquivos sensíveis do sistema, como chaves de API, credenciais de banco de dados ou o `secret_key_base` do Rails. A exposição desses segredos pode escalar para acesso indevido, controle total da aplicação ou até mesmo execução remota de código no servidor, comprometendo toda a infraestrutura.

Fontes

Avalie este artigo:
Compartilhar:
Categoria
CEVIU Segurança da Informação
Publicado
31 de julho de 2026
Editoria
CEVIU Segurança da Informação

Quer receber mais sobre CEVIU Segurança da Informação?

Conteúdo curado diariamente, direto no seu e-mail.

Conteúdo curado diariamenteDiversas categoriasCancele quando quiser