O Redis corrigiu uma falha de use-after-free em seu código de cliente bloqueado, que permitia a um usuário autenticado executar comandos arbitrários do sistema operacional na máquina que hospeda o banco de dados.
O problema foi encontrado por uma ferramenta autônoma de IA criada para caçar bugs em grandes bases de código.
Identificada como
CVE-2026-23479
, a falha foi introduzida no Redis 7.2.0 e permaneceu em todas as linhas estáveis até as correções liberadas em 5 de maio, sem ser percebida por mais de dois anos.
O NVD atribui nota 8,8 no CVSS 3.1, enquanto o Redis a classifica como 7,7 no CVSS 4.0.
A descoberta foi reportada pela Team Xint Code, e uma análise técnica completa já foi publicada.
A exposição em cloud torna o cenário ainda pior.
A análise da Wiz, publicada junto com a descrição do exploit, aponta o Redis como presente na grande maioria dos ambientes de cloud, com muitas dessas instâncias operando sem senha.
O exploit exige uma sessão autenticada, mas, em uma implantação padrão, o usuário padrão já tem todos os privilégios exigidos pela cadeia de ataque.
A falha está em unblockClientOnKey(), no arquivo src/blocked.c, que é acionada quando um evento em uma chave desperta um comando bloqueado.
A função encaminha o comando enfileirado por processCommandAndResetClient() e depois continua usando o mesmo ponteiro de cliente.
O problema é que essa função pode liberar o cliente como efeito colateral, como o próprio comentário de cabeçalho informa.
O chamador ignora o valor de retorno e lê a estrutura já liberada, caracterizando um use-after-free, classificado como CWE-416.
Segundo a análise da Wiz, o bug foi criado em duas etapas.
Uma refatoração de janeiro de 2023, no PR #11012, adicionou a chamada sem verificação.
Já uma mudança de março de 2023, no PR #11568, acrescentou mais acesso ao cliente depois disso.
Nenhuma das alterações era perigosa isoladamente, mas, combinadas, chegaram à versão 7.2.0 e sobreviveram a várias rodadas de revisão de segurança.
A cadeia de exploração começa com o vazamento de um endereço da heap.
A partir daí, o atacante libera um cliente e injeta um falso no mesmo espaço de memória, até fazer o próprio controle de memória do Redis trabalhar contra o sistema para sobrescrever um ponteiro de função.
A versão divulgada funciona em três etapas.
Primeiro, um script Lua de uma linha, `EVAL "return tostring(redis.call)" 0`, vaza um ponteiro da heap.
Depois, o atacante ajusta os limites de memória do cliente, mantém um cliente inchado preso em um stream, remove os limites e o desperta.
O Redis libera o cliente bloqueado no meio da chamada, e um `SET` em pipeline imediatamente reaproveita o espaço liberado com uma estrutura falsa de cliente.
Por fim, a rotina normal de contabilização de memória em `updateClientMemoryUsage()` executa uma redução fora dos limites usando campos controlados pelo atacante, mirando a Global Offset Table para redirecionar `strcasecmp()` para `system()`.
O próximo comando interpretado pelo Redis passa a ser executado como comando de shell.
A imagem oficial do Redis em Docker facilita a etapa final.
Ela é distribuída com apenas RELRO parcial, o que deixa a GOT gravável em tempo de execução.
ASLR e PIE não ajudam nesse caso, já que a escrita é relativa a uma global cujo deslocamento é fixo na compilação.
A cadeia completa exige uma sessão autenticada com `CONFIG SET`, `EVAL`, comandos de stream como `XREAD` e `XADD`, além de `SET` e `GET`, o que corresponde às categorias de ACL `@admin`, `@scripting`, `@stream` e `@read/@write`.
O usuário padrão possui todas elas e, na maioria das implantações, esses privilégios ficam agrupados em uma única função compartilhada de aplicação ou de operação.
Bloquear `CONFIG` por completo interrompe essa cadeia específica, embora não elimine o use-after-free subjacente.
A Team Xint Code demonstrou a execução remota de código em funcionamento durante o ZeroDay.Cloud 2025, competição de hacking da Wiz realizada em Londres em dezembro passado.
A Theori descreve a Xint Code como uma ferramenta autônoma de segurança baseada em IA, criada para caçar bugs em grandes bases de código.
Segundo a Redis, não há evidências de exploração em seus próprios ambientes ou nos de clientes e, até a publicação, não havia relatos públicos de uso em ataques reais.
Ainda assim, a cadeia técnica completa agora está pública, o que amplia o risco de exploração subsequente.
A recomendação é atualizar para a versão corrigida correspondente à sua linha: 7.2.14, 7.4.9, 8.2.6, 8.4.3 ou 8.6.3, todas liberadas em 5 de maio.
Atualizações menores dentro da mesma linha foram projetadas para substituição direta.
Serviços gerenciados de Redis aplicam correções em seus próprios cronogramas, e a Redis diz que o Redis Cloud já foi atualizado.
| Linha | Afetadas | Corrigidas |
|---|---|---|
| 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 |
Se ainda não for possível atualizar, mantenha o Redis fora da internet pública e atrás de TLS, fortaleça as ACLs para que nenhuma função única reúna `@admin`, `CONFIG` e `@scripting`, e negue `@scripting` se você não usa Lua, o que elimina o vazamento da etapa 1.
Priorize instâncias expostas à internet, credenciais compartilhadas de aplicação e qualquer função que combine `CONFIG`, scripting e acesso a streams.
Aproveite também para rotacionar quaisquer credenciais do Redis amplamente compartilhadas.
A
CVE-2026-23479
foi uma das cinco falhas de RCE divulgadas no Redis no mês passado e sucede a vulnerabilidade RediShell, de 2025, outra falha de use-after-free autenticada envolvendo scripts Lua.
Ela também foi a que uma ferramenta de IA conseguiu detectar.
Dois commits a introduziram, dois anos a esconderam, e ela permaneceu em um dos bancos de dados mais usados do mercado até aparecer em uma competição de hacking.
A revisão de código não a encontrou.
Publicidade
Nossa audiência é formada por analistas, pentesters, decisores e entusiastas que consomem nossas notícias todo dia pelo Site, Newsletter e Instagram. Fale com quem realmente importa para o seu negócio. Anuncie aqui. Saiba mais...