Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| master_cs:fortificacion:p1 [2025/02/04 14:36] – thejuanvisu | master_cs:fortificacion:p1 [2025/02/04 16:03] (actual) – thejuanvisu | ||
|---|---|---|---|
| Línea 5: | Línea 5: | ||
| setroot=(hd0, | setroot=(hd0, | ||
| linux /vmlinux root=/ | linux /vmlinux root=/ | ||
| - | initrd /initrd.img | + | initrd |
| </ | </ | ||
| - | ===== 1. Interrumpir el booteo y conceguir | + | ===== 1. Interrumpir el booteo y conseguir |
| - | Al arrancar | + | Para empezar pulsaremos c durante |
| - | {{: | + | |
| - | Desde ahí introducimos | + | |
| < | < | ||
| + | set root=hd0, | ||
| + | ls / | ||
| + | cat /etc/shadow | ||
| </ | </ | ||
| + | Con Cat podremos ver las contraseñas cifradas, incluida la de Root: | ||
| + | <wrap column 100%> | ||
| + | {{: | ||
| + | </ | ||
| ===== 2. Conseguir Root editando los parámetros pasados al kernel cuando se bootea ===== | ===== 2. Conseguir Root editando los parámetros pasados al kernel cuando se bootea ===== | ||
| Ya sea desde línea de comandos o editando el menú | Ya sea desde línea de comandos o editando el menú | ||
| + | |||
| + | Hay que cambiar el init de arranque por /bin/bash, haciendo que se arranque directamente el terminal en modo Root. | ||
| + | < | ||
| + | ls #Para ver las particiones | ||
| + | set root=hd0, | ||
| + | linux / | ||
| + | initrd / | ||
| + | boot | ||
| + | </ | ||
| + | <wrap column 100%> | ||
| + | {{: | ||
| + | </ | ||
| + | |||
| ===== 3. Definir dos superusuarios de grub y establecer contraseñas para ellos ===== | ===== 3. Definir dos superusuarios de grub y establecer contraseñas para ellos ===== | ||
| - | 2 en texto plano y 2 cifradas de forma que todavía existan cuando la configuración de Grub se actualiza | + | //2 en texto plano y 2 cifradas de forma que todavía existan cuando la configuración de Grub se actualiza// |
| + | |||
| + | Primero creamos dos contraseñas almacenadas en texto plano y, tras eso, para cifrar las contraseñas se usa el comando: | ||
| + | < | ||
| + | grub-mkpasswd-pbkdf2 | ||
| + | </ | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Tras eso se procede a modificar el archivo / | ||
| + | {{: | ||
| + | |||
| + | Tras eso actualizamos la configuración de grub: | ||
| + | <wrap column 100%> | ||
| + | {{: | ||
| + | </ | ||
| ===== 4. Verificar que solo el superuser de grub pueda acceder a la línea de comadnos del grub ===== | ===== 4. Verificar que solo el superuser de grub pueda acceder a la línea de comadnos del grub ===== | ||
| + | Podemos observar que al reiniciar se nos solicita nombre y usuario para poder acceder a la terminal de grub: | ||
| + | <wrap column 100%> | ||
| + | {{: | ||
| + | </ | ||
| + | ===== 5. Añade 2 entradas llamadas UserOnly y AlwaysAvailable ===== | ||
| + | * AlwaysAvailable: | ||
| + | * UserOnly: solo puede ser booteada por los usuarios | ||
| + | * Solo los superusuarios pueden bootear las entradas restantes | ||
| + | Para crear las entradas debemos crear unas " | ||
| + | < | ||
| + | menuentry " | ||
| + | set root=(hd0, | ||
| + | linux / | ||
| + | initrd / | ||
| + | boot | ||
| + | } | ||
| + | menuentry " | ||
| + | set root=(hd0, | ||
| + | linux / | ||
| + | initrd / | ||
| + | password usuario3 1234 | ||
| + | boot | ||
| + | } | ||
| + | </ | ||