M81 : Détection d’intrusion
TP IDS Crowdsec
Crowdsec est un IDS articulé autour d’une API qui permet de séparer et de répartir aisément les différentes fonctionnalités (sonde-analyse-alerte, décision, blocage). L’implémentation d’une API centrale permet la distribution d’alertes mutualisées (crowd sourced security).
- Avant de commencer, arrêter et désactiver
fail2ban
. Quelle⋅s commande⋅s avez-vous utilisée⋅s ? - Suivre les instructions de la page https://doc.crowdsec.net/docs/getting_started/install_crowdsec pour installer une version à jour. Que pensez-vous de cette méthode d’installation d’un point de vue sécurité ? (Penser aux inconvénients et aux avantages.)
- Installer également un bouncer (IPS). Noter le nom des paquetages installés en dépendance.
- Lister les règles de filtrage appliquées à la machine. Que constatez-vous ?
- Optionnel (mais pratique) : Tester la commande
cscli completion bash
. Écrire le résultat dans le fichier/etc/bash_completion.d/cscli
. Pour finir, lancersource /etc/bash_completion
. - Suivre le Crowdsec tour jusqu’à « Upgrading configurations » :
https://doc.crowdsec.net/docs/getting_started/crowdsec_tour
- Identifier les différents types d’« objets » disponible sur le hub. Quelles sont leurs fonctions ? Comment sont-ils liés les uns aux autres ?
- Installer le scénario correspondant à la faille Log4Shell et
supprimer le parser
whitelist
. Quelles commandes avez-vous utilisées ? (Penser à recharger le service après les installation/suppression.)
- Déclencher la protection de l’IPS en échouant plusieurs fois à vous connecter au service SSH, pour différentes raisons : mauvais nom d’utilisateur, mauvais mot de passe, voire mauvaise clé…
- Lister les alertes et les décisions Crowdsec. Quel est le type
d’objet qui apparaît dans la colonne
REASON
? - Avec la commande
ipset
, exminer le contenu de l’ensemble nommécrowdsec-blacklists
. Que constatez-vous ? D’où proviennent toutes ces IP ? - Préalable : Installer Docker
- Installer le tableau de bord avec la commande
sudo -E cscli dashboard setup --listen 0.0.0.0
. Noter le nom d’utilisateur et le mot de passe. - Mettre en place un tunnel SSH pour accéder au
dashboard. Exemple : pour accéder au serveur web (port 80) de
la VM en 192.168.144.2 via l’URL http://127.0.0.1:5000
- Le compte par défaut est
crowdsec@crowdsec.net
et le mot de passe est!!Cr0wdS3c_M3t4b4s3??
- Le compte par défaut est
- Identifier le port réseau utilisé par
crowdesc
(commandess -lntp
). - Identifier les connexions actives sur ces ports. Que constatez-vous ? Quelles conclusions en tirer ? (Lire https://crowdsec.net/blog/multi-server-setup/ pour aller plus loin)