Sécuriser son boot loader

De SeRoM - Wiki
Aller à : navigation, rechercher

Profiter d'un boot laoder non sécurisé

Sous Linux deux 'bootloaders' sont principalement utiliser pour charger le système d'exploitation en mémoire, il s'agit de GRUB et de LILO. Nous pouvons profiter du fait que bien peut d'utilisateurs (moins de 1%) sécurisent ces bootloaders pour avoir accès à une console root, pour par exemple voir les mots de passe des fichier /etc/passwd ou /etc/sadow.

Comment voir le fichier /etc/passwd ou shadow

Rien de plus simple:

Lors du démarrage de GRUB vous attendez qu'il vous demande quel système vous voulez démarrer, à se moment là vous appuyer sur e pour pouvoir éditer le fichier de démarrage:

root (hd0,5)
Kernel /boot/vmlinuz-2.6.16-2-686 root=/dev/hda6 ro
initrd	/boot/initrd.img-2.6.16-2-686
savedefault

voilà le plus dur est fait, on y est presque, si si je vous promet ...

Maintenant on revient dans le choix du système de démarrage et on appuie sur la touche c pour passer en mode shell...

là il faut retaper les lignes que vous avez vu dans votre menu de démarrage ... juste une petite modification ... tapez :

init=/bin/sh 

à la fin de la ligne commençant par Kernel.

ça devrait donner à peut près ça :

Kernel /boot/vmlinuz-2.6.16-2-686 root=/dev/hda6 ro init=/bin/sh 

Voilà facile non ? Non vous trouvez ça trop dur alors peut-être aurais vous la chance d'être devant un ordinateur avec LILO, car dans ce cas il suffit de taper : 'linux single' pour être devant un sheel root...

Alors maintenant comment voir les fichiers ...

vous tapez pour accéder à la partition voulu :

root(hd0,0)

et ensuite cat pour voir les fichiers :

cat /etc/passwd
cat /etc/shadow

Sécuriser son boot loader

Bon maintenant tout ça c'est bien beau mais comment faire pour se protéger de cela :

Si vous avez GRUB:

Ajouter simplement au début du fichier /boot/grub/menu.lst

password --md5 XXX

avec XXX qui désigne votre mots de passe crypté (man grub-md5-crypt)

voir mieux en SHA512

password --encrypted YYYYY

Tip

Tips

Les commandes grub-md5-crypt ou grub-crypt pour générer le hash.

La position de la ligne password est importante! Sa portée peut être au niveau globale ou au niveau de l'entrée de boot.

  • Dans le premier cas (global), le mot de passe sera demander pour entrer dans le mode d'édition.
  • Dans ce second cas (sur une entrée), grub demandera le mot de passe avant de pouvoir démarrager de cette entrée.

Attention

Attention

Au mot de passé défini sur l'entré qui est choisie par default.

Si vous avez LILO:

Ajouter dans le fichier /etc/lilo.conf

password = XXXX
restricted

ici XXX est le mot de passe en clair...

Conclusion

Comme vous avez pu le voir il est très facile pour quelqu'un qui a un accès physique à votre ordinateur de connaître vos mots de passe si votre bootloader n'est pas sécurisé, donc à bon entendeur ...