sudo mal configurado
Qué es
sudo permite ejecutar comandos como otro usuario (normalmente root). El administrador puede dar permiso solo para un comando concreto. Si ese comando permite ejecutar otros (abrir un editor, un paginador, un intérprete…), ese permiso equivale a dar root.
Cómo se detecta
bash
sudo -lEjemplo de salida:
User pepe may run the following commands on host:
(root) NOPASSWD: /usr/bin/findNOPASSWD significa que no pide contraseña.
Cómo se explota
Se busca el binario en GTFOBins, que recoge cómo abusar de cada uno. Para find:
bash
sudo find . -exec /bin/sh \; -quitfind ejecuta /bin/sh como root y obtenemos una shell. Con vim, less, awk, python… el principio es el mismo: pedirle al binario que lance una shell.
Cómo se arregla
- Dar
sudosolo a comandos que no puedan lanzar otros programas. - Evitar
NOPASSWDsalvo necesidad real. - Revisar
/etc/sudoersconvisudoy aplicar mínimo privilegio.
