Skip to content

20isaak23/Challenge_Unix-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Copy Fail — CVE-2026-31431 Lab

Introducción a UNIX · UIDE · Evaluación Parcial 2 → 9 puntos

Autocalificación


Un bug lógico silencioso durante casi una década en el kernel Linux. Un script de 732 bytes. Root en todas las distribuciones mayores desde 2017.

Tu tarea: reproducirlo y parchearlo.

Inicio rápido

# 1. Fork este repositorio a tu cuenta GitHub
# 2. Ábrelo en GitHub Codespaces
# 3. Dentro del devcontainer:

git config user.name "TuNombre TuApellido"
git config user.email "tu@uide.edu.ec"

make setup        # compila kernel vulnerable + rootfs (~20 min)
make qemu         # arranca la VM vulnerable

# ... sigue las instrucciones en CHALLENGE.md

Estructura del repositorio

copy-fail-challenge/
├── .devcontainer/          ← Configuración del devcontainer (Ubuntu + QEMU)
│   ├── devcontainer.json
│   └── Dockerfile
├── .github/workflows/
│   └── grade.yml           ← Autocalificador de GitHub Actions
├── evidence/               ← TUS ARCHIVOS DE EVIDENCIA VAN AQUÍ
│   └── README.md
├── grader/
│   └── grade.py            ← Calificador local (make grade)
├── patches/                ← TU PARCHE VA AQUÍ (Hito 4)
│   └── README.md
├── scripts/
│   ├── 00_welcome.sh
│   ├── 01_build_kernel.sh  ← Compila Linux v6.12 (vulnerable)
│   ├── 02_build_rootfs.sh  ← BusyBox + Python rootfs
│   ├── 03_run_qemu.sh      ← Arranca la VM
│   └── 04_build_patched_kernel.sh
├── kernel/                 ← Fuentes del kernel (gitignore excepto config)
├── CHALLENGE.md            ← INSTRUCCIONES COMPLETAS DEL RETO
├── Makefile
└── README.md

Hitos y puntuación

# Hito Pts
1 Kernel Linux 6.12 vulnerable corriendo en QEMU, algif_aead cargado 2.0
2 PoC ejecutado → uid=0(root) obtenido como usuario sin privilegios 3.0
3 Mitigación temporal: rmmod algif_aead, exploit falla 1.5
4 Parche en crypto/algif_aead.c, kernel recompilado, exploit falla 2.0
B REPORT.md: explicación técnica con conexión a conceptos del curso 0.5

Recursos

Reglas del examen

  • ✅ Se permite todo recurso en internet, IA, documentación, write-ups
  • ✅ Se permite (y se espera) leer el código del PoC público
  • ❌ No se permite compartir archivos de evidencia entre estudiantes
  • ❌ El hostname de tu VM debe ser único (viene de git config user.name)
  • ⏱ Todos los commits deben tener timestamp dentro de la ventana del examen

Basado en CVE-2026-31431 descubierto por Theori / Xint Code. Divulgado el 29 de abril de 2026.

About

Trabajo exploit

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors