Grub: aumentarne la sicurezza Ciò che permette al sistema operativo di avviarsi è il bootloader: quelli migliori permettono anche di avviare (uno alla volta s'intende) piu sistemi operativi completamente diversi. Il bootloader viene installato nel MBR, i primi 512 byte del disco e viene lanciato appena dopo il bios; in genere consiste in un menu le cui voci corrispondono ai sistemi installati nell'hard disk, è automatizzato, ma editabile manualmente una volta avviato l'OS. La maggior parte delle distro, soprattutto le Debian-Like, utilizzano Grub come bootloader, molto potente e di facile configurazione. Esistono anche tool che permettono di modificarne le impostazioni graficamente.
Vulnerabilità Nonostante Grub sia un ottimo ed efficientissimo software, a meno di non configurare particolarmente le impostazioni di sicurezza, permette facilmente a terzi, in caso entrino in possesso della macchina, di modificare il sistema da root pur non conoscendo username e password d'accesso. Per rimediare a ciò è possibile impostare una o piu password che proteggano Grub dalle modifiche alle configurazioni e dall'avvio degli OS indesiderati. Il procedimento è facile e non richiede particolari conoscenze.
Impostare una password che protegga l'accesso alle configurazioni di avvio Innanzitutto è necessario ottenere una password: per essere piu precisi la password è impostabile a propria scelta, ma bisogna reperirla cifrata, in modo che il sistema sia protetto. Per farlo lanciate da terminale il seguente comando, vedrete aprirsi una particolare shell:
grub
A questo punto se volete approfondire e conoscere tutti i comandi a disposizione premete il tasto "TAB", altrimenti, per la scelta della password, date il comando
md5-crypt
ed ecco che vi si presenta la possibilità di scegliere la vostra parola chiave, alla fine vi verrà mostrato un codice alfanumerico che corrisponde alla vostra password cifrata, copiatelo.
È il momento di editare il file menu.lst contenuto in /boot/grub/; sono necessari i diritti di root, prima ovviamente create un backup del file:
dovete cercare la riga contenente una dicitura simile a questa:
# password [-md5-] passw
Analizziamola:
il cancelletto indica che la riga è solo un commento e non viene letta dal sistema per configurare le impostazioni, dovete renderla attiva quindi eliminate il cancelletto. La voce "password" è da lasciare intattatta mentre il resto è da cancellare poichè verrà riscritto in maniera piu precisa in seguito: si aggiunga la voce "--md5" e la password cifrata reperita prima, il risultato sarà simile a questo:
password --md5 $6$rGhhK$g/kO2y9G9Ycsa9Ey0tJ5H/
salvate e riavviate il sistema per poter verificare di aver eseguito i vari passi in modo corretto.
Impostare una password che protegga l'accesso ad ogni sistema operativo È possibile impostare una password diversa per ogni sistema operativo incluso nel menu.lst, il modo di reperirla è lo stesso di prima, ma la stringa è da inserire in un altro punto, ovvero sotto le opzioni d'avvio del sistema scelto. Ad ogni voce potete impostare una password diversa.
Se invece volete far sì che uno o piu sistemi operativi possano essere accessibili grazie alla stessa password impostata per le opzioni di boot inserite la stringa lock sotto il nome del sistema scelto.
Quando l'accesso ad un OS, uno qualsiasi, è protetto da password, l'avvio non viene eseguito automaticamente: bisogna dunque entrare in grub, selezionare il sistema da avviare e premere "p" per poter immettere la password.