
PoC de escalonamento de privilégios local para CVE-2026-74469, explorando uma corrupção de memória do kernel em respostas de diagnóstico SCTP para obter root em sistemas Linux x86-64.
[!WARNING] O PoC é fornecido exclusivamente para ajudar defensores, mantenedores e equipes de segurança autorizadas a validar patches, mitigações, detecções e exposição em sistemas que possuem ou que estão explicitamente autorizados a testar.
Você é o único responsável por garantir que seu uso deste material seja lícito, autorizado, controlado e conduzido em um ambiente de teste isolado.
[!WARNING] Este PoC é destrutivo. Ele sobrescreve aproximadamente 8 MiB de memória do kernel e deixa tabelas de páginas corrompidas mantidas pelo detentor de memória sacrificial
diagspill_holdaté a reinicialização. Matar esse processo pode desestabilizar o kernel.Memória não relacionada pode ser corrompida e a máquina pode entrar em pânico. Execute apenas em uma VM descartável/host descartável.
O PoC:
sudo e desanexa o
processo que mantém os mapeamentos corrompidos.O PoC assume e tem como alvo x86-64 para manter as coisas simples. Em teoria, o bug não deve ser específico de arquitetura.
Enumerando exaustivamente para completude:
6.17.0-35-generic, ou Fedora 44 com
6.19.10-300.fc44.x86_64 (você pode tentar remover essas verificações, mas outras
distros/versões de kernel podem exigir customização/grooming por alvo)MemTotal entre 3.700.000 e 4.200.000 KiB_ ou -/root ou sudo sem senhasctp_diag, alocação de transparent huge pages, limites
suficientes de processo/arquivo para 2.048 trabalhadores e o muro de sockets de
diagnóstico, e espaço de endereçamento x86-64 e memória suficientes para reter
cerca de 2.343 MiB de tabelas de páginas no Ubuntu ou 3.125 MiB no Fedora/etc/sudoers.d e um /usr/bin/sudo executável/usr/bin/env, com libc e
headers de desenvolvimento do Linux UAPI, , , , e O PoC é muito sensível à contagem de vCPUs/RAM, então ele impõe 4 vCPUs e 4 GB de RAM. Você provavelmente precisará de customização/grooming por alvo para outras combinações de vCPU/memória.
Execute-o como um usuário sem privilégios com uma entrada em passwd; o PoC pode levar
um pouco de tempo para construir a grande associação SCTP.
python3 diagspill_root_repro.py
Após uma execução (bem-sucedida ou não), reinicie a máquina para liberar o
diagspill_hold por segurança. Se você matá-lo diretamente, quase certamente
desestabilizará o kernel.
ccidsudotrueshrm