
Prova de conceito de escalonamento local de privilégios para CVE-2026-64531, abusando do datapath de kernel do OVS para corromper credenciais e obter acesso root por meio de injeção no sudoers.
[!WARNING] O PoC é fornecido exclusivamente para ajudar defensores, mantenedores e equipes de segurança autorizadas a validar correções, mitigações, detecções e exposição em sistemas que possuem ou para os quais foram explicitamente autorizados a testar.
Você é o único responsável por garantir que o uso deste material seja lícito, autorizado, controlado e realizado em um ambiente de teste isolado.
[!WARNING] Este PoC é destrutivo. Em caso de sucesso, ele corrompe uma credencial ativa do kernel, modifica
/etc/sudoers.dou/etc/sudoers, abre um shell root e deixa processos destacados e estado OVS corrompido em execução para evitar um desligamento inseguro.Execute-o apenas em uma VM descartável/host descartável. Reiniciar interrompe os processos restantes, mas não desfaz a modificação no sudoers.
O PoC:
nla_len de ação aninhada geradosudo -n bash.O PoC pressupõe e visa x86-64 para manter as coisas simples. Em teoria, o bug não deve ser específico de arquitetura.
unshare -Urn)sudo, bash, unshare e idExecute-o como um usuário não privilegiado com uma entrada passwd.
python3 ovswrap-poc.py
O PoC tentará automaticamente unshare -Urn e, se estiver bloqueado pelo AppArmor, recorrerá a aa-exec -p trinity -- unshare -Urn.
O PoC contém valores pré-derivados para ~800 builds x86-64 exatos do kernel, correspondidos usando:
uname -r
uname -v
uname -m
Um registro correspondente não precisa de símbolos locais, BTF, pacote de depuração ou pahole. Para um build não coberto, o PoC pede confirmação e tenta derivar dinamicamente a partir de:
System.map ou /proc/kallsyms diferente de zero;pahole, que já deve estar instalado.A falha ao derivar valores não significa que o kernel não é afetado, pois a derivação dinâmica pode falhar por vários motivos; consulte a análise para maneiras melhores de saber se você é afetado.