Acte I : L'Équilibre, la Menace et la Défense Locale

Réserve Centrale de Bananes
🛖

Panique au Pays des Singes

Wazuh et la Réponse Active au Service des Bananes

Présentation de l'Orateur

🦧💻

Romain Therrat

POCKOST
Administration GNU/Linux
Automatisation (Ansible, Terraform)
SecOps & Cloud-Native
Basé à Clermont-Ferrand

Le Vol (L'Attaque par Force Brute)

🌙
☀️
🚨
Réserve Centrale de Bananes
🛖
🥷
🍌🍌🍌
🐒❗
🐒❓
🐒‼️

Le port 22 (SSH) ciblé par un dictionnaire infini.

Sans limitation de vitesse, la compromission mathématique est inévitable face à des mots de passe faibles.

La Recherche de Solution (Les Oracles)

🦍👑
BananaPT v4.0
"Vos portes tiennent un registre précis..."
Banane Search
Résultats pour : "stop brute force"...
FAIL2BAN
< LE GARDIEN ANCESTRAL >

Log et Fail2ban (Sous le Capot)

1. Détection (auth.log)

Jan 12 03:14:02 server sshd[123]: Failed password for invalid user banane from 192.168.1.100 port 22 ssh2
Jan 12 03:14:05 server sshd[124]: Failed password...

2. Décision & Action (jail.local)

[sshd]
enabled = true
port = ssh
filter = sshd
maxretry = 3
bantime = 600
Paramètre Fail2banFonction dans le VillageAction Technique
Filter (Filtre)Singe vigie écoutant les bruits.Regex pour parser les échecs.
Jail (Prison)Registre des délinquants.Seuils (maxretry) et temps.
Action (Remédiation)Gardes érigeant un mur.Commande iptables/nftables (DROP).

Tout se Passe Bien (La Victoire Éphémère)

🌙
☀️
Réserve Centrale
🛖
🥷
FAIL2BAN
🐒🎉
🐒🍌

Le calme revient... du moins, naïvement.

Acte II : La Croissance et la Surcharge

Réserve Centrale
🛖
🔥 Surcharge !

Succès critique : le volume de transactions sature le point d'accès unique.

La Solution : Le Scaling Horizontal

⚖️
Load Balancer
🛖
Réserve A
🛖
Réserve B
🛖
Réserve C

Multiplication de la surface d'attaque : chaque nœud devient une nouvelle porte d'entrée potentielle.

Le Nouveau Problème (La Fragmentation)

🛖
Réserve A
FAIL2BAN
🛖
Réserve B
🍌🍌
🛖
Réserve C

Gardiens (Fail2ban)

🛡️🙈 Gardien A
🛡️🙈 Gardien B
Aucune communication !

L'attaquant bloqué sur un nœud peut simplement pivoter et attaquer le voisin, dont les gardiens ne sont pas avertis.

La Seconde Consultation (Les Oracles)

🦍👑
BananaPT v4.5
"Vos gardiens ne communiquent pas..."
Banane Search
Résultats : "défense globale"...
I.P.S.
< LA MURAILLE GLOBALE >

Acte III : Le Mirage de l'IPS Global

NIPS
🛖
Réserve A
🛖
Réserve B
🛖
Réserve C
🍌🍌

L'approche périmétrique résout la fragmentation en centralisant l'analyse, mais crée un point d'aveuglement face au trafic chiffré et aux attaques distribuées.

Les Limites : Aveuglement et Furtivité

1. Chiffrement (SSL/TLS)

🥷💣
FLUX HTTPS (CHIFFRÉ)
Vue de l'IPS :
🔒 TRAFFIC OK

2. Low and Slow (Botnet)

SEUIL ALERTE

100 IPs différentes / 1 essai chacune

La Troisième Consultation (Les Oracles)

🦍👑
BananaPT v5.0
"Analysez le comportement global..."
Banane Search
Résultats : "cerveau centralisé"...
S.I.E.M.
< LE CHEF D'ORCHESTRE >

Acte IV : L'Illumination Centralisée (SIEM)

S.I.E.M.
🧑‍🎤🎼
CORRÉLATION
TechnologiePortée Temporelle / SpatialeRôle AllégoriqueLimite Principale
Fail2ban (HIPS)Locale / Action réactive isoléeGarde de sécurité devant une seule porte.Sourd aux attaques distribuées multi-noeuds.
IPS RéseauPérimétrique / Action en transitMuraille et douanes à la frontière.Aveugle aux menaces internes et trafic chiffré.
SIEM/XDRGlobale / Corrélation continueLe Chef d'Orchestre omniscient.Nécessite configuration et intégration des agents.

La Mise en Place de Wazuh

Wazuh
MANAGER
🥷🔵
🛖
Réserve A
🥷🔵
🛖
Réserve B
🥷🔵
🛖
Réserve C

Les agents (ninjas bleus) déploient leurs sondes. Ils transmettent les journaux, les événements et les audits d'intégrité en temps réel au Manager (Cerveau Central).

La Réponse Active (L'Arme)

Armement de la défense dans ossec.conf :

<ossec_config>
  <active-response>
    <disabled>no</disabled>
    <command>firewall-drop</command>
    <location>local</location>
    <rules_id>5763</rules_id>
    <timeout>180</timeout>
  </active-response>
</ossec_config>
Command : Script exécuté (iptables/firewalld)
Rules_id : Identifiant précis de l'alerte (ex: Brute force SSH)
Timeout : Riposte "Stateful". Blocage de 3 minutes puis auto-guérison.

Le Pouvoir Ultime (La Défense Distribuée)

<location>local all</location>
🛖
Réserve A
🛖
Réserve B
🛖
Réserve C
Wazuh

L'immunité de groupe instantanée : Un ordre de mitigation "broadcast".

La Chute du Voleur (Échec et Mat)

Wazuh
🛖
Réserve A
🛖
Réserve B
🛖
Réserve C
🐒🎉 🐒🍌 🐒🙌

Réduction du MTTR. La Kill Chain est brisée automatiquement pour toute l'infrastructure.

Acte V : Les Scripts Personnalisés (L'Arsenal)

🐍 Python
Payload JSON
🛡️ VirusTotal API
🦉 MISP
Script Wazuh par défautAction Exécutée sur le Cible
firewall-dropBloque l'IP source (iptables / firewalld).
disable-accountDésactive le compte compromis (usermod -L).
route-nullAjoute une route "trou noir" (null route).
netshInteragit avec Windows Defender Firewall.

L'Avertissement de Sécurité (Garde-Fou)

⚠️
<global>
  <white_list>192.168.1.1</white_list>
</global>
🐒🪚🌿

Attention au Self-DoS ! Ne sciez pas la branche sur laquelle vous êtes assis.

Conclusion et Synthèse

🐒🛡️

1. Fail2ban

Garde loyal. Pertinent pour durcir un serveur isolé.

🧱👻

2. IPS Périmétrique

Vital, mais aveugle aux menaces internes et chiffrées.

🧠⚡

3. Wazuh XDR

Intelligence centralisée et remédiation distribuée adaptative.

🦍✨
Romain Therrat
POCKOST
Merci Auvergn'Hack 2026 !

Questions ?

🥼🐒
🍌❓
github.com/pockost
www.pockost.com
/in/romain-therrat

Notes de l'orateur