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 | ||
+ | } | ||
+ | </ | ||