Vous êtes sur la page 1sur 38

COURS

RED TEAMING – BLUE TEAMING


I. Les fondamentaux de la Red Team
La cybersécurité est une course constante entre les hackers "white hat" et les hackers "black hat".
À mesure que les menaces dans le cybermonde évoluent, il devient nécessaire de disposer de
services plus spécialisés permettant aux entreprises de se préparer au mieux aux attaques réelles.

Si les missions de sécurité classiques, telles que les évaluations de vulnérabilité et les tests de
pénétration, donnent un excellent aperçu de la situation technique d'une entreprise en matière
de sécurité, elles peuvent négliger d'autres aspects qu'un véritable attaquant peut exploiter. En
ce sens, nous pourrions dire que les tests de pénétration conventionnels sont bons pour montrer
les vulnérabilités afin que vous puissiez prendre des mesures proactives, mais qu'ils ne vous
apprennent pas nécessairement comment répondre à une attaque réelle en cours menée par un
adversaire motivé.
Objectifs de ce cours :

• Apprendre les bases de l'engagement d'une Red Team


• Identifier les principaux composants et les parties prenantes impliqués dans un
engagement d'équipe rouge.
• Comprendre les principales différences entre les équipes rouges et les autres types
d'engagements en matière de cybersécurité.

1. Limites des évaluations de vulnérabilité et des tests de pénétration

• Évaluations des vulnérabilités


Il s'agit de la forme la plus simple d'évaluation de la sécurité. Son principal objectif est d'identifier
le plus grand nombre de vulnérabilités dans le plus grand nombre possible de systèmes du
réseau. À cette fin, des concessions peuvent être faites pour atteindre efficacement cet objectif.
Par exemple, la machine de l'attaquant peut être autorisée par les solutions de sécurité
disponibles afin de ne pas interférer avec le processus de découverte des vulnérabilités. Cela est
logique puisque l'objectif est d'examiner chaque hôte du réseau et d'évaluer sa posture de sécurité
individuellement tout en fournissant le plus d'informations possible à l'entreprise sur les points
sur lesquels elle doit concentrer ses efforts de remédiation.
En résumé, une évaluation des vulnérabilités se concentre sur la recherche de vulnérabilités sur
les hôtes en tant qu'entités individuelles, afin d'identifier les déficiences de sécurité et de déployer
des mesures de sécurité efficaces pour protéger le réseau de manière prioritaire. La majeure partie
du travail peut être effectuée à l'aide d'outils automatisés et réalisée par des opérateurs sans
nécessiter de grandes connaissances techniques.

Par exemple, si vous deviez effectuer une évaluation de la vulnérabilité d'un réseau, vous
essaieriez normalement d'analyser le plus grand nombre possible d'hôtes, sans toutefois essayer
d'exploiter la moindre vulnérabilité :
• Tests de pénétration
En plus d'analyser chaque hôte à la recherche de vulnérabilités, nous avons souvent besoin de
comprendre leur impact sur notre réseau dans son ensemble. Les tests de pénétration complètent
l'évaluation des vulnérabilités en permettant au pentester d'explorer l'impact d'un attaquant sur
l'ensemble du réseau en effectuant des étapes supplémentaires, notamment
Tenter d'exploiter les vulnérabilités trouvées sur chaque système. Cette étape est importante
car il arrive qu'une vulnérabilité existe dans un système, mais que les contrôles compensatoires
en place empêchent efficacement son exploitation. Cela nous permet également de tester si nous
pouvons utiliser les vulnérabilités détectées pour compromettre un hôte donné.
Effectuer des tâches post-exploitation sur tout hôte compromis, ce qui nous permet de savoir
si nous pouvons en extraire des informations utiles ou si nous pouvons les utiliser pour pivoter
vers d'autres hôtes qui n'étaient pas accessibles auparavant depuis notre position.
Les tests de pénétration peuvent commencer par une analyse des vulnérabilités, tout comme une
évaluation régulière des vulnérabilités, mais ils fournissent des informations supplémentaires sur
la façon dont un attaquant peut enchaîner les vulnérabilités pour atteindre des objectifs
spécifiques. S'ils restent axés sur l'identification des vulnérabilités et la mise en place de mesures
de protection du réseau, ils considèrent également le réseau comme un écosystème à part entière
et la manière dont un attaquant pourrait tirer profit des interactions entre ses composants.
Si nous devions effectuer un test de pénétration en utilisant le même exemple de réseau que
précédemment, en plus de rechercher les vulnérabilités de tous les hôtes du réseau, nous
essaierions de confirmer si elles peuvent être exploitées afin de montrer l'impact qu'un attaquant
pourrait avoir sur le réseau :
En analysant la façon dont un attaquant pourrait se déplacer sur notre réseau, nous obtenons
également un aperçu de base sur les contournements possibles des mesures de sécurité et notre
capacité à détecter un véritable acteur de la menace dans une certaine mesure, limitée parce que
la portée d'un test de pénétration est généralement étendue et que les testeurs de pénétration
ne se soucient pas beaucoup d'être bruyants ou de générer beaucoup d'alertes sur les dispositifs
de sécurité puisque les contraintes de temps sur de tels projets nous obligent souvent à vérifier
le réseau en peu de temps.

• Menaces persistantes avancées et pourquoi le pentesting régulier ne suffit pas.


Si les missions de sécurité conventionnelles que nous avons mentionnées couvrent la découverte
de la plupart des vulnérabilités techniques, il existe des limites à ces processus et à la mesure
dans laquelle ils peuvent préparer efficacement une entreprise contre un véritable attaquant. Ces
limites sont les suivantes :

Par conséquent, certains aspects des tests de pénétration peuvent différer de manière significative
d'une attaque réelle, par exemple :
Les tests de pénétration sont bruyants : en général, les pentesters ne font pas beaucoup
d'efforts pour essayer de passer inaperçus. Contrairement aux attaquants réels, ils ne se soucient
pas d'être faciles à détecter, car ils ont été engagés pour trouver autant de vulnérabilités que
possible dans autant d'hôtes que possible.
Les vecteurs d'attaque non techniques peuvent être négligés : Les attaques basées sur
l'ingénierie sociale ou les intrusions physiques ne sont généralement pas incluses dans ce qui est
testé.
Assouplissement des mécanismes de sécurité : Lors d'un test d'intrusion régulier, certains
mécanismes de sécurité peuvent être temporairement désactivés ou relâchés pour l'équipe de
pentesting, dans un souci d'efficacité. Bien que cela puisse sembler contre-intuitif, il est essentiel
de se rappeler que les pentesters disposent d'un temps limité pour vérifier le réseau. Par
conséquent, on souhaite généralement qu'ils ne perdent pas leur temps à chercher des moyens
exotiques de contourner les IDS/IPS, les WAF, la tromperie d'intrusion ou d'autres mesures de
sécurité, mais qu'ils se concentrent plutôt sur l'examen des infrastructures technologiques
critiques à la recherche de vulnérabilités.
D'un autre côté, les véritables attaquants ne suivent pas de code éthique et sont pour la plupart
libres de leurs actions. Aujourd'hui, les acteurs les plus importants en matière de menaces sont
connus sous le nom de menaces persistantes avancées (APT), qui sont des groupes d'attaquants
hautement qualifiés, généralement parrainés par des nations ou des groupes criminels organisés.
Ils ciblent principalement les infrastructures critiques, les organisations financières et les
institutions gouvernementales. Elles sont dites persistantes car les opérations de ces groupes
peuvent rester indétectées sur des réseaux compromis pendant de longues périodes.
Si une entreprise est touchée par une APT, serait-elle prête à réagir efficacement ? Pourrait-elle
détecter les méthodes utilisées pour obtenir et maintenir l'accès à ses réseaux si l'attaquant y est
présent depuis plusieurs mois ? Et si l'accès initial a été obtenu parce que John, à la comptabilité,
a ouvert une pièce jointe suspecte dans un courriel ? Et si un exploit de type "zero-day" était
impliqué ? Les tests de pénétration précédents nous préparent-ils à cette éventualité ?
Pour offrir une approche plus réaliste de la sécurité, les missions de l'équipe rouge sont nées.

2. Les Engagements (missions) de la Red Team.


Pour faire face aux menaces émergentes, les engagements de l'équipe rouge ont été conçus pour
passer des tests de pénétration réguliers à un processus qui nous permet de voir clairement les
capacités de notre équipe défensive à détecter et à répondre à un véritable acteur de la menace.
Ils ne remplacent pas les tests de pénétration traditionnels, mais les complètent en se concentrant
sur la détection et la réponse plutôt que sur la prévention.
Le red teaming est un terme emprunté à l'armée. Dans les exercices militaires, un groupe prend
le rôle d'une équipe rouge pour simuler des techniques d'attaque afin de tester les capacités de
réaction d'une équipe de défense, généralement appelée équipe bleue, face à des stratégies
adverses connues. Transposés dans le monde de la cybersécurité, les engagements de l'équipe
rouge consistent à émuler les tactiques, techniques et procédures (TTP) d'un véritable acteur de
la menace afin de pouvoir mesurer la façon dont notre équipe bleue y réagit et, en fin de compte,
améliorer les contrôles de sécurité en place.
Chaque engagement de l'équipe rouge commence par la définition d'objectifs clairs, souvent
appelés "Crown jewels (joyaux de la couronne)" ou "flags (drapeaux)", allant de la compromission
d'un hôte critique donné au vol d'informations sensibles de la cible. En général, l'équipe bleue ne
sera pas informée de ces exercices pour éviter d'introduire des biais dans leur analyse. L'équipe
rouge fera tout son possible pour atteindre les objectifs tout en restant indétectable et en
échappant aux mécanismes de sécurité existants tels que les pares-feux, les antivirus, les EDR, les
IPS et autres. Remarquez que lors d'un engagement de l'équipe rouge, les vulnérabilités de tous
les hôtes d'un réseau ne sont pas vérifiées. Un véritable attaquant n'a besoin que de trouver un
seul chemin vers son objectif et n'est pas intéressé à effectuer des analyses bruyantes que l'équipe
bleue pourrait détecter.

En prenant le même réseau que précédemment, sur un engagement de l'équipe rouge où le but
est de compromettre le serveur intranet, nous planifierions un moyen d'atteindre notre objectif
en interagissant le moins possible avec les autres hôtes. Pendant ce temps, la capacité de l'équipe
bleue à détecter et à répondre à l'attaque peut être évaluée :
Il est important de noter que l'objectif final de ces exercices ne devrait jamais être de permettre
à l'équipe rouge de "battre" l'équipe bleue, mais plutôt de simuler suffisamment de TTP pour que
l'équipe bleue apprenne à réagir de manière adéquate à une menace réelle en cours. Si nécessaire,
ils peuvent modifier ou ajouter des contrôles de sécurité qui contribuent à améliorer leurs
capacités de détection.
Les engagements de l'équipe rouge améliorent également les tests de pénétration ordinaires en
prenant en compte plusieurs surfaces d'attaque :

• L'infrastructure technique : Comme dans un test de pénétration ordinaire, une équipe


rouge essaiera de découvrir des vulnérabilités techniques, en mettant l'accent sur la
dissimulation et l'évasion.
• Ingénierie sociale : Cibler des personnes par le biais de campagnes de phishing, d'appels
téléphoniques ou de médias sociaux pour les inciter à révéler des informations qui
devraient être privées.
• Intrusion physique : Utilisation de techniques telles que le verrouillage, le clonage RFID,
l'exploitation des faiblesses des dispositifs de contrôle d'accès électronique pour accéder
aux zones restreintes des installations.
En fonction des ressources disponibles, l'exercice de l'équipe rouge peut se dérouler de plusieurs
manières :

• Engagement complet : Simulez le flux de travail complet d'un attaquant, de la


compromission initiale jusqu'à la réalisation des objectifs finaux.
• Violation présumée : Commencez par supposer que l'attaquant a déjà pris le contrôle
de certains actifs, et essayez d'atteindre les objectifs à partir de là. Par exemple, l'équipe
rouge pourrait avoir accès aux informations d'identification d'un utilisateur ou même à
un poste de travail dans le réseau interne.
• Exercice sur table : Une simulation sur table où des scénarios sont discutés entre les
équipes rouge et bleue pour évaluer comment elles répondraient théoriquement à
certaines menaces. Idéal pour les situations où les simulations en direct pourraient être
compliquées.
• Équipes et fonctions d'une mission.
Plusieurs facteurs et personnes sont impliqués dans une mission de l'équipe rouge. Chacun aura
son propre état d'esprit et sa propre méthodologie pour aborder le personnel de la mission ;
cependant, chaque mission peut être divisée en trois équipes ou cellules. Vous trouverez ci-
dessous un bref tableau illustrant chacune des équipes et une brève explication de leurs
responsabilités.
Ces équipes ou cellules peuvent être subdivisées en une hiérarchie d'engagement.

Nous nous concentrerons sur les responsabilités de la Red Cell dans cette partie. Vous trouverez
ci-dessous un tableau décrivant les rôles et responsabilités des membres de la Red Team.

Comme pour la plupart des fonctions de la Red Team, chaque équipe et chaque entreprise aura
sa propre structure et ses propres rôles pour chaque membre de l'équipe. Le tableau ci-dessus
n'est qu'un exemple des responsabilités typiques de chaque rôle.

• La Structure de la mission
L'émulation de l'adversaire est une fonction essentielle de la Red Team. Bien qu'elle ne soit pas
obligatoire, elle est couramment utilisée pour évaluer ce qu'un véritable adversaire ferait dans un
environnement en utilisant ses outils et ses méthodologies. La Red Team peut utiliser diverses
cyber kill chains (chaines de mise à mort) pour résumer et évaluer les étapes et les procédures
d'un engagement.
La Blue Team utilise couramment les cyber kill chains pour cartographier les comportements et
décomposer le mouvement de l'adversaire. La Red Team peut adapter cette idée afin d'associer
les TTP (tactiques, techniques et procédures) de l'adversaire aux éléments d'un engagement.
De nombreux organismes de réglementation et de normalisation ont publié leur cyber kill chain.
Chaque kill chain suit à peu près la même structure, mais certaines sont plus approfondies ou
définissent les objectifs différemment. Vous trouverez ci-dessous une petite liste de ces chaînes
d'élimination standard.

• Lockheed Martin Cyber Kill Chain


• Unified Kill Chain
• Varonis Cyber Kill Chain
• Active Directory Attack Cycle
• MITRE ATT&CK Framework
Dans ce cours, nous ferons communément référence à la " Cyber Kill Chain de Lockheed Martin ".
Il s'agit d'une kill chain plus standardisée que les autres et elle est très couramment utilisée par
les Red Team et les Blue Team.
La kill chain de Lockheed Martin se concentre sur une violation du périmètre ou de l'extérieur.
Contrairement à d'autres kill chains, elle ne fournit pas une analyse approfondie des mouvements
internes. Vous pouvez considérer cette kill chain comme un résumé de tous les comportements
et opérations présents.

Les composants de la Kill Chain sont décomposés dans le tableau ci-dessous.

• Aperçu d'une mission de la Red Team


Tous les éléments dont nous avons parlé sont réunis lors de la réalisation d'une mission Red
Team. Pour mieux comprendre comment les composants et les parties prenantes interagissent,
nous allons analyser un exemple de mission simplifié.
Remarquez comment la Cyber Kill Chain s'aligne naturellement sur l'exercice :
1. Nous commençons par une phase de reconnaissance (Recon) au cours de laquelle nous
recueillons autant d'informations que possible sur notre cible (Intelligence Gathering)
La Red Team recueille autant d'informations que possible sur la banque, notamment :

• Les technologies utilisées


• La liste des employés
• Informations sur les médias sociaux
• Photos
• Toute autre information utilisable...
Les sources de renseignement sur les menaces sont également utilisées pour vérifier si des APT
ciblent des entreprises similaires afin de mieux appréhender les TTP et les outils qu'elles utilisent.
Avec toutes les informations en main, la Red Team va créer un plan qui inclut plusieurs TTPs qui
correspondent à la cible et le faire approuver par l'équipe blanche.
2. La seconde phase est celle de l'armement (Weaponization) et de la livraison (Delivery) par
l'envoi d'un e-mail de phishing avec une pièce jointe malveillante.

La Red Team commence l'engagement en émulant une campagne de phishing contre une liste
d'emails qu'elle a faite, basée sur les noms des employés trouvés sur LinkedIn et un modèle
détecté dans leurs adresses email.

• julie.smith@bank.example.com
• john.watson@bank.example.com
La campagne de phishing a été détectée. La Blue Team a envoyé un e-mail à tous les employés
pour les avertir de la menace en cours. L'attaque a tout de même pu se poursuivre, car aucun
processus n'était en place pour vérifier les PC éventuellement infectés ou même supprimer toute
copie de l'e-mail malveillant des boîtes de réception de tous les utilisateurs.

3. Il en suit des phases d'exploitation et d'installation en utilisant des exploits locaux pour
élever les privilèges sur le BOB-PC,

La Red Team a trouvé des correctifs Windows manquants sur le BOB-PC. L'un d'entre eux
permettait l'exploitation de PrintNightmare.
Bien que l'exploitation publique disponible ait été détectée par de nombreuses solutions AV,
certaines techniques d'évasion AV ont été appliquées avec succès pour éviter de déclencher des
alarmes et obtenir des privilèges SYSTEM.
La Red Team a pu télécharger et exécuter un mimikatz modifié pour extraire les hachages de mots
de passe locaux, y compris le compte administrateur local "Backups".
4. Puis en installant des outils sur les hôtes compromis pour vider les hachages de mots de
passe et effectuer un mouvement latéral,

La Red Team a utilisé une attaque de type Pass-the-Hash contre tous les hôtes du réseau pour
vérifier si l'utilisateur "Backups" pouvait se connecter à d'autres hôtes. Aucune connexion directe
n'a pu être établie avec le serveur de base de données, les politiques de pare-feu étant en place
pour l'empêcher.
Après avoir effectué quelques recherches supplémentaires, un poste de travail appelé DBA-PC a
été identifié. En utilisant Pass-the-Hash, DBA-PC a été compromise et utilisé comme pivot pour
se connecter au serveur de la BD.
Alors que les tentatives de Pass-the-Hash ont déclenché de nombreuses alertes sur les tentatives
de connexion de l'utilisateur "Backups", la Blue Team les a ignorées car elles ont été confondues
avec un processus de sauvegarde par lot qui s'exécute tous les mois.

5. Pour finir par des actions sur les objectifs où une connexion à notre cible est finalement
établie.

II. Missions de la Red Team


Découvrez les étapes et les procédures d'une mission de la Red Team, y compris la planification,
les cadres et la documentation.

1. Introduction
La clé d’une mission réussie est une planification et une communication bien coordonnées
entre toutes les parties concernées. Dans ce cours, nous nous concentrerons sur les
différentes composantes d'un engagement de l'équipe rouge ainsi que sur la planification
et la documentation d'une campagne pour un engagement de l'équipe rouge.
Les missions de la Red Team peuvent être de plusieurs types, notamment :

• Exercices sur table


• Émulation de l'adversaire
• Évaluation physique
Objectifs d'apprentissage :

• Comprendre les composantes et les fonctions d'un engagement de la Red Team.


• Apprendre à planifier correctement une mission en fonction des besoins, des
ressources disponibles et des TTP.
• Comprendre comment rédiger la documentation de la mission en fonction des
objectifs du client.

2. Définition de la portée et des objectifs


Les missions peuvent être très complexes et bureaucratiques. La clé d'une mission réussie réside
dans la définition claire des objectifs ou des buts du client. Les objectifs du client doivent être
discutés entre le client et la Red Team afin de créer une compréhension mutuelle entre les deux
parties de ce qui est attendu et fourni. Les objectifs fixés constituent la base du reste de la
documentation et de la planification de la mission.
Sans objectifs et attentes clairs et concrets, vous vous préparez à une campagne très peu
structurée et non planifiée. Les objectifs donnent le ton au reste de la mission.
Lorsque vous évaluez les objectifs d'un client et que vous planifiez les détails de la mission, vous
devez souvent décider du degré de précision de l'évaluation.
Les missions peuvent être classées entre un test de pénétration interne/réseau général et une
émulation d'adversaire ciblée. Une émulation d'adversaire ciblée définira un APT ou un groupe
spécifique à émuler dans le cadre d'un engagement. Cela sera généralement déterminé en fonction
des groupes qui ciblent les industries particulières de l'entreprise, c'est-à-dire les institutions
financières et les APT38. Un test de pénétration interne ou de réseau suivra une structure similaire
mais sera souvent moins ciblé et utilisera des TTP plus standard.
Les spécificités de l'approche dépendront au cas par cas de la mission définie par les objectifs du
client.
Les objectifs du client auront également une incidence sur les règles générales de la mission et
sur son étendue.
Les objectifs du client ne font qu'établir une définition de base des buts de la mission pour le
client. Les plans de mission spécifiques développeront les objectifs du client et détermineront les
particularités de la mission. Les plans de mission seront traités plus tard dans ce cours.

La clé de voûte suivante d'une mission précise et transparente est une portée bien définie. Le
champ d'application d'une mission varie selon l'organisation, son infrastructure et sa position. Le
champ d'application d'un client définit généralement ce que vous ne pouvez pas faire ou cibler ;
il peut également inclure ce que vous pouvez faire ou cibler. Si les objectifs du client peuvent être
discutés et déterminés avec l'équipe prestataire, le périmètre ne doit être fixé que par le client.
Dans certains cas, la Red Team peut discuter d'un grief relatif à la portée si cela affecte une
mission. Ils doivent avoir une compréhension claire de leur réseau et des implications d'une
évaluation. Les spécificités du champ d'application et la formulation seront toujours différentes.
Voici un exemple de ce à quoi le verbiage peut ressembler dans le champ d'application d'un
client :

• Pas d'exfiltration de données.


• Les serveurs de production sont hors limites.
• 10.0.3.8/18 est hors de portée.
• 10.0.0.8/20 est dans le champ d'application.
• L'arrêt du système n'est autorisé en aucune circonstance.
• L'exfiltration de PII est interdite.
Lorsque vous analysez les objectifs ou les champs d'application d'un client du point de vue de la
Red Team, il est essentiel de comprendre la signification et les implications plus profondes. Lors
de l'analyse, vous devez toujours avoir une compréhension dynamique de la manière dont votre
équipe aborderait les problèmes/objectifs. Si nécessaire, vous devez rédiger vos plans de mission
ou les commencer à partir d'une simple lecture des objectifs et de la portée du client.

Vous trouverez ci-dessous un exemple des objectifs du client d'une organisation mature ayant
une solide posture de sécurité.
Exemple 1 - Entreprises mondiales :
Objectifs :
1. Identifier les mauvaises configurations des systèmes et les faiblesses du réseau.
a. Se concentrer sur les systèmes extérieurs.
2. Déterminer l'efficacité des systèmes de détection et de réponse aux points de
terminaison.
3. Évaluer la posture de sécurité globale et la réponse.
a. SIEM et mesures de détection.
b. Remédiation.
c. Segmentation de la DMZ et des serveurs internes.
4. L'utilisation de cartes blanches est autorisée en fonction du temps d'arrêt et de la
durée.
5. Évaluer l'impact de l'exposition et de l'exfiltration des données.
Scope :
1. L'arrêt du système n'est autorisé en aucune circonstance.
a. Toute forme de DDoS ou DoS est interdite.
b. L'utilisation de tout logiciel malveillant nuisible est interdite ; cela inclut les
ransomwares et autres variantes.
2. L'exfiltration de PII est interdite. L'utilisation de données d'exfiltration arbitraires.
3. Les attaques contre les systèmes situés dans la zone 10.0.4.0/22 sont autorisées.
4. Les attaques contre les systèmes situés dans la zone 10.0.12.0/22 sont interdites.
5. Bean Enterprises surveillera étroitement les interactions avec la DMZ et les systèmes
critiques/production.
a. Toute interaction avec "*.bethechange.xyz" est interdite.
b. Toute interaction avec "*.globalenterprises.thm" est autorisée.

III. Règles de la mission


Les règles de mission (RoE) sont une description juridiquement contraignante des objectifs et
de la portée de la mission du client, avec des détails supplémentaires sur les attentes des
deux parties. Il s'agit du premier document "officiel" dans le processus de planification de la
mission et il nécessite une autorisation appropriée entre le client et la Red Team. Ce document
fait souvent office de contrat général entre les deux parties ; un contrat externe ou d'autres
accords de non-divulgation (NDA) peuvent également être utilisés.
Le format et la formulation du RoE sont essentiels car il s'agit d'un contrat juridiquement
contraignant qui définit des attentes claires.
La structure de chaque RoE sera déterminée par le client et la Red Team et peut varier en
termes de longueur de contenu et de sections générales.

IV. Planification de la campagne


Avant cette tâche, nous nous sommes principalement concentrés sur la planification et la
documentation de la campagne du point de vue de l'entreprise. La planification de la
campagne utilise les informations acquises et planifiées à partir des objectifs et du RoE du
client et les applique à divers plans et documents pour identifier comment et ce que fera la
Red Team.
Chaque Red Team interne aura sa méthodologie et sa documentation pour la planification de
la campagne. Nous allons présenter un ensemble de plans détaillés qui permet une
communication précise et une documentation détaillée. Le résumé de campagne que nous
utiliserons se compose de quatre plans différents, variant en profondeur et en couverture,
adaptés de documents d'opérations militaires. Chaque plan est présenté dans le tableau ci-
dessous avec une brève explication.
V. Kill Chain de la Red Team

1. Initial Access
Objectif : Explorer les différentes techniques pour obtenir un accès initial à un système et à un
réseau cibles du point de vue d'une Red Team.

1.1. Reconnaissance
Dans une opération Red Team, vous pouvez commencer par un simple nom de société, à partir
duquel vous devez commencer à rassembler des informations sur la cible. C'est là que la
reconnaissance entre en jeu. La reconnaissance (recon) peut être définie comme une enquête ou
une observation préliminaire de votre cible (client) sans l'alerter de vos activités. Si vos activités
de reconnaissance font trop de "bruit", l'autre partie sera alertée, ce qui pourrait diminuer vos
chances de succès.
Les tâches de ce cours couvrent les sujets suivants :

• Types d'activités de reconnaissance.


• Reconnaissance basée sur le WHOIS et le DNS
• Recherche avancée
• Recherche par image
• Piratage de Google
• Moteurs de recherche spécialisés
• Recon-ng
• Maltego
Voici quelques objectifs spécifiques que nous couvrirons :

• Découvrir des sous-domaines liés à notre entreprise cible


• Recueillir les informations publiques disponibles sur un hôte et les adresses IP
• Trouver des adresses e-mail liées à la cible
• Découverte des identifiants de connexion et des mots de passe divulgués
• Localiser les documents et les feuilles de calcul ayant fait l'objet d'une fuite.
La reconnaissance peut être divisée en deux parties : la reconnaissance passive et la
reconnaissance active.

• Reconnaissance passive : peut être effectuée en observant passivement.


• Reconnaissance active : nécessite d'interagir avec la cible pour la provoquer afin
d'observer sa réponse.
La reconnaissance passive ne nécessite pas d'interaction avec la cible. En d'autres termes, vous
n'envoyez pas de paquets ou de requêtes à la cible ou aux systèmes qu'elle possède. Au lieu de
cela, la reconnaissance passive s'appuie sur des informations accessibles au public, collectées et
mises à jour par une tierce partie. Le renseignement de source ouverte (OSINT) est utilisé pour
recueillir des informations sur la cible et peut être aussi simple que de consulter le profil de
médias sociaux d'une cible accessible au public.
La reconnaissance active nécessite d'interagir avec la cible en envoyant des requêtes et des
paquets et en observant si et comment elle répond. Les réponses recueillies - ou l'absence de
réponses - nous permettront d'élargir l'image que nous avons commencé à développer en utilisant
la reconnaissance passive. Un exemple de reconnaissance active est l'utilisation de Nmap pour
scanner les sous-réseaux cibles et les hôtes en direct. Parmi les informations que nous souhaitons
découvrir figurent les hôtes actifs, les serveurs en fonctionnement, les services en écoute et les
numéros de version.
La reconnaissance active peut être classée comme suit :

• Reconnaissance externe : elle est menée en dehors du réseau de la cible et se concentre


sur les ressources externes évaluables depuis Internet. Un exemple est l'exécution de
Nikto depuis l'extérieur du réseau de l'entreprise.
• Reconnaissance interne : menée à l'intérieur du réseau de l'entreprise cible. En d'autres
termes, le Pentester ou le Red Teamer peut se trouver physiquement dans le bâtiment
de l'entreprise. Dans ce scénario, il peut utiliser un hôte exploité sur le réseau de la
cible. Un exemple serait d'utiliser Nessus pour scanner le réseau interne en utilisant l'un
des ordinateurs de la cible.

a. Outils intégrés
Cette tâche se concentre sur :

• whois
• dig, nslookup, host
• traceroute/tracert
Un serveur WHOIS écoute les demandes entrantes sur le port TCP 43. L'herbergeur du domaine
est responsable du maintien des enregistrements WHOIS pour les noms de domaine qu'il loue.
whois interrogera le serveur WHOIS pour fournir tous les enregistrements enregistrés. Dans
l'exemple suivant, nous pouvons voir que whois nous fournit :

• Registrar Serveur WHOIS


• URL du bureau d'enregistrement
• Date de création de l'enregistrement
• Date de mise à jour de l'enregistrement
• Coordonnées et adresse du titulaire de l'enregistrement (sauf si elles ne sont pas
divulguées pour des raisons de confidentialité)
• Coordonnées et adresse de l'administrateur (sauf si elles ne sont pas divulguées pour des
raisons de confidentialité)
• Coordonnées et adresse du technicien (sauf si elles ne sont pas divulguées pour des
raisons de confidentialité)
Un outil courant que l'on trouve sur les systèmes de type Unix, Windows et macOS est nslookup.
Dans la requête suivante, nous pouvons voir comment nslookup utilise le serveur DNS par défaut
pour obtenir les enregistrements A et AAAA liés à notre domaine.
Un autre outil livré avec les systèmes de type Unix est traceroute, ou sur les systèmes MS Windows,
tracert. Comme son nom l'indique, il trace la route empruntée par les paquets de notre système
vers l'hôte cible. La sortie console ci-dessous montre que traceroute nous a fourni les routeurs
(hops) nous reliant au système cible. Il est important de souligner que certains routeurs ne
répondent pas aux paquets envoyés par traceroute, et par conséquent, nous ne voyons pas leurs
adresses IP ; un * est utilisé pour indiquer un tel cas.

b. Recherches avancées
Être capable d'utiliser efficacement un moteur de recherche est une compétence cruciale. Le
tableau suivant présente quelques modificateurs de recherche qui fonctionnent avec de nombreux
moteurs de recherche populaires.

Les moteurs de recherche parcourent le web jour et nuit pour indexer les nouvelles pages web et
les nouveaux fichiers. Parfois, cela peut conduire à l'indexation d'informations confidentielles. Voici
quelques exemples d'informations confidentielles :

• Documents à usage interne de l'entreprise


• des feuilles de calcul confidentielles contenant des noms d'utilisateur, des adresses
électroniques et même des mots de passe
• Fichiers contenant des noms d'utilisateur
• Répertoires sensibles
• Numéro de version des services (dont certains peuvent être vulnérables et non corrigés)
• Messages d'erreur
En combinant les recherches avancées de Google avec des termes spécifiques, il est possible de
trouver des documents contenant des informations sensibles ou des serveurs web vulnérables.
Des sites web tels que Google Hacking Database (GHDB) recueillent ces termes de recherche et
sont accessibles au public. Jetons un coup d'œil à certaines des requêtes GHDB pour voir si notre
client a des informations confidentielles exposées via les moteurs de recherche. GHDB contient
des requêtes dans les catégories suivantes :

• Footholds (Points d'appui)


Considérez le GHDB-ID : 6364 car il utilise la requête intitle : "index of" "nginx.log" pour découvrir
les journaux Nginx et pourrait révéler des erreurs de configuration du serveur qui peuvent être
exploitées.

• Fichiers contenant des noms d'utilisateur


Par exemple, GHDB-ID : 7047 utilise le terme de recherche intitle : "index of" "contacts.txt" pour
découvrir des fichiers contenant des informations juteuses.

• Répertoires sensibles
Par exemple, prenez l'exemple de GHDB-ID : 6768, qui utilise le terme de recherche
inurl:/certs/server.key pour savoir si une clé RSA privée est exposée.

• Détection de serveurs Web


Prenez l'exemple de GHDB-ID : 6876, qui détecte les informations relatives à GlassFish Server à
l'aide de la requête intitle : "GlassFish Server - Server Running".

• Fichiers vulnérables
Par exemple, nous pouvons essayer de localiser les fichiers PHP en utilisant la requête intitle :
"index of" "*.php", comme le fournit GHDB-ID : 7786.

• Serveurs vulnérables
Par exemple, pour découvrir les consoles Web SolarWinds Orion, GHDB-ID : 6728 utilise la
requête intext : "nom d'utilisateur" intext : "orion core" -solarwinds.com.

c. Médias sociaux
Les sites de médias sociaux sont devenus très populaires, non seulement pour un usage personnel
mais aussi pour un usage professionnel. Certaines plateformes de médias sociaux peuvent révéler
des tonnes d'informations sur la cible. C'est d'autant plus vrai que de nombreux utilisateurs ont
tendance à trop partager des détails sur eux-mêmes et leur travail. Pour n'en citer que quelques-
uns, il est intéressant de vérifier les sites suivants :

• LinkedIn
• Twitter
• Facebook
• Instagram
Les sites de médias sociaux permettent de recueillir facilement les noms des employés d'une
entreprise donnée. De plus, dans certains cas, vous pouvez obtenir des informations spécifiques
qui peuvent révéler des réponses à des questions de récupération de mots de passe ou des idées
à inclure dans une liste de mots ciblée. Les messages du personnel technique peuvent révéler
des détails sur les systèmes et les fournisseurs d'une entreprise. Par exemple, un ingénieur réseau
qui a récemment obtenu une certification Juniper peut faire allusion à l'infrastructure réseau
Juniper utilisée dans l'environnement de son employeur.
d. Annonces d'emploi
Les offres d'emploi peuvent également vous en apprendre beaucoup sur une entreprise. En plus
de révéler des noms et des adresses électroniques, les offres d'emploi pour des postes techniques
peuvent donner un aperçu des systèmes et de l'infrastructure de l'entreprise cible. Les offres
d'emploi les plus populaires peuvent varier d'un pays à l'autre. Veillez à consulter les sites d'offres
d'emploi dans les pays où votre client publiera ses annonces. En outre, il est toujours utile de
vérifier sur leur site Web s'il y a des offres d'emploi et de voir si cela peut révéler des informations
intéressantes.
Notez que la Wayback Machine peut être utile pour retrouver les versions précédentes d'une page
d'offres d'emploi sur le site de votre client.

e. Moteurs de recherche spécialisés


Il existe une poignée de sites Web qui proposent des services DNS avancés et gratuits. Certains
de ces sites offrent de riches fonctionnalités et pourraient avoir une pièce complète dédiée à
l'exploration d'un domaine. Pour l'instant, nous allons nous concentrer sur les principaux aspects
liés au DNS. Nous examinerons les sites suivants :
https://viewdns.info/
https://threatintelligenceplatform.com/
Threat Intelligence Platform
Threat Intelligence Platform vous demande de fournir un nom de domaine ou une adresse IP, et
lance une série de tests allant de la vérification des logiciels malveillants aux requêtes WHOIS et
DNS. Les résultats WHOIS et DNS sont similaires à ceux que nous obtiendrions en utilisant whois
et dig, mais Threat Intelligence Platform les présente de manière plus lisible et visuellement plus
attrayante.

Censys
La recherche Censys peut fournir beaucoup d'informations sur les adresses IP et les domaines.
Dans cet exemple, nous recherchons l'une des adresses IP vers laquelle cafe.thmredteam.com se
résout. Nous pouvons facilement en déduire que l'adresse IP recherchée appartient à Cloudflare.
Nous pouvons voir des informations relatives aux ports 80 et 443, entre autres ; cependant, il
est clair que cette adresse IP est utilisée pour servir de serveur à des sites Web autres que
cafe.thmredteam.com. En d'autres termes, cette adresse IP appartient à une société autre que
notre client, Organic Cafe. Il est essentiel de faire cette distinction afin de ne pas sonder des
systèmes en dehors du cadre de notre contrat.
Shodan
Pensez à utiliser Shodan dans votre reconnaissance passive !

1.2. Weaponisation
Qu'est-ce que la weaponisation ?
La "weaponisation" est la deuxième étape du modèle de la "kill chain" cybernétique. À ce stade,
l'attaquant génère et développe son propre code malveillant en utilisant des charges utiles
livrables telles que des documents Word, des PDF, etc. [1]. L'étape de weaponisation vise à utiliser
l'arme malveillante pour exploiter la machine cible et obtenir un accès initial.
Dans la plupart des organisations, le système d'exploitation Windows fonctionne, ce qui constitue
une cible probable. La politique d'environnement d'une organisation bloque souvent le
téléchargement et l'exécution des fichiers .exe pour éviter les violations de sécurité. Par
conséquent, les red teamers s'appuient sur la création de charges utiles personnalisées envoyées
via divers canaux tels que les campagnes de phishing, l'ingénierie sociale, l'exploitation de
navigateurs ou de logiciels, les méthodes USB ou Web.
Le graphique suivant est un exemple de weaponisation, où un document PDF ou Microsoft Office
personnalisé est utilisé pour transmettre une charge utile malveillante. La charge utile
personnalisée est configurée pour se connecter à l'environnement de commande et de contrôle
de l'infrastructure de la Red Team.
La plupart des organisations bloquent ou surveillent l'exécution des fichiers .exe dans leur
environnement contrôlé. Pour cette raison, les red teamers s'appuient sur l'exécution de charges
utiles à l'aide d'autres techniques, telles que les technologies de scripting Windows intégrées. Par
conséquent, cette tâche se concentre sur diverses techniques de scripting populaires et efficaces,
y compris :

• Une Windows Script Host (WSH)


• Une application HTML (HTA)
• Les applications Visual Basic (VBA)
• PowerShell (PSH)

a. Windows Scripting Host (WSH)


L'hôte de script Windows (WSH) est un outil d'administration intégré à Windows qui exécute des
fichiers batch pour automatiser et gérer des tâches dans le système d'exploitation.
Il s'agit d'un moteur natif de Windows, cscript.exe (pour les scripts de ligne de commande) et
wscript.exe (pour les scripts d'interface utilisateur), qui est responsable de l'exécution de divers
scripts Microsoft Visual Basic (VBScript), notamment vbs et vbe. Il est important de noter que le
moteur VBScript d'un système d'exploitation Windows exécute des applications avec le même
niveau d'accès et de permission qu'un utilisateur normal ; il est donc utile pour les "red teamers".
Écrivons maintenant un code VBScript simple pour créer une boîte de message Windows qui
affiche le message Welcome to THM. Veillez à enregistrer le code suivant dans un fichier, par
exemple, hello.vbs. (Voir lab TryHackMe).
b. Application HTML (HTA)
HTA est l'abréviation de "Application HTML". Elle permet de créer un fichier téléchargeable qui
reprend toutes les informations relatives à son affichage et à son rendu. Les applications HTML,
également appelées HTA, sont des pages HTML dynamiques contenant du JScript et du VBScript.
L'outil LOLBINS (Living-of-the-land Binaries) mshta est utilisé pour exécuter les fichiers HTA. Il
peut être exécuté par lui-même ou automatiquement à partir d'Internet Explorer.
Dans l'exemple suivant, nous allons utiliser un ActiveXObject dans notre charge utile comme
preuve de concept pour exécuter cmd.exe. Considérons le code HTML suivant.
<html>
<body>
<script>
var c= 'cmd.exe'
new ActiveXObject('WScript.Shell').Run(c);
</script>
</body>
</html>
c. Visual Basic for Application (VBA)
VBA est l'abréviation de Visual Basic for Applications, un langage de programmation de Microsoft
mis en œuvre pour les applications Microsoft telles que Microsoft Word, Excel, PowerPoint, etc.
La programmation VBA permet d'automatiser les tâches de presque toutes les interactions clavier
et souris entre un utilisateur et les applications Microsoft Office.
Les macros sont des applications Microsoft Office qui contiennent un code intégré écrit dans un
langage de programmation connu sous le nom de Visual Basic for Applications (VBA). Il est utilisé
pour créer des fonctions personnalisées permettant d'accélérer les tâches manuelles en créant
des processus automatisés. L'une des caractéristiques de VBA est d'accéder à l'interface de
programmation d'applications (API) de Windows et à d'autres fonctionnalités de bas niveau.
Dans cette tâche, nous aborderons les bases de VBA et la manière dont l'adversaire utilise les
macros pour créer des documents Microsoft malveillants.

d. PowerShell (PSH)
PowerShell est un langage de programmation orienté objet exécuté à partir du Dynamic Language
Runtime (DLR) dans .NET, avec quelques exceptions pour des utilisations anciennes.
Les membres de la Red Team s'appuient sur PowerShell pour effectuer diverses activités,
notamment l'accès initial, les énumérations du système et bien d'autres. Commençons par créer
un script PowerShell simple qui imprime "Welcome to the Weaponisation Room !" comme suit,
Write-Output "Welcome to the Weaponization Room!"

e. Command And Control - (C2 Or C&C)


Cette tâche présente le concept de base des cadres de commandement et de contrôle (C2) utilisés
dans les opérations de la Red Team.
Qu'est-ce que le Command and Control (C2) ?
Les frameworks C2 sont des frameworks post-exploitation qui permettent aux red teamers de
collaborer et de contrôler les machines compromises. Le C2 est considéré comme l'un des outils
les plus importants pour les "red teamers" lors de cyberopérations offensives. Les frameworks C2
fournissent des approches rapides et directes pour :

• Générer diverses charges utiles malveillantes


• énumérer les machines/réseaux compromis
• Effectuer une escalade de privilèges et un pivotement
• Mouvement latéral
• et bien d'autres encore.
Parmi les frameworks C2 les plus populaires, nous citerons Cobalt Strike, PowerShell Empire et
Metasploit. La plupart de ces frameworks visent à fournir un environnement pratique pour le
partage et la communication entre les opérations de la Red Team une fois que l'accès initial à un
système a été obtenu.
Cobalt Strike
Cobalt Strike est un framework commercial qui se concentre sur les simulations d'adversaires et
les opérations de Red Team. Il s'agit d'une combinaison d'outils d'accès à distance, de capacités
de post-exploitation et d'un système de rapport unique. Il fournit à un agent des techniques
avancées pour établir des communications secrètes et effectuer diverses opérations, notamment
l'enregistrement de clés, le téléchargement de fichiers, le déploiement de VPN, les techniques
d'escalade de privilèges, le mimikatz, le balayage de ports et les mouvements latéraux les plus
avancés.
PowerShell Empire
PowerShell Empire est un framework open-source qui aide les opérateurs de Red Team et les pen
testers à collaborer sur plusieurs serveurs en utilisant des clés et des mots de passe partagés. Il
s'agit d'un framework d'exploitation basé sur des agents PowerShell et Python. PowerShell Empire
se concentre sur l'exploitation côté client et la post-exploitation de l'environnement Windows et
Active Directory.
Metasploit
Metasploit est un framework d'exploitation largement utilisé qui propose diverses techniques et
outils pour réaliser facilement des piratages. C'est un framework open-source et il est considéré
comme l'un des principaux outils pour le pentesting et les opérations de la Red Team. Metasploit
est l'un des outils que nous utilisons dans ce cours pour générer des charges utiles pour notre
étape de weaponisation.
f. Techniques de diffusion
Les techniques de diffusion sont l'un des facteurs importants pour obtenir un accès initial. Elles
doivent paraître professionnelles, légitimes et convaincantes pour que la victime aille jusqu'au
bout du contenu.

• Envoi de courriels
Il s'agit d'une méthode courante à utiliser pour envoyer la charge utile en envoyant un e-mail de
phishing avec un lien ou une pièce jointe. Cette méthode consiste à joindre un fichier malveillant
qui peut être du type de ceux que nous avons mentionnés précédemment. L'objectif est de
convaincre la victime de visiter un site Web malveillant ou de télécharger et d'exécuter le fichier
malveillant pour obtenir un accès initial au réseau ou à l'hôte de la victime.
Les Red Teamers doivent disposer de leur propre infrastructure pour le phishing. En fonction des
exigences de l'engagement de la Red Team, il est nécessaire de configurer diverses options dans
le serveur de messagerie, notamment Domain Keys Identified Mail (DKIM), Sender Policy
Framework (SPF) et l'enregistrement DNS Pointer (PTR).
Les membres de la Red Team pourraient également utiliser des services de messagerie tiers tels
que Google Gmail, Outlook, Yahoo et d'autres ayant une bonne réputation.
Une autre méthode intéressante consisterait à utiliser un compte de messagerie compromis au
sein d'une entreprise pour envoyer des e-mails de phishing au sein de l'entreprise ou à d'autres
personnes. Le courriel compromis pourrait être piraté par hameçonnage ou par d'autres
techniques telles que les attaques par pulvérisation de mot de passe.

• Diffusion sur le Web


Une autre méthode consiste à héberger des charges utiles malveillantes sur un serveur Web
contrôlé par les membres de la Red Team. Le serveur Web doit respecter les directives de sécurité,
notamment un enregistrement et une réputation sans faille de son nom de domaine et un certificat
TLS (Transport Layer Security). Pour plus d'informations, rendez-vous ici.
Cette méthode comprend d'autres techniques telles que l'ingénierie sociale pour inciter la victime
à visiter ou à télécharger le fichier malveillant. Un raccourcisseur d'URL peut être utile lorsqu'on
utilise cette méthode.
Dans cette méthode, d'autres techniques peuvent être combinées et utilisées. L'attaquant peut
tirer parti d'exploits de type "zero-day" tels que l'exploitation de logiciels vulnérables comme Java
ou les navigateurs pour les utiliser dans des courriels de phishing ou des techniques de diffusion
sur le Web afin d'accéder à la machine de la victime.

• Livraison USB
Cette méthode exige que la victime branche physiquement la clé USB malveillante. Cette méthode
pourrait être efficace et utile lors de conférences ou d'événements où l'adversaire peut distribuer
la clé USB.
Souvent, les organisations mettent en place des politiques strictes telles que la désactivation de
l'utilisation des clés USB dans leur environnement pour des raisons de sécurité. D'autres
organisations l'autorisent dans l'environnement cible.
Les attaques USB courantes utilisées pour la weaponisation des dispositifs USB comprennent
Rubber Ducky et USBHarpoon, le câble USB de chargement, tel que O.MG Cable.

1.3. Password Attacks


Techniques d'attaque des mots de passe
Dans ce cours, nous discuterons des techniques qui peuvent être utilisées pour effectuer des
attaques de mot de passe. Nous couvrirons diverses techniques telles que les attaques par
dictionnaire, par force brute, par base de règles et par devinette. Toutes les techniques ci-dessus
sont considérées comme des attaques actives "en ligne" où l'attaquant doit communiquer avec la
machine cible pour obtenir le mot de passe afin d'obtenir un accès non autorisé à la machine.
1.4. Privilege Escalation
Le moyen le plus simple d'accéder à un autre utilisateur est de recueillir les informations
d'identification d'une machine compromise. Ces informations d'identification peuvent exister pour
de nombreuses raisons, y compris un utilisateur négligent qui les a laissées dans des fichiers en
clair, ou même stockées par certains logiciels comme les navigateurs ou les clients de messagerie.
Nous allons présenter quelques endroits connus où chercher des mots de passe sur un système
Windows.

• Installations Windows sans surveillance


Lors de l'installation de Windows sur un grand nombre d'hôtes, les administrateurs peuvent
utiliser les services de déploiement de Windows, qui permettent de déployer une seule image de
système d'exploitation sur plusieurs hôtes via le réseau. Ces types d'installations sont appelés
installations non surveillées car elles ne nécessitent pas d'interaction avec l'utilisateur. Ces
installations nécessitent l'utilisation d'un compte administrateur pour effectuer la configuration
initiale, qui peut finir par être stockée dans la machine aux emplacements suivants :

• C:\Unattend.xml
• C:\Windows\Panther\Unattend.xml
• C:\Windows\Panther\Unattend\Unattend.xml
• C:\Windows\system32\sysprep.inf
• C:\Windows\system32\sysprep\sysprep.xml
Dans ces fichiers, vous pouvez rencontrer des informations d'identification :
<Credentials>
<Username>Administrator</Username>
<Domain>thm.local</Domain>
<Password>MyPassword123</Password>
</Credentials>

• Historique de Powershell
Chaque fois qu'un utilisateur exécute une commande à l'aide de Powershell, celle-ci est enregistrée
dans un fichier qui garde en mémoire les commandes passées. Ceci est utile pour répéter
rapidement des commandes que vous avez déjà utilisées. Si un utilisateur exécute une commande
qui inclut un mot de passe directement dans la ligne de commande Powershell, il peut le récupérer
ultérieurement en utilisant la commande suivante à partir d'une invite cmd.exe :

type
%userprofile%\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_h
istory.txt

Remarque : La commande ci-dessus ne fonctionnera qu'à partir de cmd.exe, car Powershell ne


reconnaît pas %userprofile% comme une variable d'environnement. Pour lire le fichier depuis
Powershell, vous devrez remplacer %userprofile% par $Env:userprofile.

• Informations d'identification sauvegardées de Windows


Windows nous permet d'utiliser les informations d'identification d'autres utilisateurs. Cette
fonction donne également la possibilité d'enregistrer ces informations d'identification sur le
système. La commande ci-dessous permet de lister les informations d'identification enregistrées:
cmdkey /list

Bien que vous ne puissiez pas voir les mots de passe réels, si vous remarquez des informations
d'identification qui valent la peine d'être essayées, vous pouvez les utiliser avec la commande
runas et l'option /savecred, comme indiqué ci-dessous.
runas /savecred /user:admin cmd.exe

• Configuration de IIS
Internet Information Services (IIS) est le serveur web par défaut des installations Windows. La
configuration des sites Web sur IIS est stockée dans un fichier appelé web.config et peut stocker
des mots de passe pour les bases de données ou les mécanismes d'authentification configurés.
Selon la version installée de IIS, nous pouvons trouver web.config dans l'un des emplacements
suivants :

• C:\inetpub\wwwroot\web.config
• C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\web.config
Voici un moyen rapide de trouver les chaînes de connexion aux bases de données dans le fichier
:
type C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\web.config | findstr connectionString

• Récupérer les informations d'identification d'un logiciel : PuTTY


PuTTY est un client SSH que l'on trouve couramment sur les systèmes Windows. Au lieu de devoir
spécifier les paramètres d'une connexion à chaque fois, les utilisateurs peuvent stocker des
sessions où l'IP, l'utilisateur et d'autres configurations peuvent être conservés pour une utilisation
ultérieure. Bien que PuTTY ne permette pas aux utilisateurs de stocker leur mot de passe SSH, il
stocke les configurations de proxy qui incluent les informations d'authentification en clair.
Pour récupérer les informations d'identification du proxy stockées, vous pouvez rechercher
ProxyPassword dans la clé de registre suivante à l'aide de la commande suivante :
reg query HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\ /f "Proxy" /s

Remarque : Simon Tatham est le créateur de PuTTY (et son nom fait partie du chemin), et non le
nom d'utilisateur pour lequel nous récupérons le mot de passe. Le nom d'utilisateur du proxy
stocké devrait également être visible après avoir exécuté la commande ci-dessus.
Tout comme Putty stocke les informations d'identification, tout logiciel qui stocke des mots de
passe, y compris les navigateurs, les clients de messagerie, les clients FTP, les clients SSH, les
logiciels VNC et autres, disposera de méthodes pour récupérer les mots de passe que l'utilisateur
a enregistrés.

1.5. Windows Local Persistence


Après avoir pris pied sur le réseau interne de votre cible, vous devez vous assurer que vous n'en
perdez pas l'accès avant d'avoir atteint les joyaux de la couronne. L'établissement de la
persistance est l'une des premières tâches des attaquants lorsqu'ils accèdent à un réseau. En
termes simples, la persistance consiste à créer d'autres moyens d'accéder à nouveau à un hôte
sans repasser par la phase d'exploitation.
Il existe de nombreuses raisons pour lesquelles vous souhaitez établir la persistance aussi
rapidement que possible, notamment :

• La réexploitation n'est pas toujours possible : Certains exploits instables peuvent tuer le
processus vulnérable pendant l'exploitation, ce qui vous permet de n'avoir qu'une seule
chance.
• Prendre pied est difficile à reproduire : Par exemple, si vous avez utilisé une campagne
de phishing pour obtenir votre premier accès, la répéter pour regagner l'accès à un hôte
représente tout simplement trop de travail. Votre deuxième campagne pourrait également
ne pas être aussi efficace, vous laissant sans accès au réseau.
• La Blue Team est après vous : Toute vulnérabilité utilisée pour obtenir votre premier accès
peut être corrigée si vos actions sont détectées. Vous êtes dans une course contre la
montre !
Bien que vous puissiez conserver le mot de passe d'un administrateur et le réutiliser pour vous
reconnecter, vous risquez toujours que ces informations d'identification soient changées à un
moment donné. De plus, il existe des moyens plus sournois de récupérer l'accès à une machine
compromise, ce qui complique la vie de la Blue Team.

• Falsification des comptes non privilégiés


Disposer des accès d'un administrateur serait le moyen le plus simple d'obtenir la persistance
dans une machine. Cependant, pour que la Blue Team ait plus de mal à nous détecter, nous
pouvons manipuler des utilisateurs non privilégiés, qui ne seront généralement pas aussi
surveillés que les administrateurs, et leur accorder des privilèges administratifs d'une manière ou
d'une autre.
Notez que nous supposons que vous avez déjà obtenu un accès administratif d'une manière ou
d'une autre et que vous essayez d'établir la persistance à partir de là.
• Attribuer des appartenances de groupe
Nous supposerons que vous avez vidé les hachages de mots de passe de la machine victime et
que vous avez réussi à craquer les mots de passe des comptes non privilégiés utilisés.
La façon directe de faire en sorte qu'un utilisateur non privilégié obtienne des privilèges
administratifs est de l'intégrer au groupe Administrateurs. Nous pouvons facilement y parvenir
avec la commande suivante :
C:\> net localgroup administrators thmuser0 /add

Si cela semble trop suspect, vous pouvez utiliser le groupe Backup Operators. Les utilisateurs de
ce groupe n'auront pas de privilèges administratifs mais seront autorisés à lire/écrire n'importe
quel fichier ou clé de registre sur le système, en ignorant toute DACL configurée. Cela nous
permettra de copier le contenu des ruches de registre SAM et SYSTEM, que nous pourrons ensuite
utiliser pour récupérer les hachages de mots de passe de tous les utilisateurs, ce qui nous
permettra d'accéder trivialement à n'importe quel compte administratif.

Pour ce faire, nous commençons par ajouter le compte au groupe Backup Operators :
C:\> net localgroup "Backup Operators" thmuser1 /add

Comme il s'agit d'un compte non privilégié, il ne peut pas se connecter à la machine par RDP ou
WinRM, à moins que nous ne l'ajoutions aux groupes Utilisateurs du bureau à distance (RDP) ou
Utilisateurs de la gestion à distance (WinRM). Nous utiliserons WinRM pour cette tâche :
C:\> net localgroup "Remote Management Users" thmuser1 /add
VI. Blue Teaming - Cyber Defense

1. Pyramid Of Pain
Ce concept bien connu est appliqué à des solutions de cybersécurité comme Cisco Security,
SentinelOne et SOCRadar pour améliorer l'efficacité des exercices de CTI (Cyber Threat
Intelligence), de chasse aux menaces et de réponse aux incidents.
Il est important de comprendre le concept de la Pyramid Of Pain (pyramide de la douleur) en tant
que chasseur de menaces, intervenant en cas d'incident ou analyste SOC.

• Valeurs du Hash (trivial)


Selon Microsoft, la valeur de hachage est une valeur numérique de longueur fixe qui identifie les
données de manière unique. Une valeur de hachage est le résultat d'un algorithme de hachage.
Voici quelques-uns des algorithmes de hachage les plus courants :
MD5 (Message Digest, défini par RFC 1321) - a été conçu par Ron Rivest en 1992 et est une
fonction de hachage cryptographique largement utilisée avec une valeur de hachage de 128 bits.
Les hachages MD5 ne sont PAS considérés comme cryptographiquement sûrs. En 2011, l'IETF a
publié la RFC 6151, "Updated Security Considerations for the MD5 Message-Digest and the
HMAC-MD5 Algorithms", qui mentionne un certain nombre d'attaques contre les hachages MD5,
notamment la collision de hachage.
SHA-1 (Secure Hash Algorithm 1, défini par la RFC 3174) - a été inventé par la National Security
Agency des États-Unis en 1995. Lorsque des données sont transmises à l'algorithme de hachage
SHA-1, ce dernier prend une entrée et produit une chaîne de valeurs de hachage de 160 bits
sous la forme d'un nombre hexadécimal de 40 chiffres. Le NIST a déprécié l'utilisation de SHA-1
en 2011 et a interdit son utilisation pour les signatures numériques à la fin de 2013 en raison
de sa vulnérabilité aux attaques par force brute. Le NIST recommande plutôt de migrer de SHA-
1 vers des algorithmes de hachage plus puissants des familles SHA-2 et SHA-3.
SHA-2 (Secure Hash Algorithm 2) - L'algorithme de hachage SHA-2 a été conçu par le National
Institute of Standards and Technology (NIST) et la National Security Agency (NSA) en 2001 pour
remplacer SHA-1. SHA-2 a de nombreuses variantes, et la plus courante est sans doute SHA-256.
L'algorithme SHA-256 renvoie une valeur de hachage de 256 bits sous la forme d'un nombre
hexadécimal de 64 chiffres.
Un hachage n'est pas considéré comme sûr sur le plan cryptographique si deux fichiers ont la
même valeur de hachage ou le même condensé.
Les professionnels de la sécurité utilisent généralement les valeurs de hachage pour mieux
comprendre un échantillon de logiciel malveillant spécifique, un fichier malveillant ou suspect, et
comme moyen d'identifier et de référencer de manière unique l'artefact malveillant.
Vous avez probablement lu les rapports sur les ransomwares dans le passé, où les chercheurs en
sécurité fournissaient les hachages liés aux fichiers malveillants ou suspects utilisés à la fin du
rapport. Vous pouvez consulter The DFIR Report et FireEye Threat Research Blogs si vous
souhaitez voir un exemple.
Divers outils en ligne peuvent être utilisés pour effectuer des recherches de hachage, comme
VirusTotal et Metadefender Cloud - OPSWAT.

• Adresse IP (facile)
Vous avez peut-être appris l'importance de l'adresse IP dans la salle "Qu'est-ce qu'un réseau ?
Dans ce cours, vous avez appris l'importance de l'adresse IP. Une adresse IP est utilisée pour
identifier tout périphérique connecté à un réseau. Ces périphériques vont des ordinateurs de
bureau aux serveurs et même aux caméras de vidéosurveillance ! Nous nous appuyons sur les
adresses IP pour envoyer et recevoir les informations sur le réseau. Mais nous n'allons pas entrer
dans la structure et la fonctionnalité de l'adresse IP. Dans le cadre de la Pyramide de la douleur,
nous allons évaluer comment les adresses IP sont utilisées comme indicateur.
Dans la Pyramide de la douleur, les adresses IP sont indiquées par la couleur verte. Vous vous
demandez peut-être pourquoi et à quoi on peut associer la couleur verte ?
Du point de vue de la défense, la connaissance des adresses IP utilisées par un adversaire peut
être précieuse. Une tactique de défense courante consiste à bloquer, abandonner ou refuser les
requêtes entrantes provenant d'adresses IP sur votre paramètre ou votre pare-feu externe. Cette
tactique n'est souvent pas à l'épreuve des balles car il est trivial pour un adversaire expérimenté
de se rétablir en utilisant simplement une nouvelle adresse IP publique.
• Noms de domaine (simple)
Remontons la pyramide de la douleur et passons aux noms de domaine. Vous pouvez voir la
transition des couleurs - du vert au sarcelle.
Les noms de domaine peuvent être considérés comme un simple mappage d'une adresse IP à une
chaîne de texte. Un nom de domaine peut contenir un domaine et un domaine de premier niveau
(evilcorp.com) ou un sous-domaine suivi d'un domaine et d'un domaine de premier niveau
(tryhackme.evilcorp.com). Mais nous n'entrerons pas dans les détails du fonctionnement du
système de noms de domaine (DNS). Vous pouvez en apprendre davantage sur le DNS dans ce
cours "DNS en détail".
Les noms de domaine peuvent être un peu plus difficiles à modifier pour l'attaquant, car il devra
probablement acheter le domaine, l'enregistrer et modifier les enregistrements DNS.
Malheureusement pour les défenseurs, de nombreux fournisseurs de DNS ont des normes peu
rigoureuses et proposent des API qui facilitent encore plus la tâche de l'attaquant pour modifier
le domaine.

• Artéfacts d'accueil (ennuyeux)


Faisons un pas de plus vers la zone jaune.
À ce niveau, l'attaquant se sentira un peu plus ennuyé et frustré si vous pouvez détecter l'attaque.
L'attaquant devra revenir en arrière à ce niveau de détection et changer ses outils et
méthodologies d'attaque. Cela prend beaucoup de temps à l'attaquant, et il devra probablement
consacrer plus de ressources aux outils de son adversaire.
Les artefacts de l'hôte sont les traces ou les éléments observables que les attaquants laissent sur
le système, tels que les valeurs de registre, l'exécution de processus suspects, les modèles
d'attaque ou les IOC (indicateurs de compromission), les fichiers déposés par des applications
malveillantes ou tout ce qui est exclusif à la menace actuelle.
Exécution d'un processus suspect depuis Word :

Événements suspects suivis de l'ouverture d'une application malveillante :


• Outils (défi)
À ce stade, nous avons amélioré nos capacités de détection contre les artefacts. Il est fort probable
que l'attaquant renonce à s'introduire dans votre réseau ou qu'il essaie de créer un nouvel outil
ayant la même fonction. La partie sera terminée pour les attaquants, car ils devront investir de
l'argent dans la création d'un nouvel outil (s'ils en sont capables), trouver un outil ayant le même
potentiel, ou même suivre une formation pour apprendre à maîtriser un certain outil.
Les attaquants utilisent les utilitaires pour créer des macro-documents malveillants (maldocs) pour
des tentatives de harponnage, une porte dérobée pouvant être utilisée pour établir une
infrastructure de commande et de contrôle (C2), des fichiers .EXE et .DLL personnalisés, des
charges utiles ou des craqueurs de mots de passe.

• TTPs (difficiles)
TTPs est l'abréviation de Tactics, Techniques & Procedures.
Cela inclut l'ensemble de la matrice ATT&CK de MITRE, c'est-à-dire toutes les étapes suivies par
un adversaire pour atteindre son objectif, depuis les tentatives de phishing jusqu'à la persistance
et l'exfiltration des données.
Si vous pouvez détecter les TTP et y répondre rapidement, vous ne laissez pratiquement aucune
chance aux adversaires de riposter. Par exemple, si vous pouviez détecter une attaque de type
"Pass-the-Hash" à l'aide de la surveillance du journal des événements de Windows et y remédier,
vous seriez en mesure de trouver l'hôte compromis très rapidement et d'arrêter le mouvement
latéral à l'intérieur de votre réseau. À ce stade, l'attaquant a deux possibilités :

• Revenir en arrière, faire plus de recherche et de formation, reconfigurer ses outils


personnalisés.
• Abandonner et trouver une autre cible
L'option 2 semble certainement moins coûteuse en temps et en ressources.
2. Sécurité des réseaux et analyse du trafic
Comprendre les concepts fondamentaux de la sécurité des réseaux et de l'analyse du trafic pour
repérer et analyser les anomalies du réseau à l'aide d'outils et de techniques industriels.

• Sécurité des réseaux et données de réseau


Sécurité des réseaux
La sécurité des réseaux est essentiellement axée sur deux concepts fondamentaux :
l'authentification et l'autorisation. Il existe une variété d'outils, de technologies et d'approches
pour garantir et mesurer la mise en œuvre de ces deux concepts clés et aller au-delà pour assurer
la continuité et la fiabilité. Les opérations de sécurité des réseaux contiennent trois niveaux de
contrôle de base afin de garantir une gestion maximale de la sécurité.

Niveaux de contrôle de la sécurité du réseau de base :


Physique : Les contrôles de sécurité physique empêchent tout accès physique non autorisé aux
dispositifs de mise en réseau, aux tableaux de câbles, aux verrous et à tous les composants liés.
Technique : Les contrôles de sécurité des données empêchent l'accès non autorisé aux données
du réseau, comme l'installation de tunnels et la mise en œuvre de couches de sécurité.
Administratif : Les contrôles de sécurité administratifs assurent la cohérence des opérations de
sécurité, comme la création de politiques, de niveaux d'accès et de processus d'authentification.

Les principales approches :


Il existe deux approches principales et de multiples éléments sous ces niveaux de contrôle. Les
éléments les plus courants utilisés dans les opérations de sécurité des réseaux sont expliqués ci-
dessous.
Contrôle d'accès
Le point de départ de la sécurité des réseaux. Il s'agit d'un ensemble de contrôles visant à garantir
l'authentification et l'autorisation.
Contrôle des menaces
Détecter et prévenir les activités anormales/malveillantes sur le réseau. Il contient des sondes de
données de trafic internes (de confiance) et externes.

• Les éléments clés du contrôle d'accès :


Protection par pare-feu
Contrôle le trafic réseau entrant et sortant à l'aide de règles de sécurité prédéterminées.
Conçu pour bloquer le trafic suspect/malveillant et les menaces de la couche application tout en
permettant le trafic légitime et attendu.
Contrôle d'accès au réseau (NAC)
Contrôle l'adéquation des périphériques avant l'accès au réseau. Conçu pour vérifier que les
spécifications et les conditions des appareils sont conformes au profil prédéterminé avant de se
connecter au réseau.
Identity and Access Management (IAM)
Contrôle et gère les identités des actifs et l'accès des utilisateurs aux systèmes de données et aux
ressources sur le réseau.
Load Balancing (Équilibrage de la charge)
Contrôle l'utilisation des ressources pour répartir (en fonction de paramètres) les tâches sur un
ensemble de ressources et améliorer le flux global de traitement des données.
Segmentation du réseau
Crée et contrôle les plages et la segmentation du réseau afin d'isoler les niveaux d'accès
des utilisateurs, de regrouper les ressources ayant des fonctionnalités communes et d'améliorer
la protection des dispositifs/données sensibles/internes dans un réseau plus sûr.
Réseaux privés virtuels (VPN)
Crée et contrôle les communications cryptées entre les dispositifs (généralement pour un
accès à distance sécurisé) sur le réseau (y compris les communications sur Internet).
Modèle de confiance zéro
Suggère de configurer et de mettre en œuvre l'accès et les autorisations à un niveau minimum
(fournir l'accès nécessaire pour remplir le rôle assigné). L'état d'esprit est axé sur : "Ne jamais faire
confiance, toujours vérifier".

• Les éléments clés du contrôle des menaces :


Détection et prévention des intrusions (IDS/IPS)
Inspecte le trafic et crée des alertes (IDS) ou réinitialise la connexion (IPS) lorsqu'il détecte une
anomalie/menace.
Prévention de la perte de données (DLP)
Inspecte le trafic (effectue une inspection du contenu et une analyse contextuelle des données sur
le fil) et bloque l'extraction de données sensibles.
Protection des points finaux
Protection de tous les types de terminaux et d'appareils qui se connectent au réseau en utilisant
une approche multicouche comme le cryptage, l'antivirus, l'antimalware, la DLP et l'IDS/IPS.
Sécurité du cloud
Protéger les ressources des systèmes basés sur le cloud/en ligne contre les menaces et les fuites
de données en appliquant des contre-mesures appropriées comme le VPN et le cryptage des
données.
Gestion des informations et des événements de sécurité (SIEM)
Technologie qui aide à la détection des menaces, à la conformité et à la gestion des incidents de
sécurité, par le biais des données disponibles (journaux et statistiques de trafic) en utilisant
l'analyse des événements et du contexte pour identifier les anomalies, les menaces et les
vulnérabilités.
Automatisation et réponse de l'orchestration de la sécurité (SOAR)
Technologie qui aide à coordonner et à automatiser les tâches entre les différentes personnes,
les outils et les données au sein d'une plateforme unique afin d'identifier les anomalies, les
menaces et les vulnérabilités. Elle prend également en charge la gestion des vulnérabilités, la
réponse aux incidents et les opérations de sécurité.
Analyse du trafic réseau et détection et réponse réseau
Inspection du trafic réseau ou capture du trafic pour identifier les anomalies et les menaces.
L'opération typique de gestion de la sécurité du réseau est expliquée par les étapes ci-dessous :
Déploiement

• Installation du dispositif et du logiciel


• Configuration initiale
• Automatisation
Configuration

• Configuration des fonctionnalités


• Configuration initiale de l'accès au réseau
Gestion

• Mise en œuvre de la politique de sécurité


• Mise en œuvre du NAT et du VPN
• Atténuation des menaces
Surveillance

• Surveillance du système
• Surveillance de l'activité des utilisateurs
• Surveillance des menaces
• Capture d'échantillons de journaux et de trafic
Maintenance

• Mises à niveau
• Mises à jour de sécurité
• Ajustements des règles
• Gestion des licences
• Mises à jour de la configuration

MSSP (Services de sécurité gérés)


Toutes les organisations ne disposent pas des ressources suffisantes pour créer des groupes
dédiés à des domaines de sécurité spécifiques. Il y a de nombreuses raisons à cela : le budget,
les compétences des employés et la taille de l'organisation peuvent déterminer la façon dont les
opérations de sécurité sont gérées. C'est à ce moment-là que les services de sécurité gérés (MSS)
interviennent pour répondre aux besoins de sécurité. Les MSS sont des services qui ont été confiés
à des prestataires de services. Ces fournisseurs de services sont appelés fournisseurs de services
de sécurité gérés (MSSP). Aujourd'hui, la plupart des MSS sont efficaces en termes de temps et
de coût, peuvent être réalisés en interne ou externalisés, sont faciles à engager et facilitent le
processus de gestion. Les MSSP comportent plusieurs éléments, dont les plus courants sont
expliqués ci-dessous.
Test de pénétration dans le réseau
Évaluation de la sécurité du réseau en simulant des techniques d'attaque internes et externes
pour pénétrer dans le réseau.
Évaluation des vulnérabilités
Évaluation de la sécurité du réseau par la découverte et l'analyse des vulnérabilités dans
l'environnement.
Réponse aux incidents
Une approche organisée pour traiter et gérer une violation de la sécurité. Elle comprend un
ensemble d'actions visant à identifier, contenir et éliminer les incidents.
Analyse comportementale
Une approche organisée pour aborder les comportements des systèmes et des utilisateurs, en
créant des lignes de base et des profils de trafic pour des modèles spécifiques afin de détecter
les anomalies, les menaces, les vulnérabilités et les attaques.

LABS BLUE TEAM (Pratique)


• Network Sniffing and Packet Analysis (Covered in Wireshark room)
• Network Monitoring (Covered in Zeek room)
• Intrusion Detection and Prevention (Covered in Snort room)
• Network Forensics (Covered in NetworkMiner room)
• Threat Hunting (Covered in Brim room)
LABS TO TEST YOUR REDTEAM/BLUETEAM and CTF SKILLS

· Attack-Defense - https://attackdefense.com
· CTF Komodo Security - https://ctf.komodosec.com
· CryptoHack - https://cryptohack.org/
· CMD Challenge - https://cmdchallenge.com
· Exploitation Education - https://exploit.education
· Google CTF - https://lnkd.in/e46drbz8
· HackTheBox - https://www.hackthebox.com
· Hackthis - https://www.hackthis.co.uk
· Hacksplaining - https://lnkd.in/eAB5CSTA
· Hacker101 - https://ctf.hacker101.com
· Hacker Security - https://lnkd.in/ex7R-C-e
· Hacking-Lab - https://hacking-lab.com/
· HSTRIKE - https://hstrike.com
· ImmersiveLabs - https://immersivelabs.com
· NewbieContest - https://lnkd.in/ewBk6fU5
· OverTheWire - http://overthewire.org
· Practical Pentest Labs - https://lnkd.in/esq9Yuv5
· Pentestlab - https://pentesterlab.com
· Hackaflag BR - https://hackaflag.com.br/
· Penetration Testing Practice Labs - https://lnkd.in/e6wVANYd
· PentestIT LAB - https://lab.pentestit.ru
· PicoCTF - https://picoctf.com
· PWNABLE - https://lnkd.in/eMEwBJzn
· Root-Me - https://www.root-me.org
· Root in Jail - http://rootinjail.com
· SANS Challenger - https://lnkd.in/e5TAMawK
· SmashTheStack - https://lnkd.in/eVn9rP9p
· The Cryptopals Crypto Challenges - https://cryptopals.com
· Try Hack Me - https://tryhackme.com
· Vulnhub - https://www.vulnhub.com
· W3Challs - https://w3challs.com
· WeChall - http://www.wechall.net
· Zenk-Security - https://lnkd.in/ewJ5rNx2
· Cyberdefenders - https://lnkd.in/dVcmjEw8
· LetsDefend- https://letsdefend.io/

Vous aimerez peut-être aussi