Dans un article précédent, nous avons donné un aperçu des honeypots.
Nous poursuivons ici la discussion, avec des informations plus détaillées sur la mise en œuvre pratique. Rappelez-vous qu’un honeypot est un outil très flexible avec de nombreuses applications différentes en matière de sécurité.
Il existe des versions qui ciblent spécifiquement les logiciels malveillants, les services web, les SCADA/ICS et d’autres services.
Déterminer le niveau d’interaction approprié
Il existe des systèmes avec différents niveaux d’interaction.
L’interaction mesure l’activité qu’une implémentation en honeypot permet à l’attaquant. Plus l’interaction est permise, plus vous en apprendrez sur le pirate et ses intentions. Cependant, plus d’interaction implique plus de complexité dans la mise en œuvre et la maintenance.
Cela augmente également le risque qu’un pirate informatique s’échappe du conteneur du honeypot et attaque les systèmes de production réels.
Un honeypot à forte interaction utilise un système d’exploitation réel (ou des systèmes) tandis qu’un honeypot à faible interaction utilise l’émulation. La plupart des systèmes de honeypots commerciaux ou open-source se composent d’un menu de honeypots « design » au choix.
Types de packages de honeypots
L’approche de loin la plus simple consiste à mettre en œuvre un package. Il existe un grand nombre de produits disponibles dans le commerce (ou gratuitement !) qui répondent à un large éventail de besoins, tels que les suivants :
Kippo – Un honeypot à interaction moyenne qui vous permet de présenter un serveur SSH assez convaincant avec un système de fichiers. Kippo enregistre et permet même de rejouer l’attaque.
Glastopf – Un honeypot à faible interaction qui émule les vulnérabilités web connues telles que l’injection SQL.
Honeyd – Un honeypot à faible interaction qui simule plusieurs services et hôtes sur une seule machine via la virtualisation. En conséquence, il présente un environnement plus convaincant pour les pirates informatiques. Il est basé sur Linux/Unix mais peut émuler différents systèmes d’exploitation et services. Ceci est important car chaque système d’exploitation réagit différemment aux messages. Comme Honeyd émule les systèmes d’exploitation au niveau du stack TCP/IP, il peut tromper même les outils d’analyse réseau sophistiqués tels que nmap. Lorsqu’une attaque se produit, Honeyd peut tenter passivement d’identifier l’hôte distant. Le site web honeyd propose également une série de documents utiles « Know Your Enemy ».
Thug – Un honeypot côté client (honeyclient) qui émule un navigateur web. Il est conçu pour interagir automatiquement avec le site web malveillant afin d’explorer ses exploits et ses artefacts malveillants, souvent sous la forme de JavaScript.
Ghost USB – Il se monte comme une clé USB « fantôme » pour servir de honeypot pour les logiciels malveillants qui utilisent des clés USB pour se répliquer.
Dionaea – Un honeypot basé sur Windows pour collecter les malwares.
Ensembles complets de honeypots
Les honeypots tels que ceux mentionnés ci-dessus sont souvent regroupés, avec des capacités de reporting unifiées. Il s’agit notamment de :
HoneyDrive – Cette distribution Linux est une appliance virtuelle (OVA) avec Xubuntu. Il fournit plus de 10 logiciels de honeypot préinstallés et préconfigurés, ainsi que des outils d’analyse et de surveillance.
MHN (Modern Honeypot Network) – Ce projet open source utilise une base de données Mongo et fournit de nombreux outils.
KFSensor – Il s’agit d’un système complet de honeypots basé sur Windows. Il s’agit d’un système de qualité professionnelle avec un prix élevé, mais sa flexibilité est imbattable.
Construire son propre système de honeypots
Vous passerez beaucoup de temps à installer et à mettre au point des logiciels qui correspondent aux capacités de progiciels aussi complets que KFSensor, MHN, et HoneyDrive.
Si c’est là votre idée du plaisir, voici quelques considérations (https://www.sans.org/security-resources/idfaq/honeypot3.php) :
- Enregistrez tous les paquets en provenance et à destination du système de honeypots. Considérez qu’il n’y a pas de raison légitime pour un tel trafic.
- Utilisez un analyseur de protocole tel que Wireshark pour analyser les attaques. Vous devrez vous concentrer sur les paquets qui transitent entre le pare-feu et le honeypot. Soyez averti que cela nécessite beaucoup d’espace disque. Utilisez les capacités de filtrage de l’analyseur de protocole pour minimiser la taille de capture. Conservez l’ordre, la séquence, l’horodatage et le type de paquet des paquets de l’intrus, car ce sont des indices importants sur les intentions de l’intrus.
- Pour un système Linux, assurez-vous d’inclure syslogd afin de pouvoir vous connecter à un serveur distant.
- Utilisez les capacités de notification du pare-feu pour vous envoyer des alertes lorsque du trafic se produit vers ou depuis votre honeypot.
Détection de honeypots par les attaquants
Les attaquants ont leurs propres contre-mesures contre les honeypots.
Sachez que les attaquants échangent des informations sur des honeypots connus. La bonne nouvelle, c’est que, comme nous l’avons mentionné, de nombreux systèmes sont utilisés.
Cela rend plus difficile pour les attaquants la recherche d’une signature unique trahissant l’existence d’un honeypot. Certains experts pensent que chaque honeypot devrait avoir un « port de tromperie », un port ouvert qui permet aux attaquants de détecter le honeypot.
On suppose que cela convainc les attaquants qu’ils ont affaire à un adversaire sophistiqué et les dissuaderait de poursuivre leurs attaques.
Dans tous les cas, les attaquants utilisent ce qui suit pour déterminer s’ils sont tombés dans un honeypot. Vous pouvez utiliser cette liste pour améliorer votre système :
- Il y a peu ou pas d’activité dans le système
- Un système est trop facile à pirater
- Des services et/ou ports inhabituels sont ouverts
- Les systèmes d’exploitation et les logiciels ont été installés en utilisant les valeurs par défaut
- Les noms de fichiers et de dossiers sont manifestement trop attrayants, par exemple, un fichier appelé « numéros de sécurité sociale »
- Il y a très peu de logiciels installés.
Vous voulez toujours installer des honeypots ?
Avant de lancer votre honeypot, vous devez également prendre en compte les implications juridiques.
Les principales questions juridiques à considérer lorsqu’il s’agit de honeypots sont : le piégeage et l’intimité. Cet article et l’article précédent sur les honeypots donnaient un bref aperçu des honeypots.
Pour créer et/ou installer un système, vous aurez besoin d’informations plus détaillées et d’une personne ou d’une équipe ayant une expertise technique.