Crítica Falha RCE no Redis (CVE-2026-23479) Descoberta por Ferramenta de IA: Patches Imediatos Recomendados
Uma grave vulnerabilidade use-after-free, **CVE-2026-23479**, foi descoberta no **Redis**, permitindo que atacantes autenticados executem comandos arbitrários no sistema operacional. A falha, presente desde a versão 7.2.0, foi identificada de forma única por uma ferramenta autônoma de segurança com IA e representa um risco significativo, especialmente para implantações em nuvem onde muitas instâncias de **Redis** carecem de autenticação robusta.
### Ameaça RCE Descoberta por IA Ameaça Implantações de Redis
Uma vulnerabilidade crítica de execução remota de código (RCE), rastreada como **CVE-2026-23479**, foi corrigida no popular banco de dados em memória de código aberto, **Redis**. Essa falha use-after-free permite que um atacante autenticado execute comandos arbitrários do sistema operacional na máquina que hospeda o banco de dados, representando um risco de segurança significativo para os sistemas afetados.
A vulnerabilidade foi descoberta de forma única pelo **Xint Code**, uma ferramenta autônoma de segurança com IA desenvolvida pela **Theori** e reportada pela **Team Xint Code**. Isso destaca o cenário em evolução da pesquisa de vulnerabilidades, onde a IA está desempenhando um papel cada vez maior na identificação de bugs complexos em grandes bases de código.

### A Vulnerabilidade: CVE-2026-23479 Explicada
O bug use-after-free reside na função `unblockClientOnKey()` dentro de `src/blocked.c`, que é acionada quando um evento de chave desperta um comando bloqueado. A função despacha o comando enfileirado via `processCommandAndResetClient()`. Crucialmente, `processCommandAndResetClient()` pode, como efeito colateral, liberar o ponteiro do cliente que recebe. No entanto, o chamador `unblockClientOnKey()` prossegue para usar este ponteiro de cliente agora liberado, levando a uma condição clássica de use-after-free (CWE-416).
Essa falha foi introduzida no **Redis** 7.2.0 e permaneceu presente em todos os branches estáveis até sua correção em 5 de maio, tendo passado despercebida por mais de dois anos. O National Vulnerability Database (NVD) a classifica com 8.8 sob CVSS 3.1, enquanto o próprio **Redis** a lista como 7.7 sob CVSS 4.0. Um relatório técnico detalhado foi tornado público pela **Wiz**.
### Como o Exploit se Desenrola
A cadeia de exploit, demonstrada pela **Team Xint Code** na competição ZeroDay.Cloud 2025 da **Wiz**, é sofisticada e envolve várias etapas:
1. **Vazamento de Endereço de Heap**: Um script Lua de uma linha (`EVAL "return tostring(redis.call)" 0`) é usado para vazar um ponteiro de heap.
2. **Manipulação de Memória e Injeção de Cliente Falso**: O atacante manipula os limites de memória do cliente, estaciona um cliente grande em um stream, então reduz os limites e o desperta. Isso faz com que o **Redis** libere o cliente bloqueado no meio da chamada. Um comando `SET` em pipeline imediatamente recupera o slot de memória liberado com uma estrutura de cliente falsa elaborada.
3. **Sobrescrita de Ponteiro de Função**: A contabilidade de memória de rotina do **Redis** em `updateClientMemoryUsage()` é então utilizada para realizar um decremento fora dos limites usando campos controlados pelo atacante. Isso visa a Global Offset Table (GOT) para redirecionar o ponteiro da função `strcasecmp()` para `system()`. O próximo comando analisado pelo **Redis** é então executado como um comando de shell.
A imagem padrão do **Redis Docker** simplifica ainda mais o estágio final, pois vem com apenas RELRO parcial, deixando a GOT gravável em tempo de execução.
### Pré-requisitos e Exposição na Nuvem
Explorar **CVE-2026-23479** requer uma sessão autenticada com categorias de ACL específicas: `@admin`, `CONFIG SET`, `EVAL`, comandos de stream (`XREAD`/`XADD`) e `SET`/`GET` básicos. Embora isso possa parecer restritivo, em muitas implantações padrão de **Redis**, o usuário padrão possui todos esses privilégios.
A análise da **Wiz** destaca uma preocupação significativa: uma grande maioria das instâncias de **Redis** em ambientes de nuvem é executada sem senha. Essa configuração generalizada aumenta dramaticamente a superfície de ataque, pois um atacante só precisa obter acesso inicial à instância de **Redis** para potencialmente alcançar RCE.

### Ação Imediata Necessária: Patches e Mitigação
O **Redis** lançou patches para esta vulnerabilidade, e atualizações imediatas são fortemente recomendadas. Os branches afetados e suas versões corrigidas correspondentes são:
| Branch | Versões Afetadas | Versão Corrigida |
| :----- | :------------------ | :------------ |
| 7.2.x | 7.2.0 a 7.2.13 | 7.2.14 |
| 7.4.x | 7.4.0 a 7.4.8 | 7.4.9 |
| 8.2.x | 8.2.0 a 8.2.5 | 8.2.6 |
| 8.4.x | 8.4.0 a 8.4.2 | 8.4.3 |
| 8.6.x | 8.6.0 a 8.6.2 | 8.6.3 |
Atualizações menores dentro de uma série são projetadas para serem substituições diretas (drop-in replacements). Serviços gerenciados de **Redis** estão implementando patches em seus próprios cronogramas, com o **Redis Cloud** já atualizado.
Se o patching imediato não for viável, implemente as seguintes mitigações:
* **Segmentação de Rede**: Mantenha as instâncias de **Redis** fora da internet pública e atrás de firewalls robustos.
* **Criptografia TLS**: Garanta que toda a comunicação do **Redis** seja protegida com TLS.
* **ACLs Estritas**: Reforce as Listas de Controle de Acesso (ACLs) para impedir que qualquer função única detenha os privilégios `@admin`, `CONFIG` e `@scripting` simultaneamente.
* **Desabilitar Scripting Lua**: Se não estiver em uso ativo, negue a categoria de ACL `@scripting`, o que impede o vazamento de heap do Estágio 1.
* **Rotação de Credenciais**: Rotacione quaisquer credenciais de **Redis** amplamente compartilhadas.
Priorize o patching e a mitigação para instâncias expostas à internet, aquelas com credenciais de aplicativo compartilhadas e quaisquer funções que combinem acesso `CONFIG`, scripting e stream.
### Um Contexto Mais Amplo
**CVE-2026-23479** é uma das cinco falhas de RCE no **Redis** divulgadas no mês passado, e segue a falha **RediShell** de 2025, outra use-after-free autenticada envolvendo scripting Lua. O fato de uma ferramenta de IA, em vez de revisão de código tradicional, ter identificado essa vulnerabilidade de longa data ressalta a necessidade de inovação contínua em segurança e metodologias de teste robustas em software crítico. Embora ainda não haja evidências públicas de exploração em larga escala, os detalhes técnicos completos agora são públicos, aumentando significativamente o risco.