Honeypot

De Justine's wiki
Aller à la navigation Aller à la recherche

Mise en place de cowrie

https://medium.com/@jeremiedaniel48/install-and-setup-cowrie-honeypot-on-ubuntu-linux-5d64552c31dc

Cowrie est un honeypot basé sur Python. Il permet aux attaquants de se connecter et permet de voir ce qu'ils font. Je part d'une debian 10.

<source>

  1. Changer le port par défaut ssh vers 220

vim /etc/ssh/sshd_config

  1. Modifier le port

systemctl restart sshd

  1. Installation dépendances

sudo apt-get install git python3-virtualenv libssl-dev build-essential libpython-dev python3 authbind sudo adduser --disabled-password cowrie su - cowrie git clone http://github.com/micheloosterhof/cowrie </source>

On a désormais Cowrie. Il fonctionne avec virtualenv. Le dossier Cowrie contient des dossiers var, etc... à ne pas confondre avec ceux du système. On va le configurer et le lancer:

<source> cd cowrie/ virtualenv cowrie-env source cowrie-env/bin/activate python3 -m pip install -r requirements.txt cd etc/ cowrie-env/bin/deactivate cp cowrie.cfg.dist cowrie.cfg vim cowrie.cfg </source>

Les lignes à paramétrer:

<source> hostname = pve #Nom d'hôte log_path = var/log/cowrie #Ne pas hésiter à mettre des liens vers celui-ci dans /var/log guest_ssh_port = 22 #Vérifier les ports

  1. Partie Telnet

[telnet] enabled = True listen_endpoints = tcp:2223:interface=0.0.0.0

  1. Partie SSH

[ssh] enabled = True listen_endpoints = tcp:2222:interface=0.0.0.0 </source>

On va ensuite permettre à certains utilisateurs de se connecter, notamment root avec un mot de passe volontairement naze: <source> cp cowrie/etc/userdb.example cowrie/etc/userdb.txt

      1. Qui contient :

root:x:!root root:x:!123456 root:x:!/honeypot/i root:x:password tomcat:x:* oracle:x:* </source>

On doit rediriger ssh et telnet vers les ports de cowrie:

<source> sudo iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --to-port 2222 sudo iptables -t nat -A PREROUTING -p tcp --dport 23 -j REDIRECT --to-port 2223 </source>

Enfin, pour lancer cowrie: <source> cowrie@hackme:~$ cowrie/bin/cowrie usage: cowrie/bin/cowrie <start|stop|force-stop|restart|status> </source>

Splunk

https://medium.com/@galolbardes/learn-how-to-deploy-a-honeypot-and-visualise-its-data-step-by-step-ea3cd3f25822

Aucun intérêt si on ne fait rien des données ! On va installer splunk dans un conteneur et avoir un dashboard.

Sur ma machine docker (une AUTRE machine, aps celle de cowrie)

<source> sudo docker run -d -p 8000:8000 -p 8088:8088 -e "SPLUNK_START_ARGS=--accept-license" -e "SPLUNK_PASSWORD=motdepasse" --name splunk splunk/splunk:latest </source>

On attend que le conteneur soit 'healthy' (et pas 'installing') dans docker container ls, puis on se connecte sur l'interface web : http://docker.mon.domaine:8000.

Dans l'URL, changer fr-FR par en-US. Puis:

  • Settings > Data Inputs > HTTP event collector > Global settings

Vérifier que le port number est bien 8088 et DECOCHER Enable SSL.

  • Settings > Data Inputs > HTTP event collector > New Token

L'appeller "cowrie" puis next > Review > submit (rien à changer). NOTER LE TOKEN

  • Settings > Indexes > New Index

L'appeller "cowrie" et save.

  • Settings > Data Inputs > HTTP event collector

Editer cowrie > Default Index : choisir cowrie

Puis, sur la machine cowrie, éditer le cowrie/etc/cowrie.cfg pour avoir: <source> [output_splunk] enabled = true url = http://docker.ju.lab:8088/services/collector token = 8694fab3-fca4-4ee3-9bd6-288a9e09c5eb index = cowrie

  1. sourcetype = cowrie
  2. source = cowrie

</source> Noter que sourcetype et source doivent être commentés

Relancer cowrie:

cowrie/bin/cowrie restart

Enfin, sur l'interface web splunk: Télécharger https://www.dropbox.com/s/fo3qk4nav93ksc1/ManukaHoneyPot.tar.gz?dl=0 Sur l'interface web splunk, choisir Apps > Manage Apps Install app from file et choisir Manuka Honeypot Plus qu'à retourner sur le home, et afficher Manuka Honeypot dans la barre de gauche.