12.9. Caractéristiques des niveaux de sécurisation

Viennent ici la description des différentes caractères de sécurité que chaque niveau apporte au système. Ces caractères sont de deux types: fortifications qui modifient le système, et vérifications périodiques qui ne modifient pas le système.

12.9.1. Système de fortifications

Le système de fortification modifie les permissions, propriétaire, groupe des fichiers et répertoires du système selon le niveau de sécurité.

Le système de fortification modifie aussi les fichiers de configuration et relance les programmes concernés pour prendre en compte les changements. Le système de fortification est lancé toute les heures ; tous les changements sont enregistrés par syslog.

Caractéristique \ niveau012345
umask des utilisateurs002002002002077077
umask de root002002002002002077
shell sans mot de passeoui     
Autorisés à se connecter au serveur Xtouslocallocalaucunaucunaucun
Le serveur X réponds aux requêtestoutestoutestoutestouteslocaleslocales
expiration du shell (sec.)nonnonnonnon3600900
su uniquement pour les membres du groupe wheel     oui
taille de l'historique du shell    10 10
sulogin en runlevel 1    ouioui
affiche la liste des utilisateurs dans le gestionnaire de connexionouiouiouiouinonnon
ignore les echo ICMP    ouioui
ignore les messages d'erreur ICMP défectueux    ouioui
connexion root directeouiouiouioui  
libsafe activée    ouioui
autorise at et crontab pour les utilisateursouiouiouiouinonnon
expiration du mot de passe (jours)    6030
empêche autologin   ouiouioui
autorise « issues  » (invites de connexion)toustoustouslocallocalaucun
. dans $PATHouioui    
Avertissements dans /var/log/security.log ouiouiouiouioui
Avertissements directement sur la console  ouiouiouioui
Avertissements dans syslog  ouiouiouioui
Avertissements envoyés par courrier électronique à root  ouiouiouioui
Tous les événements système redirigés vers tty12   ouiouioui
Seul root peut faire ctrl-alt-del    ouioui
Services inconnus désactivés    ouioui
Connections autorisées depuistoustoustoustouslocalaucun

12.9.1.1. umask des utilisateurs

Indique le umask qui sera utilisé pour les utilisateurs normaux du système suivant le niveau de sécurisation.

12.9.1.2. umask pour Root

La même chose, mais pour root.

12.9.1.3. Shell sans mot de passe

L'accès à la console est permis sans mot de passe.

12.9.1.4. autorisés à se connecter au serveur X

  1. tous : n'importe qui, connecté depuis n'importe où, peut ouvrir une fenêtre X sur votre écran ;

  2. local : seules les personnes connectées sur votre système pourront y ouvrir une fenêtre X;

  3. aucun : personne ne peut faire cela.

12.9.1.5. Le serveur X écoute les connections de

  1. tous : le serveur X écoute les connections depuis tcp.

  2. local : le serveur X écoute les connections depuis une interface (socket) UNIX.

12.9.1.6. Expiration du shell

Si l'utilisateur reste inactif pendant une période donnée, la session est fermée.

12.9.1.7. su autorisé uniquement pour les membres du groupe wheel

Seuls les membres du groupe wheel sont autorisés à utiliser su pour prendre l'identité root.

12.9.1.8. Taille de l'historique du shell

Le nombre de commandes sauvegardées à la fin d'une session shell.

12.9.1.9. sulogin en runlevel 1

sulogin est utilisé pour protéger l'accès au niveau d'exécution « utilisateur unique  » (single user (Le mot de passe de root est requis).

12.9.1.10. Empêcher de lister les utilisateurs dans le gestionnaire de connexion

Empêcher de lister les utilisateurs du système dans KDM et GDM.

12.9.1.11. ignorer les échos ICMP

Ne réponds pas aux requêtes ping.

12.9.1.12. ignore les messages d'erreur ICMP défectueux

Ne gère pas les messages d'erreur ICMP défectueux.

12.9.1.13. Connexion root directe

Autoriser root à se connecter directement sans avoir à utiliser le programme su.

12.9.1.14. activer la libsafe

Active la protection libsafe (Effectif uniquement si le paquetage libsafe est installé).

12.9.1.15. interdire at et crontab aux utilisateurs

Les commandes at et crontab sont interdits aux utilisateurs mais peuvent être utilisées par root. Si vous souhaitez autoriser seulement quelques utilisateurs, ajoutez les dans les fichiers /etc/at.allow et /etc/cron.allow respectivement.

12.9.1.16. Expiration des mots de passe

Les mots de passe expirent après une période donnée. Les utilisateurs doivent les changer avant l'expiration du délai s'ils ne veulent pas que leur compte soit désactivé.

12.9.1.17. Empêcher autologin

Le programme autologin est interdit.

12.9.1.18. Autorise les bannières de connexion

Si positionné à aucun, aucune bannière de connexion n'est affichée. Si positionné à local, seule la bannière de connexion sur la console est affichée. Si positionné à all, une bannière de connexion est affichée pour toutes les invites de connexion.

12.9.1.19. . dans $PATH

L'entrée . est ajoutée à la variable d'environnement $PATH, ce qui permet d'exécuter facilement des programmes se trouvant dans le répertoire courant (c'est aussi, d'une certaine manière, une faille dans la sécurité).

12.9.1.20. avertissements dans security.log

Chaque avertissement généré par MSEC est archivé dans le fichier /var/log/security.log.

12.9.1.21. avertissements sur la console

Chaque avertissement généré par MSEC est affiché directement sur la console.

12.9.1.22. avertissements dans syslog

Les avertissements générés par MSEC sont adressés au service syslog.

12.9.1.23. avertissements envoyés par mail à Root

Les avertissements générés par MSEC sont également adressés à root par courrier électronique.

12.9.1.24. Les services inconnus sont désactivés

Lorsqu'un paquetage est installé, les services ne sont pas ajoutés par chkconfig --add <service> et ainsi insérés dans la séquence de démarrage uniquement si le nom du service n'est pas connu de /etc/security/msec/server.

12.9.1.25. autorise les connections à

  1. tous: toutes les machines sont autorisés à se connecter sur les ports ouverts.

  2. local : seul le système peut se connecter à ses propres ports.

  3. aucun : aucun ordinateur ne peut se connecter.

Cette protection est apportée par le paquetage tcp wrappers. Si vous souhaitez autoriser l'accès à un service alors qu'aucun d'eux n'est autorisé, utilisez /etc/hosts.allow. Par exemple, si vous souhaitez autoriser les connections ssh depuis partout, ajoutez la ligne suivante à /etc/hosts.allow:

sshd: ALL

12.9.2. Vérifications périodiques

Si le niveau de sécurité est supérieur à 0, les vérifications sont faites toutes les nuits.

Caractéristique \ niveau012345
vérifications globales de sécurité ouiouiouiouioui
Vérification des fichiers suid root  ouiouiouioui
Vérification md5sum des fichiers suid root  ouiouiouioui
Vérification des fichiers en écriture   ouiouioui
Vérification des autorisations   ouiouioui
Vérification des fichiers groupe suid root   ouiouioui
Vérification des fichiers sans propriétaire   ouiouioui
Vérification promiscuous   ouiouioui
Vérification des ports ouverts   ouiouioui
Intégrité du fichier de mots de passe   ouiouioui
Intégrité du fichier shadow   ouiouioui
Vérifications d'intégrité de la base RPM   ouiouioui

Remarque : sept des dix vérifications périodiques peuvent détecter les modifications survenues dans votre système. Elles sauvegardent la configuration antérieure du système (celle de la veille) dans le répertoire /var/log/security/ et vous avertissent des changements qui auraient pu intervenir entre-temps. Ces vérifications sont les suivantes :

12.9.2.1. vérifications globales de sécurité

  1. « NFS filesystems globally exported  » : (systèmes de fichiers de type NFS exportés en bloc) : cela est considéré comme peu sûr, puisqu'il n'y a aucune restriction sur l'identité de ceux qui peuvent monter ces systèmes de fichiers.

  2. « NFS mounts with missing nosuid   » : (montages par NFS sans l'option nosuid ), ces systèmes de fichiers sont exportés dans l'option nosuid, ce qui interdit aux programmes suid de fonctionner sur la machine.

  3. « Host trusting files contains + sign  » : (les fichiers de 'confiance' de l'hôte contiennent le signe + ) : cela signifie que l'un des fichiers /etc/hosts.equiv, /etc/shosts.equiv, /etc/hosts.lpd, référence un hôte autorisé à se connecter sans authentification préalable.

  4. « Executables found in the aliases files  » : (Exécutables découverts dans le fichier d'alias) : cet avertissement est généré lorsque l'un des fichiers /etc/aliases ou

12.9.2.2. Vérifications des fichiers suid root

Recherche les ajouts ou suppressions de fichiers suid root sur le système. S'il y en a eu, une liste des exécutables concernés est renvoyée sous la forme d'un avertissement.

12.9.2.3. vérification MD5 des fichiers SUID root

Vérifie la signature MD5 de chaque fichier suid root du système. Si la signature a changé, cela signifie qu'une modification a été apportée à ce programme, ce qui peut être le signe d'une intrusion. Un avertissement est alors envoyé.

12.9.2.4. vérification des fichiers inscriptibles

Cherche les fichiers qui sont inscriptibles par tout le monde sur le système et en génère la liste éventuels sous la forme d'un avertissement.

12.9.2.5. vérification des autorisations

Vérifie les autorisations relatives à certains fichiers tels que .netrc ou aux fichiers de configuration et aux répertoires des utilisateurs. Si ces autorisations permettent un accès trop étendu ou si les propriétaires apparaissent comme anormaux, un avertissement est envoyé.

12.9.2.6. vérification des fichiers sgid

Recherche les ajouts ou suppressions de fichiers suid groupe sur le système. S'il y en a eu, une liste des exécutables concernés est envoyée en avertissement.

12.9.2.7. vérification des fichiers sans propriétaire

Recherche les fichiers appartenant à des utilisateurs inconnus du système. Si de tels fichiers sont trouvés, le propriétaire en devient automatiquement nobody.

12.9.2.8. vérification de type promiscuous

Ce test vérifie chaque carte Ethernet pour déterminer si elle se trouve en mode « promiscuous  ». Ce mode permet à une carte d'intercepter tous les paquets reçus par la carte, même ceux qui ne lui sont pas destinés. Cela peut signifier qu'un sniffer (renifleur) fonctionne sur votre système. Cette vérification est effectuée toutes les minutes.

12.9.2.9. vérification des ports ouverts

Génère un avertissement contenant la liste des ports ouverts.

12.9.2.10. vérification de l'intégrité du fichier de mots de passe

Vérifie que chaque utilisateur a un mot de passe (non vide et pas trop facile à découvrir) et qu'il se trouve dans le fichier shadow.

12.9.2.11. vérification de l'intégrité du fichier shadow

Vérifie que chaque utilisateur a un mot de passe (non vide et assez difficile à trouver) dans le fichier shadow.

12.9.2.12. vérification d'intégrité de la base RPM

Vérifie qu'aucun des fichiers appartenant à un paquetage installé n'a été altéré et qu'aucun paquetage n'a été installé, supprimé ou mis à jour depuis la dernière vérification.


Tux sur Étoile de MandrakeSoft Linux est une marque déposée de Linus Torvalds. Toutes les autres marques et copyrights sont la propriété de leurs auteurs respectifs.
Sauf mention contraire, tout le contenu de ces pages et toutes les images sont Copyright MandrakeSoft S.A. et MandrakeSoft Inc. 2002.
http://www.mandrakelinux.com/