
Fornece scripts seguros de detecção e correção do kernel para o CVE-2026-31431, uma escalada de privilégios no kernel Linux via algif_aead. Inclui verificações somente leitura, bloqueio de módulos e atualizações apenas do kernel.
Escalação de privilégios local no kernel Linux via
algif_aead(AF_ALG) CVSS 7.8 ALTA | Divulgação pública: abril de 2026
Execute como usuário normal:
curl -fsSL https://raw.githubusercontent.com/Mrhudson69/cve-2026-31431/main/check_cve_2026_31431.sh -o check.sh && bash check.sh
Este script:
algif_aead está acessívelExecute como root:
curl -fsSL https://raw.githubusercontent.com/Mrhudson69/cve-2026-31431/main/patch_cve_2026_31431.sh -o patch.sh && sudo bash patch.sh
Execute como root se desejar remover o Elastic Agent do servidor:
curl -fsSL https://raw.githubusercontent.com/Mrhudson69/cve-2026-31431/main/uninstall_elastic_agent.sh -o uninstall-elastic.sh && sudo bash uninstall-elastic.sh
Este script:
elastic-agent uninstall de forma não interativaSe você estiver dentro de:
wg-easyVocê NÃO pode aplicar o patch no kernel do host a partir de dentro do container.
O script detecta containers automaticamente e encerra com segurança.
Você deve executar o script de patch em:
NÃO dentro do container.
Uma falha na interface criptográfica algif_aead do kernel Linux permite que um usuário local sem privilégios corrompa o conteúdo do page cache por meio de operações AF_ALG.
Em configurações de kernel vulneráveis, isso pode permitir:
O problema afeta versões do kernel Linux onde a lógica vulnerável de otimização AEAD existe e está acessível.
| SO | Versões |
|---|---|
| Ubuntu | 20.04 / 22.04 / 24.04 |
| Debian | 11 / 12 / 13 |
| Proxmox VE | 6.x / 7.x / 8.x / 9.x |
| Linux Genérico | Qualquer distribuição que use kernels vulneráveis |
check_cve_2026_31431.shScript de detecção seguro, somente leitura.
| Verificação | Descrição |
|---|---|
| Versão do Kernel | Verifica a faixa de kernel vulnerável |
| Presença de Patch | Tenta identificar kernel corrigido |
| Status do algif_aead | Verifica o estado de carregamento / blacklist do módulo |
| Socket AF_ALG | Testa a acessibilidade do bind AEAD algif_aead |
Python os.splice | Verifica a viabilidade do exploit em Python puro |
| Exposição Setuid | Detecta alvos setuid comuns |
| Mitigações | Verifica AppArmor / SELinux / seccomp |
O script de detecção:
patch_cve_2026_31431.shScript seguro de mitigação + atualização apenas do kernel.
Projetado para:
uninstall_elastic_agent.shScript auxiliar seguro para desinstalar o Elastic Agent de um servidor Linux.
Projetado para:
/opt/Elastic/AgentCria:
/etc/modprobe.d/cve-2026-31431-disable-algif-aead.conf
Conteúdo:
blacklist algif_aead
install algif_aead /bin/false
Em seguida, tenta:
rmmod algif_aead
Isso bloqueia o carregamento automático do módulo vulnerável.
O script também atualiza o initramfs quando update-initramfs está disponível para que a blacklist sobreviva de forma confiável à reinicialização.
Antes de atualizar qualquer coisa, o script executa:
apt-get -s install --only-upgrade ...
Se QUALQUER pacote que não seja do kernel fosse atualizado:
o script ABORTA automaticamente.
Isso evita atualizações acidentais de aplicativos.
O script atualiza apenas:
Nenhum pacote de aplicativo/runtime é atualizado.
Se o sistema reiniciar, o script de patch agora instala um serviço systemd temporário de uso único que reexecuta a fase de verificação automaticamente na próxima inicialização.
Isso permite que uma única execução do script cubra:
Primeiro a opção mais segura:
sudo bash patch.sh --dry-run
Isso:
Recomendado antes da implantação em produção.
sudo bash patch.sh --no-reboot
sudo bash patch.sh --reboot-now
Com --reboot-now, o script instala o hook de retomada pós-reinicialização antes de agendar o restart.
sudo reboot
Se você usar --no-reboot ou reiniciar manualmente mais tarde, a verificação pós-reinicialização ainda será retomada automaticamente na próxima inicialização.
O script foi projetado para evitar tocar em:
No entanto:
--dry-run primeiroLogs do patch:
/var/log/cve_2026_31431_kernel_patch.log
Verifique o kernel em execução:
uname -r
Execute a detecção novamente:
bash check.sh
Verifique a blacklist do módulo:
cat /etc/modprobe.d/cve-2026-31431-disable-algif-aead.conf
Estes scripts são fornecidos apenas para fins de segurança defensiva e administração de sistemas.
Nenhum código de exploit está incluído.
Sempre:
Use por sua conta e risco.
Licença MIT
Entrada NVD CVE https://nvd.nist.gov/vuln/detail/CVE-2026-31431
Commit de Correção do Kernel Linux https://git.kernel.org/linus/a664bf3d603dc3bdcf9ae47cc21e0daec706d7a5
Avisos de Segurança do Ubuntu https://ubuntu.com/security
Rastreador de Segurança do Debian https://security-tracker.debian.org/