Perché conta
Tutte le difese viste finora presuppongono un sistema già avviato e integro. Ma il processo di avvio
è esso stesso un bersaglio: chi ha accesso alla console — fisicamente, o alla console di una VM/IPMI —
può interrompere GRUB, aggiungere init=/bin/bash ai parametri del kernel e ottenere una shell di root
senza password, scavalcando login, SSH e PAM. La sicurezza del boot chiude questa porta e stabilisce
una catena di fiducia dal firmware al kernel.
La minaccia: la shell di root al boot
Dal menu di GRUB, premendo e si editano i parametri di avvio. Aggiungere init=/bin/bash o
systemd.unit=rescue.target può dare una shell privilegiata prima che partano le protezioni. È il
motivo per cui, con accesso alla console, un sistema non protetto al boot è già perso.
|
|
Password su GRUB
Proteggere l’editing delle voci e la modalità rescue con una password impedisce questo scavalcamento.
|
|
|
|
|
|
Il bilanciamento tipico: l’avvio normale non chiede password (il server riparte da solo dopo un riavvio), ma modificare i parametri o entrare in rescue sì.
Secure Boot: la catena di fiducia
Secure Boot (UEFI) verifica la firma crittografica di ogni anello della catena d’avvio: il firmware verifica il bootloader (shim/GRUB), che verifica il kernel, che verifica i moduli. Se un componente non è firmato da una chiave fidata, non parte. Protegge da bootkit e da un kernel/bootloader manomesso.
|
|
Su Linux funziona tramite shim firmato da Microsoft (la cui chiave è nei firmware) che a sua volta
verifica il bootloader della distribuzione. Puoi anche iscrivere le tue chiavi (MOK) per firmare moduli
kernel custom.
Fin dove arriva (e fin dove no)
|
|
Secure Boot verifica che il software che parte sia fidato, ma non protegge i dati a riposo: chi stacca il disco e lo legge altrove scavalca tutto. È il naturale ponte al prossimo tema.
Conclusione
Password su GRUB contro lo scavalcamento da console e Secure Boot per la catena di fiducia del software d’avvio chiudono gli attacchi al boot — ma non proteggono i dati su un disco rimosso. Per quello serve rendere illeggibile il disco stesso: la cifratura con LUKS, prossimo capitolo.