Les pots de miel, ça n’attire pas que les abeilles!

 

Les honeypots

 

Au cours de ces dernières années, la cybercriminalité est en pleine augmentation, tous les moyens pour se protéger sont donc bon à prendre. C’est pourquoi, aujourd’hui, sur InfoSec, nous allons vous parler des honeypots, vous apprendre ce que c’est, en quoi ça peut être utile, ou dangereux, et vous faire une démonstration de comment le mettre en place avec le programme Cowrie.

 

  • Un peu de théorie :

 

Qu’est-ce qu’un honeypot ?

Un honeypot (ou pot de miel en Français) est une méthode utilisée dans la sécurité informatique qui consiste à créer un système vulnérable, non pas pour se protéger des différentes pénétrations de potentiels hackers, mais au contraire de les piéger une fois entrés dans le système (une sorte de leurre). Celui-ci doit être contrôlé et surveillé en permanence. Une fois pris au piège, on peut analyser les méthodes et tactiques des pirates, et donc renforcer la protection de notre système.  Mais il faut faire attention avec l’utilisation de ceux-ci, des connaissances pointues en sécurité sont obligatoires car cette méthode implique un contact direct avec l’attaquant.

 

Il en existe deux types différents :

les honeypots à faible interaction : ce sont les plus simples.  L’attaquant n’interagit pas vraiment avec le système, il pourra juste scanner les ports ou exécuter des commandes sans réponse. Ils n’offrent donc pas beaucoup de possibilités, mais ils limitent les risques en donnant à l’attaquant un minimum de privilèges.

Comme le logiciel Honeyd (http://www.honeyd.org/), créé par Niels Provost, qui permet d’émuler des machines ou même un réseau virtuel. C’est l’un des honeypots à faible interaction avec le plus de possibilités.

La commande « netcat » qui permet l’écoute d’un port en particulier en enregistrant tout ce qui passe sur ce port.

Ou encore le programme Cowrie (https://github.com/cowrie/cowrie) qui permet de mettre sur écoute le port ssh (22) et le port telnet (23). C’est le logiciel qu’on utilisera lors de la démonstration.

 

-les honeypots à forte interaction : beaucoup plus complexes que ceux à faible interaction. Ici, l’attaquant pourra vraiment exploiter un système. Les risques sont beaucoup plus importants, il faut donc être très vigilent lors de l’utilisation de ceux-ci pour que l’attaquant ne puisse pas rebondir et s’en prendre aux autres machines. Ils sont plus orientés pour la recherche.

 

Pour rendre le piège plus discret, il est possible d’utiliser un réseau d’honeypot :

Un honeynet (ou en français : réseau de miel) est un ensemble d’honeypots qui forment un réseau. Sur ce système, il n’y aura aucune activité de base et donc la moindre activité détectée sera potentiellement malveillante, faite par des pirates. Son but est alors de récupérer des informations sur les menaces. Il sert donc à des fins de recherches et aussi à créer des antivirus efficaces.

 

Pour plus ample information sur les honeynets, il existe une association « The Honeynet Project » (https://www.honeynet.org/) qui partage ce qu’ils ont appris sur différentes attaques repérées et étudiées.

 

Leurs coûts : 

Depuis que les honeypots virtuel existent, ça réduit considérablement leurs coûts. Avant, il fallait avoir une machine physique pour pouvoir en faire. Maintenant, il suffit d’en faire un virtuel et donc il n’y a plus besoin d’acheter de machine physique, ce qui rend plus accessible le faite de faire des honeypots.

 

Pour faire un bon honeypot il font donc qu’il repose sur trois problématiques :

-La surveillance

-La collecte d’informations

-L’analyse d’informations

 

Mais pourquoi si les honeypots permettent de mieux défendre notre système, on n’en voit pas partout ?

Car il y a différents problèmes. Premièrement, c’est que ce type de sécurité vous expose à de nombreux risques si celui-ci est mal configuré. Comme je l’avais déjà dit, une bonne connaissance de cet outil est obligatoire pour ne pas exposer son système à des vulnérabilités. Et deuxièmement, il y a potentiellement un problème sur l’aspect juridique de leurs utilisations. Le fait de « provoquer à commettre une action » (le piratage) nous rend complices de cette action et donc il sera difficile de se plaindre d’un piratage dans le cas où l’on est complices de celui-ci.

 

Définitions:

SSH (Secure Shell) : Protocole de communication sécurisé (port 22).

Telnet (télécommunication network) : Protocole de communication utilisé sur tout réseau TCP/IP (port 23).

Daemon : Logiciel qui tourne en arrière plan.

 

  • Démonstration avec Cowrie sur une machine Ubuntu :

Lors de cette démonstration, nous allons faire un honeypot avec le logiciel Cowrie. Notre installation sera proche de l’installation par défaut. L’host SSH va tourner sur le port 22222, Cowrie va alors tourner sur le port 2222 et le port 22 (le port par défaut du SSH) redirigera vers l’honeypot 2222 en utilisant la commande « iptables ». Et on fera la même chose pour le Telnet.

Voici le schéma de notre installation :

MISE EN PLACE :

Pour commencer il faudra mettre à jour votre système d’exploitation :

mint-VirtualBox:~# sudo apt-get update && sudo apt-get upgrade

 

Si vous n’avez pas open-ssh installé sur votre OS alors exécutez cette commande :

mint-VirtualBox:~# sudo apt-get install openssh-server

 

Après, on va alors modifier le port SSH de notre machine, afin d’y placer notre honeypot à la place et il n’y aura pas de conflit. On va donc éditer le fichier /etc/ssh/sshd_config (port SSH 22 => 22222) :

mint-VirtuaBox:~# nano /etc/ssh/sshd _config

 

Une fois changé, on va pouvoir relancer le service SSH de notre ordinateur :

mint-VirtuaBox:~# systemctl restart ssh

 

Avec cette commande on peut voir que SSH écoute bien sur le port qu’on a assigné plus haut :

mint-VirtuaBox:~# systemctl status ssh

 

Ou alors on peut aussi utiliser la commande « netstat » :

mint-VirtuaBox:~# netstat -nap | grep 2222

 

INSTALATION DE CROWRIE

Maintenant on va installer Cowrie

Pour pouvoir utiliser Cowrie, il lui faut des pré requis :

mint-VirtuaBox:~# sudo apt-get install git python-virtualenv libssl-dev libffi-dev build-essential libpython-dev python2.7-minimal authbind

 

Pour faire notre manipulation on va créer un utilisateur Cowrie  et on va alors switch sur celui-ci:

mint-VirtuaBox:~# adduser cowrie
mint-VirtuaBox:~# su - cowrie

On va ensuite cloner le code de Cowrie à partir de git hub :

[email protected]:~# git clone http://github.com/micheloosterhof/cowrie

 

On va créer un environnement virtuel pour python et Cowrie, pour qu’en cas d’erreur, cela n’aille pas endommager notre système.

[email protected]:~# cd cowrie
[email protected]:~/cowrie# virtualenv cowrie-env

 

Si vous n’avez pas virtualenv, il vous faudra l’installer grâce à pip :

[email protected]:~/cowrie# sudo apt-get install python3-pip
[email protected]:~/cowrie# sudo pip3 install virtualenv

 

On va maintenant activer l’environnement virtuel et y installer les différentes exigences

[email protected]:~/cowrie# source cowrie-env/bin/activate 
(cowrie-env) [email protected]:~/cowrie# pip install –upgrade pip
(cowrie-env) [email protected]:~/cowrie# pip install --upgrade -r requirements.txt

 

CONFIGURATION DE COWRIE

Le setup initial est fini, on doit maintenant configurer le Cowrie daemon et le lancer. Ça permet de créer une image pour garder un fichier par défaut

(cowrie-env) [email protected]:~/cowrie# cp cowrie.cfg.dist cowrie.cfg

 

Ensuite, on peut éditer le fichier

(cowrie-env) [email protected]:~/cowrie# nano cowrie.cfg

Vous pouvez changer le nom de l’honeypot mais ce n’est pas obligatoire

Cependant il faudra activer Telnet si vous voulez l’utiliser aussi. SSH est déjà activé par défaut

Vous pouvez alors sauvegarder les modifications et quitter le fichier.

Comme vous auriez pu le constater, il y a plein de possibilités et d’options.

 

Pour sortir de l’environnement virtuel

(cowrie-env) [email protected]:~/cowrie# deactivate

 

LANCER LE PROGRAMME

On peut désormais lancer le daemon

[email protected]:~/cowrie# bin/cowrie start

 

Pour voir si les ports sont sur écoute (2222 = honey ssh, 2223 = honey telnet, 22222 = vrai ssh)

[email protected]:~/cowrie# netstat -an | grep 222

 

Une dernière étape consiste à rediriger les ports 22 et 23 vers les 2222 et 2223 pour que l’attaquant croit qu’il est sur le vrai port SSH et Telnet.

[email protected]:~/cowrie# iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --to-port 2222
[email protected]:~/cowrie# iptables -t nat -A PREROUTING -p tcp --dport 23 -j REDIRECT --to-port 2223

 

Pour voir les logs en direct:

[email protected]:~/cowrie# tail -f var/log/cowrie/cowrie.log

Commande pour arrêter le logiciel:

[email protected]:~/cowrie# bin/cowrie stop

 

ANALYSE DES LOG

Nous avons donc fait la manipulation en réseau local et nous avons essayé de nous connecter sur les ports SSH et Telnet que nous avions créés précédemment. Voici donc des screens faits depuis le fichier « cowrie.log » :

-tentative de connexion en SSH :

-tentative de connexion en Telnet :

 

  • Conclusion

 

Pour conclure, les honeypots sont un bon moyen de comprendre comment défendre notre système ou même notre réseau. Car grâce à l’attaque du pirate dans notre leurre, mis en place à cet effet, on va pouvoir comprendre comment le pirate procède pour s’attaquer à un système ou à un réseau. Il nous « suffira » de corriger la faille sur notre vrai système pour éviter de se faire pirater par celle-ci.

Malgré le faite que c’est beaucoup moins chère d’en faire, nous avons vu aussi qu’ils pouvaient être dangereux s’ils étaient mal configurés. Si c’était le cas alors un pirate pourrait rebondir et peut être prendre part à notre vrai système.

Le questionnement sur l’aspect légal de son utilisation nous laisse alors mitigé quant à son utilisation.

 

  • Sources :

http://www.lestutosdenico.com/outils/honeyd-pot-de-miel-a-hackers

http://www.wikayanet.dz/index.php/fr/dossiers-securite/1147-les-honeypots

https://www.fidelissecurity.com/threatgeek/deception/honeypots

https://www.leblogduhacker.fr/les-honeypots-des-pieges-a-pirates/

https://www.01net.com/actualites/comment-les-honey-pots-leurrent-les-pirates-187399.html

https://null-byte.wonderhowto.com/how-to/use-cowrie-ssh-honeypot-catch-attackers-your-network-0181600/

https://hackertarget.com/cowrie-honeypot-ubuntu/

https://fr.freepik.com/photos-vecteurs-libre/fond

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *