
PoC em Python para CVE-2026-80844: corrupção de skb no AH6 de IPv6 e descriptografia ESP-in-UDP para sobrescrever /etc/pam.d/su e escalar para root no Linux.
[!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 legal, autorizado, controlado e conduzido em um ambiente de teste isolado.
[!WARNING] Este PoC é destrutivo. Ele modifica
/etc/pam.d/susem qualquer rollback. Uma sobrescrita mal posicionada pode corromper memória do kernel não relacionada e travar/crashar a máquina.Execute apenas em uma VM descartável/host descartável.
O PoC:
entra em um namespace privado de usuário/rede, constrói caminhos veth, IOAM6, netem, AH6 e
ESP-in-UDP e enfileira skbs ESP com suporte de arquivo originadas de /etc/pam.d/su
envia um cabeçalho de roteamento IPv6 malformado cujo segments_left excede sua
contagem de endereços, fazendo o AH6 corromper uma skb alvo próxima
usa os metadados da skb corrompida para fazer o ESP descriptografar bytes escolhidos na página PAM com suporte de arquivo, e
executa su - root após pam_rootok.so ter se tornado pam_permit.so.
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:
7.1.3-100.fc43.x86_64, ou Ubuntu 24.04 com 6.8.0-134-generic (você pode tentar remover essas verificações, mas outras distros/versões de kernel podem exigir customização/grooming por alvo)/etc/pam.d/suCAP_NET_ADMIN e CAP_NET_RAW dentro desse namespacesch_netem e vethgcc, openssl, ip, tc, unshare, nsenter, su, , , , , , , , , , , , , e , além de e o perfil carregado se direto for negadoO Fedora testou melhor com 16 vCPUs/32 GB RAM; o Ubuntu com 29 vCPUs/8 GB RAM -- outras combinações podem funcionar (especialmente contagens diferentes de vCPU). O PoC tem desempenho razoável com uma variedade de outras combinações de vCPU/RAM, mas os resultados podem variar.
Execute-o como um usuário não privilegiado com uma entrada em passwd.
python3 dirtyah6_root_repro.py
bashenvshsleepawkseqgrepkillcatsedrmddodtraa-exectrinityunshare -Urn