Cómo Saltarse la Contraseña de Root en Linux Usando GRUB y Cómo Protegerse
📌 En este artículo, exploraremos una vulnerabilidad en el arranque de Linux que permite omitir la contraseña de root a través de GRUB y cómo solucionarla con medidas de seguridad efectivas.
🛑 Advertencia
Este artículo es solo para fines educativos y de seguridad ofensiva. No intentes acceder sin permiso a sistemas que no sean de tu propiedad.
🔍 Parte 1: Cómo hacer el bypass de GRUB para obtener acceso root?
💡 GRUB (Grand Unified Bootloader) es el gestor de arranque más usado en Linux. Si un atacante tiene acceso físico a la máquina, puede modificar GRUB y arrancar en un shell como root sin necesidad de autenticación.
🔥 Paso 1: Acceder a GRUB
- Reinicia la máquina.
- Cuando aparezca el menú de GRUB (imagen), presiona la tecla E para editar las opciones de arranque.
🔥 Paso 2: Modificar los parámetros de arranque
- Busca la línea que inicia con
linux, que puede verse así:
linux /boot/vmlinuz-6.12.13-amd64 root=UUID=07eb3124-b0e8-4834-96bf-5419ec51f12 ro quiet splash
- Añade
init=/bin/bashal final de la línea, quitando splash, dejando algo como:
linux /boot/vmlinuz-6.12.13-amd64 root=UUID=07eb3124-b0e8-4834-96bf-5419ec51f12 ro quiet init=/bin/bash
🔥 Paso 3: Arrancar en el shell de root
- Presiona Ctrl + X o F10 para arrancar con la nueva configuración.
- Ahora deberías tener una shell de root sin necesidad de contraseña.
🔥 Paso 4: Resetear la contraseña de root
- Monta el sistema en modo escritura:
mount -o remount rw / - Cambia la contraseña de root con:
passwd root - Reinicia la máquina:
reboot -f
💥 Ahora puedes acceder con cuenta root a la nueva contraseña sin problemas.
🛡️ Parte 2: Cómo protegernos de este bypass?
1️⃣ Configurar una contraseña en GRUB
Esto evita que cualquiera pueda modificar las opciones de arranque.
Paso 1: Generar una contraseña para GRUB
Ejecuta:
grub-mkpasswd-pbkdf2
Introduce una contraseña segura y copia el hash generado.
Paso 2: Configurar GRUB
- Edita el archivo de configuración como super usuario:
sudo nano /etc/grub.d/40_custom - Agrega lo siguiente en la linea final:
set superusers="admin"
password_pbkdf2 admin grub.pbkdf2.sha512.10000.ABCDEF1234XYZ...
(SustituyeABCDEF1234XYZ...por tu hash generado).
- Guarda y actualiza GRUB como sudo con:
sudo update-grub
🔐 Ahora, GRUB pedirá usuario y contraseña antes de permitir modificaciones.
Muy buena documentacion lo hice en casa y funciona. ¿Se puede hacer en cualquier tipo de linux o solo en kali?
ResponderEliminar¡Gracias por tu comentario! Sí, este método funciona en cualquier distribución de Linux que utilice GRUB como gestor de arranque, no únicamente en Kali. La diferencia está en que Kali incluye GRUB por defecto, pero distribuciones populares como Ubuntu, Debian, Fedora, CentOS, entre otras, también lo utilizan y este método sería igualmente efectivo en ellas.
Eliminar