Outils pour utilisateurs

Outils du site


controleintegrite

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
controleintegrite [2009/09/08 14:43]
root permier jet de portage
controleintegrite [2012/02/05 16:43] (Version actuelle)
Ligne 1: Ligne 1:
 +====== le controle d'​integrite ======
 +
 +
 cette page a été faite pour une conférence sur la sécurité au [[http://​www.culte.org/​ | culte]] le samedi 9 avril 2005. Elle est sous licence LGPL voir le site [[http://​www.gnu.org]] pour plus de renseignements cette page a été faite pour une conférence sur la sécurité au [[http://​www.culte.org/​ | culte]] le samedi 9 avril 2005. Elle est sous licence LGPL voir le site [[http://​www.gnu.org]] pour plus de renseignements
 Vous pouvez redistribuer et modifier ce document selon les termes de la Licence Publique Générale GNU (LGPL) version 2 ou toute autre version ultérieure ​ Vous pouvez redistribuer et modifier ce document selon les termes de la Licence Publique Générale GNU (LGPL) version 2 ou toute autre version ultérieure ​
  
-====== rappels sur la sécurité informatique ======+===== rappels sur la sécurité informatique ===== 
  
  
 Je vais essayer d'​illustrer les différents composants de la sécurité informatique par comparaison avec ceux d'une maison : Je vais essayer d'​illustrer les différents composants de la sécurité informatique par comparaison avec ceux d'une maison :
  
-===== défense passive ​=====+==== défense passive ====
  
 ^  maison ​ ^   ​ordinateur ​ ^ ^  maison ​ ^   ​ordinateur ​ ^
Ligne 14: Ligne 18:
  
  
-===== défense active ​=====+==== défense active ====
  
 ^  maison ​ ^  ordinateur ​ ^ ^  maison ​ ^  ordinateur ​ ^
Ligne 21: Ligne 25:
 ids = Intrusion Detection System (en français : système de détection d'​intrusion) ids = Intrusion Detection System (en français : système de détection d'​intrusion)
  
-===== analyse ​=====+==== analyse ====
  
 ^  maison ​ ^   ​ordinateur ​ ^ ^  maison ​ ^   ​ordinateur ​ ^
 |  inventaire,​empreintes ​ |  analyse des logs,​contrôle d'​intégrité ​ | |  inventaire,​empreintes ​ |  analyse des logs,​contrôle d'​intégrité ​ |
  
 +===== généralités sur le contrôle d'​intégrité =====
 + 
 +==== son but ====
 +
 +Le but est de connaître ce qui a été modifié sur une machine, ce qui va permettre de :
 +
 +    * détecter les intrusions : pourquoi la commande bash a-t-elle changé de taille ?
 +    * corriger une configuration : depuis hier ce logiciel ne se lance plus, qu'​est-ce qui a changé ?
 +    * faire des rapports d'​installation : pour savoir ce qu'un logiciel installe exactement
 +
 +==== que surveiller ====
 +
 +Les propriétés des fichiers :
 +
 +    * taille
 +    * droits
 +    * propriétaire/​groupe
 +    * date de modification,​ d'​accès
 +    * checksum (md5, sha1) : à calculer pour détecter des modifications
 +
 +==== comment ça marche ====
 +
 +Le logiciel travaille par comparaison avec un état précédant,​ un peu comme le jeu des 7 erreurs entre 2 photos. Il stocke cet état dans une base de donnée.
 +
 +==== préconisation ====
 +
 +Lancement régulier du logiciel. La meilleure solution est un lancement journalier par cron.
 +
 +==== remarque ====
 +
 +Le système de package [[http://​www.rpm.org | rpm]] offre un système équivalent pour
 +
 +    * vérifier l'​intégrité d'un package fichier : rpm -K
 +    * vérifier l'​intégrité d'un package installé par rapport à son "​image"​ initiale : rpm -V
 +
 +mais il ne détecteras pas un nouveau fichier installé sans rpm.
 +
 +===== Les limites du contrôle d'​intégrité =====
 +
 +==== la configuration ====
 +
 +Des fichiers sont modifiés en permanence, pour ne pas être submergé de fausses alarmes, on ne peut pas surveiller tous les fichiers, ni tous les paramètres. Il y a donc un travail important de configuration initiale.
 +
 +==== l'​état initial ====
 +
 +Après la configuration,​ il faut fabriquer le premier "​état"​. Il faut que celui-ci soit absolument sûr (machine non infectée), puisque on va se baser dessus.
 +
 +==== les mises à jour ====
 +
 +Une des préconisation de la sécurité informatique,​ c'est de mettre régulièrement sa machine à jour avec les correctifs de sécurité logiciels :
 +
 +    * attention à ne prendre que des correctifs surs : si possible signé par gpg, et contrôler l'​intégrité du correctif.
 +    * Toute mise a jour va générer de gros rapports, qu'il va falloir contrôler pour voir si ça ne masque pas une intrusion
 +    * il faut pouvoir mettre à jour la base de données du controle d'​intégrité
 +
 +==== intrusion "​forte"​ ====
 +
 +lors d'une intrusion, l'​attaquant va chercher a camoufler ses traces (logs , ...).
 +l'​attaquant peut aussi chercher si des logiciels d'​intrusions sont installés et tenter de modifier leur fonctionnement :
 +
 +=== base attaquée ===
 +
 +il peut essayer de modifier la base de référence,​ afin que la comparaison ne montre rien.
 +solutions :
 +
 +    * cryptage de la base de référence
 +    * base de référence sur un support en lecture seule, ou externe, montée seulement pour les comparaisons
 +
 +=== logiciel attaqué ===
 +
 +il peut modifier le logiciel lui-même.
 +solution :
 +
 +    * auto-controle du logiciel
 +    * logiciel sur un support externe amovible
 +
 +=== noyau attaqué ===
 +
 +il peut modifier le système d'​exploitation : libc, module noyau ...
 +solution :
 +
 +    * lancer le logiciel depuis un système propre, par exemple un livecd (knoppix ...)
 +
 +tous ces problèmes militent pour un lancement manuel, en plus du lancement par cron.
 +
 +===== Panorama des logiciels existants =====
 +
 +Il y a maintenant un panorama très étendu d'​outils :
 +
 +    * [[http://​www.tripwire.com/​|tripwire]]:​ probablement un des plus anciens. C'​était un logiciel propriétaire,​ mais la licence est devenue GPL sous linux.
 +    * [[http://​www.cs.tut.fi/​~rammer/​aide.html|aide]] : un clone de tripwire, écrit en C, pour offrir une alternative libre au logiciel commercial sur linux/unix
 +    * [[afick]] : un clone libre et portable, pour fonctionner sur toute plate-forme (Unix, linux, Windows), avec des interfaces graphiques conviviales,​ dont je suis l'​auteur
 +
 + --- //​[[eric.gerbier@free.fr|eric gerbier]] 2009/09/14 11:09//
  
 +{{tag>​securite tripwire afick}}
controleintegrite.1252413789.txt.gz · Dernière modification: 2012/02/05 16:43 (modification externe)