BT3 : outil d’étude des techniques de défense et détection

Dans cet article, nous allons parler un peu de BT3 (Blue Team Training Toolkit), un outil d’étude et d’entrainement aux techniques de détection d’activité malveillantes sur le réseau.


Il s’agit d’un outil créé afin d’aider à la formation et à l’entrainement des techniques de défense et de détection, notamment dans le cadre d’une certification CNDA (Certified Network Defense Architect) et édité par la société encripto.no

Le terme “Blue team” est beaucoup utilisé dans les documentations de cet outil. “Blue team” est à mettre en relation avec le “Red Team” qui est un style de test d’intrusion (pentest) qui vise à reproduire les techniques et méthodes des attaques APT (Advanced Persitent Threat). Autrement dit, les attaquants possédant de gros moyens ou des capacités techniques importantes et qui agissent sur plusieurs mois. Blue Team est donc le nom donné au côté défense dans un contexte d’attaque informatique. Il s’agit donc d’une équipe formée par les employés de l’entreprise :

  • DSI
  • Administrateurs système
  • Administrateurs réseau
  • HelpDesk
  • SoC (Security operation Center)
  • RSSI
  • etc.

Autrement dit, tous les acteurs techniques en capacité de relever les faits et évènements relatifs à une attaque informatique. Et oui, l’HelpDesk en fait définitivement parti, car étant au plus proche des alertes utilisateurs, il est capable de donner des informations aux équipes de sécurité lorsqu’un fait anormal est rapporté par ceux-ci.

La création de cet outil provient de l’observation de la difficulté à créer des contextes d’entrainement réalistes. En effet, les techniques d’entrainement à la sécurité offensive sont assez accessibles, il est courant de trouver des machines virtuelles vulnérables ou de pouvoir participer à des sites de challenges ou des CTF (Capture the Flag) pour pouvoir s’entrainer et s’améliorer. Dans un contexte d’apprentissage des méthodes de défense, il est plus complexe de trouver des scénarios réalistes, notamment afin d’apprendre à manier des outils de détection (IDS/IPS).

BT3 est donc un outil qui va servir à l’entrainement des techniques de détection et de défense du système d’information. La détection d’un incident, d’un évènement ou d’une activité anormale fait en effet partie du processus de défense. En cela, BT3 intègre deux outils, également développés par encripto.no

  • Maligno : cet outil permet de reproduire le comportement réseau de différents malwares connus, dans un contexte sécurisé puisque ce comportement est simplement simulé. Le réseau qui héberge l’entrainement n’aura donc pas à craindre une infection réelle. Cependant, ce comportement réseau pourra être observé et l’on pourra alors jouer avec les IDS, par exemple, et s’entrainer ainsi à leur manipulation/configuration.
  • Pcapteller : il s’agit d’un outil permettant de manipuler et de rejouer sur le réseau les paquets contenus dans une archive .pcap. Lors d’une analyse de l’activité d’un malware, l’enregistrement réseau est très important. C’est en analysant le réseau que l’on peut déterminer et comprendre l’activité d’un malware dont le code est dur à analyser (tentative d’infection des machines adjacentes, communication avec le serveur de command&control). Ainsi, des évènements réseau spécifiques sont à détecter, et ceux-ci peuvent être étalés sur le temps. Pcapteller permet notamment de rejouer l’émission de paquets avec un temps réels. C’est à dire que si la capture réseau contenue dans le fichier .pcap s’étend sur trois heures, le rejeu par Pcapteller peut également durer trois heures, on peut ainsi jouer avec les IDS afin que ceux-ci soient capable de comprendre et détecter cet étalement dans le temps, +1 pour le réalisme encore une fois.

Installation et première utilisation

Dans le cadre de mon test, j’ai seulement utilisé deux machines :

  1. Machine Debian hébergeant BT3
  2. Machine KaliLinux avec Wireshark pour l’analyse réseau

Bien entendu, pour un contexte réel de formation à la défense informatique, une IDS est attendu (Snort/Suricata par exemple).

Sur une machine Debian, voici comment installer BT3 :

Pour télécharger l’archive, il faut se rendre sur https://www.encripto.no/tools et sélectionner “20.07.16 – Blue Team Training Toolkit v1.2“. En ligne de commande :

wget https://www.encripto.no/tools/BT3-1.2.tar.gz
tar zxvf  https://www.encripto.no/tools/BT3-1.2.tar.gz
cd BT3-1.2
./install.sh

Vous aurez certainement à saisir quelques informations relatives à la création d’un certificat auto-signé. Une fois terminé, la commande suivante permettra de lancer BT3 :

python BT3.py

BT3-defense-security-01

Depuis ce panneau de commande, on peut notamment lancer les activités relatives à Maligno et Pcapteller. Ceux-ci sont visibles en utilisant la commande “show modules” :

BT3-defense-security-02

Pour utiliser Maligno, on exécute simplement “use maligno“, une commande “help” nous donnera ensuite les commandes relatives à Maligno :

BT3-defense-security-03

Ici, la commande “show profiles” permettra de lister les malwares déjà intégrés à Maligno. Pour lancer l’activité d’un malware, il est nécessaire de configurer ses options de la même manière que dans metasploit, puis de le lancer avec la commande “run” :

BT3-defense-security-04

De la même manière, voici les commandes relatives à Pcapteller :

BT3-defense-security-05

Avec la commande “show pcaps“, nous pouvons voir qu’un fichier demo.pcap est prêt à être joué. Il est naturellement possible d’en ajouter simplement en positionnant des fichiers .pcap dans le répertoire “pcaps” de BT3 avec un fichier texte associé pour la colonne “Description“.

Lors de l’utilisation d’un fichier .pcap, il est naturel que les IP provenant du fichier PCAP ne correspondent pas à l’environnement de test de BT3. Si une activité réseau capturée en production sur le réseau de production (par exemple 10.5.5.0/24) est rejoué dans l’environnement de test BT3 (192.168.56.0/24), aucune exploitation concrète ne pourra être faite. Ainsi, il est possible de remplacer les IP contenues dans le fichier .pcap avant son exécution. Par exemple, si l’on souhaite remplacer l’IP 10.5.5.10 par 192.168.56.10, on utilisera la suite de commande suivante :

set PCAP_IP_LIST 10.5.5.10
set WIRE_IP_LIST 192.168.56.10

Il est possible de chainer ces permutations via des entrées à virgule : IP1,IP2,IP3

A noter également que l’option “REAL_TIME” de Pcapteller permet d’activer le rejeu avec les délais réels de capture du fichier .pcap :

BT3-defense-security-06

Autrement, tous les paquets contenus dans le fichier .pcap seront joués à la suite sans délais particulier.

Bien que mon infrastructure de test ne comporte que deux machines, je suis déjà en capacité de rejouer et capter des activités réseau, avec plusieurs machines, dont des IDS/IPS. de grandes possibilités s’offrent à l’exploitation de BT3.

Quelques ressources supplémentaires

Je partage ici quelques ressources de cet outil gratuit, celles-ci permettent de mieux comprendre l’utilisation de BT3 et notamment de Maligno/ Pcapteller :

BT3 m’apparait comme un très bon outil d’étude et d’entrainement, n’étant pas très familier avec le côté Blue Team, je trouve tout de même son utilisation simple et rapide, à noter que je n’ai surement pas exploité toutes les possibilités de l’outil.

N’hésitez pas à nous faire un retour sur l’utilisation de BT3 ou d’outils similaires dans les commentaires !

Vous aimerez aussi...

Laisser un commentaire

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