Red Hat Enterprise Linux 3: Guide de sécurité | ||
---|---|---|
Précédent | Chapitre 4. Sécurité du poste de travail | Suivant |
La protection de mots de passe associés au BIOS et au chargeur de démarrage peut empêcher que des utilisateurs non-autorisés ayant un accès physique à vos systèmes ne les démarrent à partir d'un média amovible ou ne s'octroient un accès super-utilisateur par le biais du mode mono-utilisateur. Ceci étant, les mesures de sécurité à prendre afin de se protéger contre de telles agressions dépendent aussi bien de la confidentialité des informations contenues dans le poste de travail que de l'emplacement de l'ordinateur.
Par exemple, si un ordinateur est utilisé lors d'un salon et ne contient aucune information confidentielle, il n'est peut être pas nécessaire de se protéger contre de telles agressions. En revanche, si l'ordinateur portable d'un employé disposant de clés SSH privées non-cryptées pour accéder au réseau de l'entreprise est laissé sans surveillance lors de ce même salon, une sérieuse brèche de sécurité peut alors être ouverte avec des conséquences potentiellement très dangereuses pour toute la société.
D'autre part, si un poste de travail se trouve dans un endroit auquel seules des personnes autorisées ou dignes de confiance ont accès, alors la sécurisation du BIOS ou du chargeur de démarrage ne sera peut-être pas du tout nécessaire.
Ci-dessous figurent les deux raisons essentielles pour lesquelles des mots de passe sont utiles pour protéger le BIOS d'un ordinateur[1] :
Empêcher toute modification des paramètres du BIOS — Si un intrus a accès au BIOS, il peut le configurer de manière à démarrer à partir d'une disquette ou d'un CD-ROM. De la sorte, il peut entrer dans un mode de secours ou un mode mono-utilisateur, lui permettant alors de répandre des programmes aux intentions malveillantes ou de copier des données confidentielles.
Empêcher le démarrage du système — Certains BIOS permettent de protéger le processus de démarrage à l'aide d'un mot de passe. Lorsque cette fonctionnalité est activée, tout agresseur est obligé de saisir un mot de passe avant que le BIOS ne puisse lancer le chargeur de démarrage.
Les méthodes utilisées pour établir un mot de passe pour le BIOS varient selon les fabricants d'ordinateurs, il est conseillé de consulter le manuel de votre ordinateur pour obtenir les instructions appropriées.
Dans le cas où vous oublieriez le mot de passe du BIOS, il est possible de le réinitialiser soit en utilisant des cavaliers sur la carte mère, soit en débranchant la pile CMOS. Pour cette raison, il est toujours recommandé de verrouiller la sacoche de l'ordinateur, dans la mesure du possible. Consultez néanmoins le manuel de votre ordinateur avant de mettre en oeuvre cette procédure.
D'autres architectures utilisent différents programmes pour effectuer des tâches de bas niveau, équivalents à ceux du BIOS sur les systèmes x86. Par exemple, les ordinateurs Itanium™ Intel® utilisent le shell EFI (Extensible Firmware Interface).
Pour davantage d'instructions sur la protection par mots de passe de ces programmes sur d'autres architectures, reportez-vous aux instructions du fabricant.
Ci-dessous figurent les raisons essentielles pour lesquelles il est important d'utiliser des mots de passe pour protéger un chargeur de démarrage Linux :
Empêcher l'accès au mode mono-utilisateur — Si un agresseur peut démarrer en mode mono-utilisateur, il devient le super-utilisateur.
Empêcher l'accès à la console GRUB — Si l'ordinateur utilise GRUB comme chargeur de démarrage, un agresseur peut utiliser l'interface de l'éditeur de GRUB afin de changer sa configuration et de recueillir des informations à l'aide de la commande cat.
Empêcher l'accès à des systèmes d'exploitation non-sécurisés — Dans le cas d'un système à double démarrage, un agresseur peut, au moment du démarrage, choisir un système d'exploitation tel que DOS qui ne prend en compte ni les contrôles d'accès, ni les permissions de fichiers.
Pour les plates-formes x86, Red Hat Enterprise Linux offre le choix entre deux chargeurs de démarrage, GRUB et LILO. Pour obtenir un aperçu détaillé de chacun de ces chargeurs de démarrage, reportez-vous au chapitre intitulé Chargeurs de démarrage du Guide de référence de Red Hat Enterprise Linux.
Il est possible de configurer GRUB de telle sorte qu'il résolve les deux problèmes cités dans la Section 4.2.2 en ajoutant une directive de mot de passe dans son fichier de configuration. Pour ce faire, déterminez d'abord un mot de passe, puis ouvrez une invite du shell, connectez-vous en tant que super-utilisateur et tapez :
/sbin/grub-md5-crypt |
À l'invite, insérez le mot de passe de GRUB et appuyez sur la touche
Ensuite, éditez le fichier de configuration de GRUB, à savoir /boot/grub/grub.conf. Ouvrez le fichier et en dessous de la ligne timeout figurant dans la partie principale du document, ajoutez la ligne suivante :
password --md5 <password-hash> |
Remplacez <password-hash> par la valeur donnée par /sbin/grub-md5-crypt[2].
Lors du prochain démarrage du système, le menu de GRUB ne vous permettra pas d'accéder à l'éditeur ou à l'interface de commande sans appuyer auparavant sur la touche
Malheureusement, cette solution n'empêche pas un agresseur de démarrer un système d'exploitation non-sécurisé dans l'environnement d'un système à double démarrage. Afin d'éviter cette situation, il est nécessaire d'éditer une partie différente du fichier de configuration /boot/grub/grub.conf.
Trouvez la ligne title du système d'exploitation non-sécurisé et ajoutez directement en dessous, une ligne spécifiant lock.
Pour un système DOS, le stanza devrait commencer par des éléments similaires à ceux figurant ci-dessous :
title DOS lock |
![]() | Avertissement |
---|---|
Pour que cette méthode fonctionne correctement, il est nécessaire d'avoir une ligne password dans la section principale du fichier /boot/grub/grub.conf. Dans le cas contraire, un agresseur sera à même d'accéder à l'interface de l'éditeur de GRUB et pourra supprimer la ligne lock. |
Si vous souhaitez avoir un mot de passe différent pour un noyau particulier ou un système d'exploitation spécifique, ajoutez une ligne lock au stanza, suivie d'une ligne mot de passe.
Chaque stanza que vous protégez à l'aide d'un mot de passe unique devrait commencer par des lignes semblables à l'exemple suivant :
title DOS lock password --md5 <password-hash> |
LILO est un chargeur de démarrage beaucoup plus simple que GRUB et, ne disposant pas d'une interface de commande, il n'y a pas lieu de s'inquiéter de la possibilité qu'un agresseur s'approprie un accès interactif au système avant le chargement du noyau. Toutefois, il est toujours possible que des agresseurs démarrent en mode mono-utilisateur ou démarrent un système d'exploitation dans un environnement non-sécurisé.
Il est également possible de protéger LILO à l'aide d'un mot de passe en ajoutant une directive pour le mot de passe dans la section globale de son fichier de configuration. Pour ce faire, ouvrez une invite du shell et, connecté en tant que super-utilisateur, éditez le fichier /etc/lilo.conf. Avant le premier stanza relatif à image, ajoutez une directive pour le mot de passe semblable à l'extrait ci-dessous :
password=<password> |
Dans la directive ci-dessus, remplacez le mot <password> par votre mot de passe pour LILO.
![]() | Important |
---|---|
Chaque fois que vous modifiez le fichier /etc/lilo.conf, vous devez exécuter la commande /sbin/lilo -v -v afin que les modifications apportées prennent effet. Si vous avez configuré un mot de passe et que toute personne autre que le super-utilisateur peut lire le fichier, LILO pourra être installé proprement, mais le système vous indiquera que les permissions associées au fichier de configuration sont incorrectes. |
Si vous ne désirez pas avoir un mot de passe global, vous pouvez appliquer la directive de mot de passe à tout stanza correspondant à tout noyau ou système d'exploitation. Pour ce faire, ajoutez la directive de mot de passe directement au-dessous de la ligne image. Une fois cet ajout effectué, le début du stanza protégé par un mot de passe ressemblera à l'extrait suivant :
image=/boot/vmlinuz-<version> password=<password> |
Dans l'exemple précédent, remplacez <version> par la version du noyau et <password> par le mot de passe de LILO pour ce noyau.
Si vous souhaitez permettre le démarrage d'un noyau ou système d'exploitation sans vérification de mot de passe, mais ne désirez pas que tout utilisateur puisse ajouter des arguments sans mot de passe, vous pouvez ajouter la directive restricted sur la ligne figurant au dessous de la ligne relative au mot de passe dans le stanza. Le début d'un tel stanza ressemble à l'extrait ci-dessous :
image=/boot/vmlinuz-<version> password=<password> restricted |
Ici encore, remplacez <version> par la version du noyau et <password> par le mot de passe de LILO pour ce noyau.
Si vous utilisez la directive restricted, une ligne de mot de passe doit également figurer dans le stanza.
![]() | Avertissement | |
---|---|---|
Le fichier /etc/lilo.conf est lisible par tout un chacun. Si vous décidez de protéger LILO au moyen d'un mot de passe, il est essentiel de n'autoriser la lecture et la modification du fichier qu'au super-utilisateur car tous les mots de passe sont en texte clair. Pour ce faire, tapez la commande suivante en étant connecté en tant que super-utilisateur :
|
[1] | Puisque les BIOS systèmes diffèrent selon les fabricants, il se peut que certains ne prennent pas en charge la protection de mots de passe, quel que soit leur type, alors que d'autres prendront en charge un certain type et pas un autre |
[2] | Bien que GRUB accepte également les mots de passe en texte clair, il est recommandé d'utiliser un hachage md5 pour une meilleure sécurité. |
Précédent | Sommaire | Suivant |
Sécurité du poste de travail | Niveau supérieur | Sécurité des mots de passe |