
PoC en Python para CVE-2026-81000, una escalada de privilegios local en el kernel de Linux mediante una escritura fuera de límites en TUN/OVS y la manipulación de flags de pipe_buffer para obtener root.
[!WARNING] El PoC se proporciona únicamente para ayudar a defensores, mantenedores y equipos de seguridad autorizados a validar parches, mitigaciones, detecciones y exposición en sistemas que poseen o están explícitamente autorizados a probar.
Usted es el único responsable de garantizar que su uso de este material sea lícito, autorizado, controlado y realizado en un entorno de pruebas aislado.
[!WARNING] Este PoC es destructivo. Modifica
/etc/pam.d/susin ningún rollback. Una sobrescritura mal ubicada puede corromper memoria del kernel no relacionada y colgar/bloquear la máquina.Ejecútelo solo en una VM desechable/host de un solo uso.
El PoC:
/etc/pam.d/suPIPE_BUF_FLAG_CAN_MERGE en un pipe_buffer cercano, ypam_permit.so a través del pipe, finalizando con su - root.El PoC asume y apunta a x86-64 para mantener las cosas simples. En teoría, el bug no debería ser específico de arquitectura.
Enumerando exhaustivamente por completitud:
6.19.10-300.fc44.x86_64, o Ubuntu 24.04.4 con
6.17.0-40-generic (puede intentar eliminar estas comprobaciones, pero otras
distros/versiones de kernel pueden requerir personalización/preparación por objetivo)/etc/pam.d/su sin modificar que contenga
pam_rootok.so, y los módulos PAM pam_rootok.so y pam_permit.soCAP_NET_ADMIN dentro de ese
espacio de nombres/dev/net/tun accesible, más soporte de kernel para TUN, datapath de Open vSwitch, netkit y
VXLANip, unshare, true y , más
y el perfil cargado en Ubuntu si se deniega directoAmbos objetivos fueron probados con 29 vCPUs a 4 GB y 32 GB de RAM, siendo esta última más confiable. Otras combinaciones de CPU/memoria pueden necesitar más preparación y pueden redirigir la sobrescritura hacia memoria no relacionada.
Ejecútelo como un usuario sin privilegios con una entrada en passwd.
python3 tunderflow_root_repro.py
suaa-exectrinityunshare -Urn