
El proyecto documenta la finalización y el análisis del laboratorio Fragnesia (CVE-2026-46300) de TryHackME, que demuestra una vulnerabilidad de corrupción de la caché de páginas del kernel de Linux capaz de lograr una escalada de privilegios local mediante la modificación de páginas de archivos en caché sin alterar los archivos en disco.
El proyecto documenta la finalización y el análisis del laboratorio Fragnesia (CVE-2026-46300) de TryHackMe, que demuestra una vulnerabilidad de corrupción de la caché de páginas del kernel de Linux capaz de lograr una escalada local de privilegios mediante la modificación de páginas de archivos en caché sin alterar los archivos en disco.
. Comprender la cadena de vulnerabilidad Fragnesia. . Analizar las técnicas de corrupción de la caché de páginas de Linux. . Observar la escalada de privilegios desde un usuario no privilegiado a root del host. . Comprender el papel de:
| Componente | Detalles |
|---|---|
| plataforma | TryHackMe |
| Vulnerabilidad | CVE-2026-46300 |
| SO | Ubuntu 22.04.5 LTS |
| Kernel | Linux 6.8.0-1017-aws |
| Usuario | Karen |
| Nivel de Privilegios | Usuario no Privilegiado |
Fragnesia es una vulnerabilidad del kernel de Linux que permite la modificación determinista de páginas de archivos respaldadas por la caché de páginas a través de la ruta de recepción ESP-in-TCP.
La vulnerabilidad se origina en el manejo incorrecto de fragmentos compartidos del búfer de socket durante la coalescencia de paquetes, permitiendo modificaciones controladas de bytes en el contenido de archivos en caché.
etapa 1 - Corrupción de la caché de páginas
El exploit fue compilado y ejecutado desde una cuenta de usuario no privilegiado.
cd /home/karen/fragnesia
gcc -02 -w fragnesia.c -o exp ./exp
El exploit modificó la copia en caché de:
/usr/bin/su
Sin alterar el archivo almacenado en disco.
El exploit creó un namespace de usuario y obtuvo UID 0 dentro de ese namespace.
whoami
root
Sin embargo, los intentos de acceder a recursos protegidos fallaron:
cat /root/flag.txt
permision denied
Esto demostró que el root del namespace no equivale al root del host.
Después de salir del shell del namespace:
exit
/usr/bin/su
La copia corrupta de /usr/bin/su en la caché de páginas ejecutó código controlado por el atacante.
whoami
root
id
uid=0(root) gid=0(root)
El proceso ahora poseía privilegios genuinos de root a nivel de host.
THM{fragnesia_skb_coalesce_amnesia}
Para verificar que el exploit solo afectó a la memoria:
sha256sum /usr/bin/su
El hash coincidió con el binario original, confirmando que: . El archivo en disco permaneció sin cambios. . Solo se modificó la copia en la caché de páginas.
Las entradas corruptas de la caché de páginas se eliminaron usando:
sudo sh -c 'echo 3 > /proc/sys/vm/ drop_caches'
Después de la expulsión de la caché, /usr/bin/su volvió a su comportamiento normal y requirió autenticación.
TryHackMe – Fragnesia (CVE-2026-46300) Documentación del Kernel de Linux Materiales de Investigación de CVE-2026-46300
Ejepu Benedict Amaechi Proyecto completado y documentado como parte de la formación práctica en ciberseguridad en TryHackMe.
| Propiedad | Valor |
|---|
| CVE | CVE-2026-46300 |
| Subsistema | xfrm ESP-in-TCP |
| Primitiva | escritura de 1 byte |
| ¿Se requiere condición de carrera? | No |
| Potencial de escape de contenedor | Sí |
| Objetivo | Caché de páginas de Linux |