
Simulación completa de un ataque de confusión de dependencias en Python, escalada de privilegios de sudo (CVE-2025-32463) y persistencia basada en rootkits - con análisis forense completo de memoria y red.
Este proyecto fue desarrollado como parte del curso de Digitale Forensik en la Technische Hochschule Deggendorf.
Demuestra una investigación forense completa y una simulación de ataque que involucra:
Un ataque de confusión de dependencias en Python utilizando un paquete malicioso de PyPI
Escalada de privilegios mediante una versión vulnerable de sudo (CVE-2025-32463)
Despliegue de un beacon de Sliver C2
Un rootkit personalizado con carga de módulos del kernel, hooking de llamadas al sistema y persistencia basada en udev
Análisis completo de artefactos de memoria y red utilizando herramientas como Volatility, NetworkMiner y reversing manual
El repositorio contiene scripts, instrucciones de configuración, artefactos y pasos de análisis detallados para replicar tanto el ataque como la investigación forense.
shell)
shell
CVE-2025-32463
Detalles en NVD
PoC en Github
[!NOTA]
Debes instalar una versión vulnerable de Sudo (con soporte chroot; consultaprivesc/setup.sh)
sequenceDiagram autonumber participant Attacker participant PyPI participant IntDep as Internal Dep Server participant Dev as Developer participant C2 as C2 Server
Attacker->>PyPI: Publish package with version v1.0.3
Dev->>IntDep: pip install
IntDep-->>Dev: Returns v1.0.1
Dev->>PyPI: Fallback pip install package==v1.0.3
PyPI-->>Dev: Returns malicious v1.0.3 (stager)
Dev->>Dev: Executes stager (package_evil)
Dev->>C2: Beacon/Sliver implant calls home
Note right of C2: Attacker now has RCE
Attacker->>Dev: Enumerates sudo version (1.9.16p2)
Attacker->>Dev: Runs CVE-2025-32463 exploit
Note right of Dev: PE to root
Dev->>Dev: Downloads & runs rootkit loader binary
Dev->>Dev: Loader installs kernel module & configures udev rule
Dev->>Dev: Schedules reboot
Note right of Dev: Attacker established persistence
Dev->>Dev: System reboots
Dev->>Dev: Udev loads kernel module on boot
Dev->>C2: Kernel-stage beacon calls C2
# Generación de Artefactos
Todos los artefactos se generan manualmente. Usarás dos máquinas:
- **Máquina atacante** (Kali Linux)
- **Máquina desarrolladora** (Ubuntu)
Produciremos tres artefactos:
- **PCAP** (antes del reinicio)
- **Volcado de memoria** (después del reinicio)
## Crear Volcado de Memoria
[How to dump VirtualBox memory](https://www.ired.team/miscellaneous-reversing-forensics/dump-virtual-box-memory)
En el sistema anfitrión:```shell
vboxmanage list vms
"linux-root-kit_default_1752261916398_20346" {c2d4b5bc-d87f-4dcb-af01-85b78c163fef}
virtualboxvm --startvm "linux-root-kit_default_1752261916398_20346" --dbg
Ir a interfaz --> Debug En la consola de depuración (indicador VMMR0>):```shell .pgmphystofile 'dumpmem_linux_root_kit'
## Preparar volcado de red en Ubuntu
Comience antes de simular al desarrollador. El `! port 22` es útil para no registrar la conexión vagrant ssh.```shell
sudo tcpdump -w output.pcap ! port 22
shell)vagrant up
Esto puede llevar un tiempo --> descarga una VM completa construida con Bento.