Tienes un shell de bajos privilegios en una máquina Linux. ¿Cómo escalas?
Respuesta breve
Enumera de forma sistemática: revisa sudo -l, los binarios SUID/SGID, las tareas cron, la versión del kernel y del SO, los archivos escribibles en rutas privilegiadas, las capabilities y las credenciales almacenadas. Herramientas como LinPEAS automatizan el barrido, pero aun así verificas cada hallazgo contra GTFOBins o una técnica conocida.
Conseguir un shell es la mitad del trabajo; el OSCP quiere root. La escalada de privilegios en Linux trata abrumadoramente de encontrar una mala configuración, no un fallo de memoria, así que el trabajo es enumeración estructurada.
Qué enumerar
Recorre las comprobaciones de alto valor en orden:
sudo -l: cualquier comando que puedas ejecutar como root, aunque sea uno, suele ser una victoria directa mediante GTFOBins.- Binarios SUID/SGID:
find / -perm -4000 2>/dev/null. Un binario SUID que pueda lanzar un shell o leer archivos arbitrarios (según GTFOBins) escala al instante. - Tareas cron: scripts cron propiedad de root en los que puedas escribir, o que llamen a un binario escribible/de ruta relativa, te permiten inyectar comandos que se ejecutan como root.
- Versión del kernel y del SO: anótalas para un posible exploit, pero trátalo como último recurso.
- Capabilities, rutas escribibles, abuso de PATH y credenciales:
getcap, scripts escribibles por todos en ubicaciones privilegiadas y contraseñas que yacen en archivos de configuración, el historial o copias de seguridad.
Automatiza y luego verifica
LinPEAS (o linux-smart-enumeration) ejecuta todo esto y colorea por código las victorias probables, lo que ahorra muchísimo tiempo. Pero la herramienta solo señala; aun así confirmas cada hallazgo: busca el binario SUID en GTFOBins, lee el script cron, prueba la entrada sudo.
Por qué los exploits de kernel van al final
Los exploits de kernel pueden provocar un pánico en la máquina, son frágiles según la versión y, en el examen, hacer caer el objetivo te cuesta. Una mala configuración limpia (sudo, SUID, cron) es más rápida, más fiable y demuestra mejor oficio.
Qué buscan los entrevistadores
Una checklist nombrada —sudo, SUID, cron, capabilities, archivos escribibles— más saber que LinPEAS la automatiza y que GTFOBins convierte un binario en un shell. Recurrir primero a un exploit de kernel es la respuesta que delata inexperiencia.
Posibles preguntas de seguimiento
- ¿Cómo ayuda GTFOBins una vez que encuentras un binario SUID interesante?
- ¿Por qué un exploit de kernel suele ser tu último recurso y no el primero?