Un honeypot (en français pot de miel) est un ordinateur ou un programme volontairement vulnérable destiné à attirer et à piéger les pirates informatiques.
Le but de ce leurre est de faire croire à l'intrus qu'il peut prendre le contrôle d'une véritable machine de production, ce qui va permettre d'observer les moyens de compromission des pirates, de se prémunir contre de nouvelles attaques et de laisser ainsi un temps supplémentaire de réaction à l’administrateur.
Une utilisation correcte d’un honeypot repose essentiellement sur la résolution et la mise en parallèle de trois problématiques :
Il faut partir du principe que toute information circulant sur le réseau à destination ou non du honeypot est importante. De ce fait, la surveillance doit absolument être constante et doit porter aussi bien au niveau local qu’au niveau distant. Cette surveillance de tous les instants repose sur :
La collecte d’informations est possible grâce à des outils appelés renifleurs qui étudient les paquets présents sur le réseau et stockent les événements dans des bases de données. On peut également collecter des informations brutes grâce à des analyseurs de trames.
C'est grâce à l'analyse des informations recueillies que l'on va pouvoir découvrir les défaillances du réseau à protéger et les motivations des pirates.
Un grand nombre de projets sur les honeypots ont vu le jour pour collecter des informations sur les outils utilisés par les pirates, leurs méthodes d’attaque et les failles de sécurité qu’ils exploitent mais aussi et surtout leurs motivations.
Dans cette perspective a débuté en juin 2000 le Honeynet Project, projet lancé par une association à but non lucratif composée de professionnels de la sécurité informatique. Leur philosophie est « connais ton ennemi » en référence à l'Art de la guerre.
Leurs objectifs sont :
On notera aussi d'autres projets intéressants :
On compte deux types de honeypots qui ont des buts et des fonctionnalités bien distinctes :
Ils sont les plus simples de la famille des honeypots. Leur but est de récolter un maximum d’informations tout en offrant un minimum de privilèges aux pirates. Ils permettent de limiter les risques au maximum.
On peut ranger, par exemple, la commande netcat dans cette catégorie.
Netcat peut écouter un port particulier et enregistrer dans un journal toutes les connexions, ainsi que les commandes entrées. Ce programme permet donc d'écrire dans un fichier toutes les commandes entrées par des agresseurs. Cependant, ce type d’écoute reste très limité car il faut exécuter la commande pour chaque port que l'on souhaite observer.
Dans la même famille, on pourra citer :
Ce type de honeypots peut être considéré comme le côté extrême du sujet puisqu’il repose sur le principe de l’accès à de véritables services sur une machine du réseau plus ou moins sécurisée.
Les risques sont beaucoup plus importants que pour les honeypots à faible interaction. Il apparaît donc nécessaire de sécuriser au maximum l’architecture du réseau pour que l’attaquant ne puisse pas rebondir et s’en prendre à d’autres machines.
Les deux grands principes d’un tel honeypot sont :
Il faut également relever l’existence de honeypots plus spécifiques comme les honeypots anti-spam ou anti-virus.