Contrôle de l'intégrité des serveurs

Décembre 2016

Contrôle d'intégrité


Lorsqu'un serveur a été compromis, le pirate masque généralement son passage en supprimant les traces dans les journaux d'activités. Par ailleurs, il installe un certain nombre d'outils lui permettant de créer une porte dérobée, afin d'être à même de pouvoir revenir ultérieurement.

Nec plus ultra, le pirate pense généralement à corriger la vulnérabilité lui ayant permis de s'introduire afin d'éviter que d'autres pirates s'infiltrent.

Sa présence sur un serveur peut néanmoins être trahie par un certains nombre de commandes d'administration permettant d'afficher la liste des processus en cours ou bien tout simplement les utilisateurs connectés à la machine. Il existe ainsi des logiciels, appelés rootkits, chargés d'écraser la plupart des outils du système et de les remplacer par des commandes équivalentes masquant la présence du pirate.

Il est donc aisé de comprendre qu'en l'absence de détérioration il peut être très difficile pour un administrateur de s'apercevoir qu'une machine a été compromise. Une des premières actions lors de la découverte d'une compromission consiste à dater la compromission afin d'évaluer l'étendue potentielle sur les autres serveurs.

En effet, d'une manière générale les serveurs stockent dans des fichiers une trace de leur activité et en particulier des erreurs rencontrées.

Or, lors d'une attaque informatique il est rare que le pirate parvienne à compromettre un système du premier coup. Il agit la plupart du temps par tâtonnement, en essayant différentes requêtes.

Ainsi la surveillance des journaux permet de détecter une activité suspecte. Il est en particulier important de surveiller les journaux d'activité des dispositifs de protection car tout aussi bien configuré qu'il soient, il se peut qu'ils soient un jour la cible d'une attaque.

Analyse de la présence de rootkits


Il existe certains logiciels (chkrootkit par exemple) permettant de vérifier la présence de rootkits sur le système. Néanmoins, afin de pouvoir utiliser ce type d'outils, il est essentiel d'être certain de l'intégrité de l'outil et de l'affichage qu'il délivre. Or, un système compromis ne peut pas être considéré comme fiable.

Analyse d'intégrité


Afin de s'assurer de l'intégrité d'un système, il est donc nécessaire de détecter les compromissions en amont. C'est ainsi l'objectif poursuivi par les contrôleurs d'intégrité tel que Tripwire.

Le logiciel Tripwire, développé à l'origine par Eugène Spafford et Gene Kim en 1992, permet d'assurer l'intégrité des systèmes en surveillant de façon permanente les modifications apportées à certains fichiers ou répertoires. Tripwire effectue en effet un contrôle d'intégrité et maintient à jour une base de signature. A intervalles réguliers il inspecte notamment les caractéristiques suivantes des fichiers afin d'identifier les modifications et les éventuelles compromissions :

  • permissions ;
  • date de dernière modification ;
  • date d'accès ;
  • taille du fichier ;
  • signature du fichier.



Les alertes sont envoyées par courrier électronique, de préférence sur un serveur distant, afin d'éviter tout effacement de la part du pirate.

Limites du contrôle d'intégrité


Afin de pouvoir s'appuyer sur les résultats d'un contrôleur d'intégrité il est essentiel d'être sûr de l'intégrité de la machine lors de l'installation. Il est également très difficile de configurer ce type de logiciel tant le nombre potentiel de fichiers à surveiller peut être important. De plus, lors de l'installation de nouvelles applications il est indispensable de mettre leurs fichiers de configuration sous contrôle.

Par ailleurs, ce type de solution est susceptible d'envoyer un grand nombre de fausses alertes, notamment lorsque le système modifie seul des fichiers de configuration ou lors de mises à jour du système.

Enfin, si la machine est effectivement compromise, il est possible que le pirate tentera de compromettre le contrôleur d'intégrité avant la prochaine mise à jour, d'où l'importance de stocker les alertes sur une machine distante ou bien un support externe non réinscriptible.

Ressources





Article rédigé le 22 mai 2006 par Jean-François PILLOU.


A voir également :


Server integrity check
Server integrity check
Controllo di integrita dei server
Controllo di integrita dei server
Controle da integridade dos servidores
Controle da integridade dos servidores
Ce document intitulé «  Contrôle de l'intégrité des serveurs  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.