Sécurisez Vos Infrastructures-Converti
Sécurisez Vos Infrastructures-Converti
Sécurisez Vos Infrastructures-Converti
• 10 heures
• Difficile
Licence
•
•
•
Introduction du cours
Vous souhaitez protéger les infrastructures de votre entreprise ? Vous avez été mandaté pour
mettre en œuvre la sécurité des systèmes, des applications ou du réseau, ou encore de
l'architecture de vos systèmes d'information ?
Je suis Victor Vuillard, Chief Security Officer et Chief Technical Officer dans une entreprise
de conception de drones. Dans ce cours, je vous propose de découvrir ensemble les démarches
à suivre pour sécuriser votre SI, votre réseau, votre Active Directory et vos systèmes et
applications.
• #
COMMENCER LE COURS
COMMENT ÇA MARCHE ?
Faites-en votre métier !
Créé par
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Partie 1 - Sécurisez l’architecture du Système d'Information
Découvrez les scénarios d’attaques
Qui m'attaque ?
On catégorise parfois les attaquants entre l'étudiant boutonneux dans son garage s'amusant à pirater
des systèmes pendant ses vacances de Noël, jusqu'à l’État disposant d'une cohorte de soldats
numériques, de moyens importants et de temps, tout cela pour viser un objectif motivé.
À moins d'être une agence de renseignement, la question importante est rarement de savoir si
un attaquant est un État, une mafia ou un concurrent industriel peu scrupuleux. Effectivement,
connaître votre attaquant ne changera pas la manière dont vous vous protégerez. D'autant que
l'attaquant dans un mois, un an ou dix ans ne sera pas toujours le même. Vous apprendrez
souvent trop tard son identité, parfois justement lorsque votre système d'information sera déjà
compromis !
Plutôt que de rentrer dans une compréhension complexe de l'attaquant, je vous propose de regarder
ensemble quoi protéger, de réfléchir aux impacts d'une attaque en fonction de vos composants ou
des applications métier visées pour ensuite définir des mesures qui bloqueront les vecteurs d'attaques
identifiés.
Quel impact ?
La plupart du temps, les bonnes pratiques d'architecture et de durcissement de système permettront de
vous prémunir de la majorité des attaques. Ces mesures sont souvent simples et peu coûteuses… pour
peu que vous les prévoyez dès le départ !
Dans certains cas, l'état de l'art ne suffit pas et il faudra proportionner les mesures permettant
d'atteindre un objectif de sécurité :
• Mettre les efforts au bon endroit pour limiter les impacts les plus importants,
• Se contenter des mesures génériques pour les systèmes pour lesquels les impacts sont
faibles et acceptables.
L'impact pourra prendre différentes formes en fonction des systèmes, des types
de données manipulées et des finalités métier. Pour donner quelques exemples :
Le déni de service
Un déni de service vise à rendre un système ou un service réseau indisponible. Il se déroule en deux
étapes : épuiser les ressources, puis rendre le système visé indisponible.
Les premières attaques se contentent d'inonder le système visé de requêtes pour épuiser ses
ressources. Il est possible de faire cela en envoyant en masse des paquets TCP SYN, UDP,
des paquets TCP fragmentés sans jamais terminer l'échange, etc. Ceci est permis
par l'exploitation des défauts d'implémentation de certains protocoles : en envoyant des
paquets mal formés, l'attaquant fait tout simplement planter le service réseau ou la pile de
communication qui est en face.
Pour augmenter leur capacité d'envoi, les attaquants lancent des attaques depuis des milliers
de systèmes compromis (souvent appelés « zombies »), ce qui donne un « déni de service
distribué ». Dans ce cas, les systèmes compromis servant à émettre les requêtes peuvent être
des postes de travail, mais aussi des équipements connectés (IoT). Il arrive par exemple que
des attaquent soient effectuées à partir de caméras connectées sur Internet dont l'interface
d'administration était restée avec un mot de passe par défaut.
Déni de service distribué (ou DDoS en anglais)
Certains dénis de service se montrent plus subtiles, en tirant partie du déséquilibre entre des
requêtes légères et des réponses du serveur plus lourdes, soit en taille, soit en temps de
traitement pour les construire.
Ceci arrive par exemple sur des serveurs de jeux en ligne où le protocole sous-jacent est UDP. Ça
facilite la falsification de la provenance de l'attaquant, avec des requêtes très petites, mais des réponses
du serveur beaucoup plus volumineuses, ce qui consomme la bande passante d'autant plus rapidement
!
Ce type d'attaque peut aussi se produire tout simplement sur des serveurs Web pour lesquels l'appel à
certaines pages ou certaines fonctions vont générer des traitements importants, par exemple des
requêtes lourdes sur une base de données.
Le défacement
Un attaquant qui réalise un « défacement » modifie le contenu d’un site Web, la plupart du
temps pour afficher un message politique, religieux ou contestataire vis-à-vis des produits de
l’entreprise. Pour faire cela, l’attaquant peut mener différentes attaques :
• Rechercher le compte et mot de passe d’accès à une interface d’administration ou à un
service d’échange de fichiers (par exemple FTP ou WebDav) qui permet de déposer
les données du site Web sur le serveur,
• Exploiter une vulnérabilité dans le serveur Web, le serveur d’application, le CMS
utilisé ou l’application elle-même,
• Compromettre un hébergeur pour défacer les sites de l’ensemble de ses clients.
Le défacement porte atteinte avant tout à l’image de l’entreprise et à la confiance que ses
clients lui portent.
La compromission d'un site Web
La compromission d’un site Web utilise les même vecteurs d’attaque que le défacement mentionné
précédemment, mais l’attaquant aura d’autres buts. L'impact ne sera donc pas seulement un défaut
d’intégrité du site Web. Parmi les actions possibles de l’attaquant, on peut mentionner :
• Le vol des données stockées sur le serveur et sur sa base de données, par exemple
les données personnelles des utilisateurs (dont leurs comptes, mots de passe, adresses
mail ou physique, etc.). Il pourra revendre ces données personnelles (un marché le
rémunère au volume, type de données et leur fraîcheur). Avec des bases de comptes et
mots de passe, il pourra essayer d’accéder à d’autres sites en ligne dont les mêmes
utilisateurs pourraient être clients. De manière générale, l’attaquant pourra aussi voler
sur les serveur des données de paiement par carte bancaire.
• Le piégeage des pages hébergées sur le site pour y ajouter un code qui tentera
d’exploiter une ou plusieurs vulnérabilités des navigateurs Web (ou de leurs greffons)
qui se connectent sur le site. Cela permettra à l’attaquant du site Web de compromettre
un grand nombre de postes de travail. Ainsi, il pourra ensuite voler leurs données ou
réaliser des dénis de service distribués, comme nous avons pu le voir juste avant.
• La mise en indisponibilité du site Web, en supprimant du contenu, ajoutant des bugs
dans le site, ou encore en redirigeant vers le site d’un concurrent.
Dans le chapitre suivant, je vous détaillerai comment les attaquants mènent des attaques plus évoluées.
En résumé
• La typologie de l'attaquant importe peu, il faut d'abord définir quoi protéger, maintenir
un impact acceptable et parer de manière générale aux vecteurs d'attaque identifiés.
• L'impact s'exprime en matière de Disponibilité, Intégrité, Confidentialité et
Traçabilité.
• Différents types d'attaque auront des impacts différents :
o un déni de service sur la disponibilité,
o un défacement sur l'intégrité,
o une compromission de site Web à la fois sur la disponibilité, l'intégrité, la
confidentialité et la traçabilité.
• #
D’ATTAQUE
Sécurisez l’architecture du Système d'Information
1. Découvrez les scénarios d’attaques
2. Maîtrisez les scénarios évolués d’attaque
3. Concevez l’architecture du système d’information
4. Assurez la sécurité physique
5. Sécurisez les systèmes industriels
• Quiz : Partie 1
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Maîtrisez les scénarios évolués d’attaque
Dans ce chapitre, je vous présente le principe et les étapes d'une APT « Advanced Persistent
Threat » et les impacts qu'elles peuvent avoir en matière de vol de données, voire de sabotage du
système d'information ou d'infrastructures industrielles.
Ayant compromis un périmètre aussi vaste, l’attaquant organise sa rémanence dans le système
d’information. Il voudra rester le plus longtemps possible et résister à la réinstallation ou au
nettoyage de quelques uns des systèmes qu’il a compromis. Voici ce qui explique la définition
du terme APT, Advanced Persistent Threat : une attaque avancée et rémanente sur un
vaste périmètre du système d’information.
Les étapes d'une APT sont généralement :
L’envoi de mails peut dans certains cas être remplacé par l’attaquant par la compromission
d’un site Web sur lequel il est prévisible que des employés de l’entreprise vont se connecter.
La variété de ces cibles est assez large, il peut s’agit du site du CE, un syndicat, un consortium
d’entreprises, un site d’actualités spécialisé dans le domaine d’activité, etc.
En piégeant un produit fournisseur
Dans quelques cas, la compromission initiale passe par le piégeage d’un produit chez le fournisseur.
Cela a été le cas pour la vague d’attaque Havex/Dragonfly, où 4 fournisseurs d’équipements pour le
domaine de l’énergie ont été piraté, l’attaquant a déposé un cheval de Troie dans leur produit. Il a
ensuite attendu que le produit soit installé chez différent exploitants pour les compromettre à leur tour.
La propagation latérale
L'objectif de cette étape est de récupérer le plus de données d'authentification possible afin de
se connecter au plus de systèmes possible pour à nouveau y récupérer des données.
La propagation latérale va se faire assez simplement en collectant sur le premier poste compromis les
données d’authentification des utilisateurs, de l’administrateur local, des mots de passe conservés en
mémoire de tous les utilisateurs, administrateurs ou tâches de service qui sont utilisées sur le poste.
L’attaquant peut ensuite réutiliser ces données d’authentification pour se connecter sur d’autres
postes de travail et y installer son cheval de Troie.
Plus l’attaquant a compromis de postes et plus il aura de chance de trouver sur l’un d’eux des données
d’authentification d’administrateur avec le plus haut niveau de privilège, par exemple un
Administrateur de Domaine Windows.
A défaut, il peut aussi viser des postes de travail sensibles, comme ceux des administrateurs ou des
composants d’infrastructures critiques, comme le serveur de sauvegarde, le serveur de distribution de
logiciels et de mises à jour, le serveur de supervision, etc. Ces systèmes ont souvent le droit de se
connecter sur tous les autres composants du système d’information, la plupart du temps avec un niveau
de privilège élevé.
APT - Propagation latérale
La rémanence
Une fois en possession des clé de la maison, l’attaquant va pouvoir installer les logiciels
malveillants qui lui permettront de rester le plus longtemps possible.
Il peut s’agir d’installer un cheval de Troie sur les différents systèmes. Parfois, en
installer plusieurs différents histoire de résister à l’identification et au nettoyage de l’un
d’eux.
L’attaquant peut aussi rajouter des portes dérobées dans des applications ouvertes sur
l’extérieur, se créer des comptes spécifiques d’administration ou de service, y compris sur les
équipements réseau ou de sécurité.
Le Command&Control
L’attaquant a maintenant le contrôle de la majeure partie du système d’information, il ne lui
reste plus qu’à organiser la manière dont il va contrôler les systèmes et exfiltrer des
données volées.
Le plus souvent, ses chevaux de Troie communiquent par HTTP ou HTTPS. Il est fréquent qu’il
utilise aussi d’autres vecteurs de sortie, comme des accès VPN, des points accès Internet annexes,
parfois mal identifiés et non maîtrisés par la DSI.
Il peut aussi transmettre des documents par mail, utiliser une « boite morte » dans un
Webmail. Par exemple avoir des mails en Brouillon, avec une pièce jointe, qui sont créés de
l’intérieur du réseau, jamais envoyé, récupéré par l’accès externe du Webmail puis supprimé.
Un accès Sharepoint pourra aussi lui être très utile pour déposer des archives de documents et
les récupérer par l’accès qui serait ouvert depuis Internet. Comme pour la persistance, un des
enjeux pour l’attaquant sera de diversifier ses canaux de contrôle et d’exfiltration de
documents. Et il pourra sortir parfois pendant des mois et des mois plusieurs centaines de Go !
APT - Exfiltration
Le sabotage de systèmes
De plus en plus de cas nous montrent qu’une APT n’a pas forcément comme impact
uniquement le vol de données, mais peut aller jusqu’au sabotage du système d’information
ou d’une infrastructure industrielle !
L'exemple frappant de Stuxnet
Pour les systèmes industriels, le cas qui a initialement mis cela en évidence est Stuxnet,
l’attaque qui a visé jusqu’en 2010 les centrifugeuses iraniennes pour enrichir l’uranium. Le
schéma d’attaque est complexe :
• renseignement humain,
• piratage de fournisseurs,
• infection initiale par média amovible en utilisant une vulnérabilité jusque-là inconnue,
• reprogrammation des automates qui contrôlent les cascades de centrifugeuses pour les
faire tourner à une fréquence de rotation qui les endommage,
• piratage du superviseur SCADA pour afficher néanmoins la fréquence normale et non
celle qui sort des limites de fonctionnement…
Bref, un cocktail détonnant dans ce scénario d’attaque évoluée, qui a induit des dégâts de
plusieurs centaines de millions d’euros et des retards de plusieurs années sur le programme
d’enrichissement iranien !
Le sabotage se généralise aussi au travers des cryptolockers, des malwares qui, après une
propagation latérale, chiffrent l'ensemble des systèmes compromis et demandent
une rançon contre la clé de déchiffrement.
Dans le chapitre suivant, nous verrons les principes d'architecture qui permettent de bloquer
les attaques élémentaires ou les différentes étapes d'une APT.
En résumé
• La compromission initiale, source d'une APT, peut provenir de vecteurs variés :
spear phishing, sites web compromis, pièce jointe piégée, compromission de
fournisseurs, etc.
• Les attaquants peuvent rebondir sur des centaines ou milliers de systèmes de
l'infrastructure.
• Ils organisent leur rémanences pour rester maître des systèmes compromis pendant
parfois plusieurs années.
• L'APT peut aller jusqu'au sabotage du système d'information et d'infrastructures
industrielles.
• #
SYSTÈME D’INFORMATION
Sécurisez l’architecture du Système d'Information
1. Découvrez les scénarios d’attaques
2. Maîtrisez les scénarios évolués d’attaque
3. Concevez l’architecture du système d’information
4. Assurez la sécurité physique
5. Sécurisez les systèmes industriels
• Quiz : Partie 1
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Concevez l’architecture du système d’information
Dans ce chapitre, je vous présenterai les principes d'architecture indispensables pour sécuriser une
infrastructure et limiter de manière efficace les principales actions d'un attaquant.
• le rôle du système,
• les flux réseau dont ils dont destinataires ou dont ils sont à l'initiative et globalement,
leur surface d'exposition à l'externe.
L'étude des scénarios d'attaque et en particulier des étapes des APT nous montrent que les systèmes
qui ont le rôle suivant doivent être particulièrement protégés :
• Les systèmes qui sont par nature exposés à l'extérieur : serveur Web, relais entrant de
messagerie, Webmail, publication de DNS externe, accès distant par VPN.
• Les systèmes qui communiquent vers l'extérieur (mais sans avoir besoin d'être joint
de l'extérieur) : relais sortant de messagerie, relais Web, relais DNS).
Ces systèmes devront être positionnés en DMZ, c'est à dire dans une zone cloisonnée et
filtrée, interconnectée à l'extérieur, mais dont les échanges avec le réseau interne sont
fortement restreints.
Cela met en évidence le besoin de mettre ces systèmes dans une zone dédiée et configurer le
filtrage pour que seuls les flux depuis les postes d'administration vers les systèmes
administrés soient autorisés. Les flux à l'initiative d'un quelconque système vers un poste
d'administration doivent être interdits.
Lorsqu'un produit d'infrastructure est choisi, il est préférable de privilégier ceux pour lesquelles
les flux réseau sont à l'initiative du serveur d'infrastructure et non du poste de travail vers le serveur
d'infrastructure. Par exemple, il est préférable pour un serveur de sauvegarde que ce soit le serveur qui
se connecte à un agent installé sur chaque poste, plutôt que d'avoir un service réseau du serveur de
sauvegarde exposé depuis l'ensemble du réseau interne.
Un cas particulier est celui de l'accès VPN qui, pour répondre à son usage, doit permettre
ensuite d'accéder au réseau interne. Dans ce cas, il faut définir les applications internes pour
lesquelles il est accepté que les utilisateurs connectés de l'extérieur au travers du VPN puisse
accéder.
La même règle pourrait être appliquée pour les postes connectés depuis l'interne, mais au
travers d'un réseau Wifi.
APT - Comment les bloquer ou en limiter l'impact ?
• En premier lieu, un pare-feu réseau, en appliquant une politique de filtrage par liste
blanche : seuls les flux nécessaires sont autorisés. C'est le moyen général qui doit être
adopté.
• Pour les systèmes qui sont exposés à l'extérieur, il est souhaitable d'avoir un proxy
applicatif qui va compléter le filtrage réseau par un filtrage applicatif.
• Un filtrage applicatif par signature peut également être appliqué au travers
d'un IPS (Intrusion Prevention System, Système de Prévention des Intrusions), qui va
bloquer certaines attaques lorsqu'un flux réseau correspond à une de ses signatures. Ce
système peut être judicieux à l'entrée d'un site ou aux interfaces avec l'extérieur, mais
il faudra être précautionneux de ne pas bloquer un flux légitime (en cas de faux
positif de la détection).
• Pour la défense en profondeur, il est possible pour réduire les coûts et être en
capacité de traiter un volume important de systèmes de n'appliquer un cloisonnement
qu'au travers des switchs, en configuration des VLAN ou PVLAN.
Dans le prochain chapitre, après avoir traité des mesures cyber d'architecture, nous étudierons
les mesures équivalentes de sécurité physique à adopter.
En résumé
• Un cloisonnement et un filtrage particulièrement restrictif doivent être appliqués pour
les postes d'administrateurs, équipements d'infrastructure et de sécurité.
• La conception des DMZ doit permettre d'empêcher un attaquant de rebondir d'un
service exposé à l'externe vers le réseau interne.
• Partant du postulat qu'un poste interne peut être compromis, une défense en
profondeur basée sur un cloisonnement du réseau interne permet de limiter la
propagation latérale d'un attaquant.
• #
PHYSIQUE
• Quiz : Partie 1
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Assurez la sécurité physique
Dans ce chapitre, je vous présente les mesures de sécurité physique à appliquer, en cohérence avec les
mesures de sécurité logique (cyber).
Protection
• Protection du périmètre du site ou du bâtiment, limitation des zones d'entrée et sortie
• Contrôle d'accès par badge, accès plus restreints à certains locaux
• Barreaudage de fenêtres ou utilisation de verre sécurité
• Utilisation d'armoires fortes pour stocker certains documents ou supports de données
(ex : sauvegardes)
Détection
• Agents de sécurité contrôlant les accès, vérifiant le port du badge apparent avec photo,
rondes
• Vidéosurveillance
• Détecteurs de bris de glace ou d'ouverture de porte
• Détecteurs volumétriques, de franchissement de clôtures
Réaction
• Déroulement de procédures en cas de détection (ex : déclenchement de détecteur
volumétrique en heure fermée dans une salle serveur).
Dans le prochain chapitre, nous traiterons des spécificités de sécurisation des systèmes
industriels, pour lesquels la prise en compte de la sécurité physique et sécurité des personnes
est bien imprégnée, mais les mesures de sécurité cyber souvent insuffisantes.
En résumé
• La sécurité physique repose sur des mesures de protection, détection et réaction.
• Des zones de sécurité physique doivent être définies, en cohérence avec la sécurité
logique et l'impact potentiel d'une compromission.
• Les zones de sécurité physique permettent d'appliquer des mesures de
manière graduée et proportionnelle à l'impact potentiel d'un acte de malveillance ou
d'un sinistre.
• Il ne faut pas oublier les sinistres (causes non malveillantes) : incendie, dégât des
eaux, alimentation électrique, chaleur, foudre.
• #
SYSTÈMES INDUSTRIELS
• Quiz : Partie 1
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Sécurisez les systèmes industriels
Dans ce chapitre, vous apprendrez comment sécuriser les systèmes industriels en vous
adaptant à leurs spécificités.
Quelles contraintes pour sécuriser les systèmes industriels ?
De manière schématique, on retrouve sur les systèmes industriels des capteurs ou actionneurs
contrôlés par des automates, eux-mêmes contrôlés ou supervisés par
des superviseurs/SCADA.
La première contrainte forte est que sur l'historique d'une installation industrielle, ces équipements ont
un niveau de sécurité par défaut très faible. De plus, une fois installée, l'usine est souvent prévue
pour produire pendant plusieurs année sans que ne soit prévu le moindre créneau d'évolution des
systèmes de contrôle commande. Il est donc rare de pouvoir y appliquer une amélioration continue.
D'autre part, certains systèmes doivent subir des qualifications avant d'être mis en production et ces
démarches nécessitent parfois plusieurs années, ce qui freine d'autant plus leur évolution et capacité
d'amélioration de la cybersécurité. En particulier, cela ne permet pas d'appliquer au fil de l'eau des
correctifs de sécurité ou des mises à jour antivirales, comme cela se ferait naturellement sur des
systèmes bureautique.
Pour traiter ces vecteurs d'attaque, le cloisonnement et le filtrage interne deviennent particulièrement
importants. Un pare-feu doit interconnecter les différents systèmes ou groupes de systèmes industriels
et être configuré pour ne laisser passer que les flux réseau justifiés par un besoin fonctionnel. En cas
de compromission d'un des composants de l'infrastructure industrielle, cela permet de limiter la
capacité de rebond d'un attaquant sur les autres composants.
Tout comme les échanges réseau, ceux par médias amovibles doivent être filtrés :
• Limiter les points d'échange et désactiver l'USB sur les systèmes qui n'en ont pas
besoin.
• Utiliser un dispositif matériel ou logiciel qui limite les échanges USB, l'identifiant des
clés, le contenu des données échangées ou leur signature numérique.
La vérification d'une signature numérique de l'ensemble des données importées est une
mesure judicieuse, que ce soit pour les données échangées par le réseau ou par médias
amovibles, car cela permet de s'assurer à la fois de la provenance de la donnée et de son
intégrité. Quel que soit le cheminement de la donnée, on a alors l'assurance qu'un attaquant n'a
pas modifié la donnée sur une des étapes du transfert !
En résumé
• La faible fréquence d'évolution des systèmes industriels nécessite une sécurité par
design et la mise en œuvre de mesures qui ne nécessitent pas d'évolution périodique,
en particulier une politique de restriction logicielle par liste blanche.
• Lorsqu'un système final n'est pas sécurisé en l'état, il faut couvrir en amont les
vecteurs d'attaque par des mesures d'architecture.
• Il est indispensable de filtrer les échanges par médias amovibles.
• La vérification systématique de signature numérique de toutes les données importées
sur l'infrastructure industrielle est une mesure particulièrement efficace.
• #
• Quiz : Partie 1
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Partie 1
Compétences évaluées
• Question 1
L'attaquant pirate le site Web de l'entreprise pour afficher un message à caractère politique.
À partir de nombreux systèmes qu'il contrôle, l'attaquant envoie en masse des requêtes vers un
serveur de l'entreprise.
Parmi les scénarios suivants, quels sont ceux qui pourraient constituer une approche
initiale de la victime par l'attaquant, dans le cadre d'une attaque de type APT (Advanced
Persistent Threat) ?
L'attaquant pirate le site Web d'un syndicat et y dépose un code qui exploitera des
vulnérabilités du navigateur (ou de ses greffons) des employés de l'entreprise.
L'attaquant largue depuis un drone des clés USB piégées sur le parking de l'entreprise. Il
attend ensuite qu'un employé en ramasse une et la branche sur son PC.
o
L'attaquant envoie de manière ciblée des mails aux employés, contenant une pièce jointe
piégée ou un lien vers un site Web malveillant, qui exploitera des vulnérabilités du navigateur
(ou de ses greffons) des utilisateurs qui s'y connectent.
L'attaquant pirate un fournisseur, piège son logiciel et attends que celui-ci soit installé dans
l'entreprise.
Améliorer le filtrage des mails et du proxy Web pour bloquer les contenus malveillants ou en
réduire le volume.
Cloisonner le réseau interne de mon système d'information pour éviter que l'attaquant
rebondisse facilement d'un poste lambda vers un poste d'administrateur ou un serveur
d'infrastructure critique.
Bloquer les logiciels malveillants sur les postes et les serveurs en appliquant unes mesures
efficaces, les politiques de restrictions logicielles.
Sûrement pas, ils sont trop vieux, l'attaquant n'en maîtrise pas la technologie et ils sont
souvent sur des réseaux isolés.
Pour protéger un système industriel dont les automates ont de multiples vulnérabilités et
aucun correctif du fournisseur disponible, que faites-vous ?
Je demande au fournisseur qu'il corrige son produit et attends la nouvelle version. Déployer
une protection étant coûteux, mieux vaut laisser le travail au fournisseur.
Sur un système qui ne peut pas être mis à jour, quelle mesure de sécurité sera la plus
efficace ?
Installer un antivirus.
Configurer une politique de restriction logicielle où seuls les programmes légitimes pourront
être exécutés.
• Question 7
o
Assurer une cohérence entre la sécurité logique et la sécurité physique, en définissant des
mesures de protection, de détection et de réaction.
Quels scénarios devront rentrer dans votre prise en compte de la sécurité physique ?
Un intrus rentre dans les locaux en fin de journée et dérobe tous les PC portables laissés sans
protection et sans surveillance.
Un concurrent rentre dans les locaux et vole toutes les impressions laissées sur le multicopieur
sans que personne ne soit venu les chercher.
Des travaux se font dans la rue et la pelleteuse arrache votre arrivée de fibre optique.
Depuis son blockhaus, un attaquant vous envoie par mail une pièce jointe malveillante.
• Question 9
Quels systèmes voudrez vous protéger plus particulièrement aussi bien d'un point de vue
logique que physique ?
Attention, plusieurs réponses sont possibles.
Le PC du patron
La disponibilité
L'intégrité
La confidentialité
La traçabilité
• Quiz : Partie 1
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Partie 2 - Mettez en œuvre la sécurité réseau
Tout d'abord, vous pourrez obtenir la configuration actuelle avec la commande suivante :
#
Sur la plupart des distributions Linux, la politique par défaut est de laisser passer le trafic
réseau et ne pas appliquer de règle de filtrage ( policy ACCEPT ), ce qui est le cas ici. Pour
l'exercice, les règles de filtrage peuvent être réinitialisées avec l'option -F .
Vous pouvez voir ici que la politique peut s'appliquer sur 3 chaînes de traitement :
Prenons l'exemple des postes d'administration qui doivent pouvoir se connecter en SSH sur la
pare-feu pour l'administrer :
# iptables -A INPUT -s $POSTE_ADMIN -p tcp --dport 22 -j ACCEPT
De manière simple, les options sont ici :
Bien sûr, vous ne devez pas écrire deux règles distinctes, mais reposer sur le suivi de l'état de
connexion (pour TCP, le pare-feu se base sur les flags SYN, SYN-ACK, ACK, en s'assurant
de l'enchaînement, du sens, des numéros de séquences, etc.).
Pour ajouter cette fonction de suivi d'état, iptables utilise l'option « -m state » en précisant
que sont autorisés les nouveaux paquets, ainsi que ceux relatifs à des connexions déjà établies.
Par exemple, pour autoriser les connexions du LAN des postes de travail vers le proxy Web :
# iptables -A INPUT -s $LAN_PDT -d $PROXY_WEB -p tcp \
--dport 8080 \
-m state --state NEW,ESTABLISHED \
-j ACCEPT
Configurez la translation d’adresse avec le NAT
Lorsqu'un paquet est routé au travers du pare-feu, ce dernier peut modifier certaines caractéristiques
du paquet. C'est le NAT - Network Adress Translation (traduction d'adresse réseau). Le cas le plus
courant est pour masquer les adresses IP du réseau interne et les remplacer par l'adresse IP de sortie
sur Internet. Par exemple, avec un réseau interne dont la plage d'adresse est 192.168.0.0 et une
interface de sortie sur Internet ppp0 :
Sauvegardez
Pour que la configuration du pare-feu soit disponible au prochain démarrage, pensez à la
sauver avec l'une des deux commandes suivantes :
# iptables-save
# service iptables save
Ça y est, vous savez maintenant comment activer le pare-feu nécessaire aux cloisonnement et
au filtrage du réseau.
Voyons dans le chapitre suivant quelles sont les différentes alternatives pour protéger des
connexions réseau en les chiffrant !
En résumé
• Pour un filtrage efficace par liste blanche, configurez une politique qui interdit les
connexions par défaut, puis ajouter au fur et à mesure des règles qui autorisent les
connexions légitimes.
• Faites des règles les plus précises et les plus restrictives possibles, en précisant les IP
source et destination, port destination et en activant le suivi d'état.
• Le NAT permet de masquer et modifier les adresses IP internes non routables sur
Internet.
• La journalisation permet d’identifier les connexions malveillantes, tirez en bénéfice !
• #
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Chiffrez vos connexions réseau
Qu'est ce que le chiffrement ?
De manière générale, le chiffrement des connexions réseau permet de protéger
la confidentialité et l'intégrité des données qui sont échangées, que ce soit des données métier ou des
données d'authentification, par exemple. Lorsque des systèmes communiquent entre eux, il est
fréquent qu'ils traversent une zone réseau de moindre confiance, ce qui renforce le besoin de protéger
la connexion réseau !
L'avantage du mode AH est qu'il offre une meilleure protection, puisqu'il protège les adresse source
et destination des connexions qui passent dans le tunnel chiffré. Ces adresses sont la plupart du temps
des adresses IP internes qui n'ont pas à être dévoilées à l'extérieur.
Cela offre comme autre avantage de moins poser de problème en cas de traversée de réseau avec
changement d'adresse (NAT).
L'inconvénient est que le trafic résultant est sensiblement plus volumineux que pour ESP.
Cela étant, aujourd'hui, c'est le mode privilégié pour chiffrer le trafic réseau entre deux sites
distants. C'est parfois utilisé pour chiffrer le trafic entre un poste client et un concentrateur
VPN, mais la tendance aujourd'hui est d'utiliser des VPN SSL, ce qui est plus léger et présente
moins de contraintes d’interopérabilité.
ESP a été conçu avant tout pour chiffrer des flux IPv6, mais ce protocole n'étant pas encore
généralisé, il est rare d'utiliser un chiffrement IPsec ESP.
Chiffrement SSL/TLS
L’autre moyen pour chiffrer vos connections est l’utilisation des protocoles SSL/TLS.
Les protocoles SSL (Secure Socket Layer) et TLS (Transport Layer Security) permettent
la sécurisation des échanges réseau. Ici, le chiffrement assure
la confidentialité et l'intégrité des données échangées.
De plus, le serveur dispose d'un certificat, ce qui permet au client de s'assurer qu'il parle au bon
destinataire et éviter qu'un attaquant se fasse passer pour le serveur légitime. SSL et TLS gèrent les
couches de transport et session pour ensuite transmettre la donnée applicative des principaux
protocoles comme HTTP pour le Web ou SMTP pour l'envoi de mails. Le gros avantage est qu'ils
peuvent être adaptés à la plupart des protocoles.
Dans certains cas, il est possible d'ajouter une authentification du client par certificat, ce qui
offre une bien meilleure robustesse que l'authentification au sein de l'applicatif par mot de
passe.
Cette polyvalence fait que ce mode de chiffrement est utilisé de manière générique entre un
client et un serveur. Cela peut aussi bien être entre des client externes à l'entité qui se
connectent à un serveur interne (par exemple, un site Web marchand) que l'inverse.
VPN SSL
Enfin, la dernière méthode que vous pourrez employer est le VPN SSL.
SSL ou TLS étant relativement légers, il devient très fréquent de l'utiliser pour chiffrer les
connexions réseau entre un client distant et l'interne du réseau.
Pour cela, il suffit d'avoir un client VPN sur le poste de travail qui va intercepter le trafic
réseau et le faire passer dans un tunnel TLS. A l'autre bout de la chaîne, un concentrateur
VPN SSL est installé en DMZ et relaie ensuite les connexions sur le réseau interne.
Qu'il s'agisse de VPN SSL ou IPsec, il est important de définir les règles de filtrage en sortie
du tunnel VPN. En effet, en fonction du niveau de sensibilité des applications et du besoin
d'accès distant, la surface d'exposition mérite souvent d'être limitée. Par exemple, un
utilisateur connecté à distance en VPN SSL ou une filiale reliée en VPN IPsec ne doit pas
avoir un accès illimité aux ressources du réseau interne, il ne faut autoriser que les services
qui lui sont utiles !
En résumé
• Il existe 3 solutions pour chiffrer : les VPN IPsec, le VPN SSL et le flux SSL/TLS.
• Les VPN IPsec sont utilisés pour faire un chiffrement de site à site.
• Le chiffrement SSL/TLS est standard et s'adapte sur de nombreux protocoles
applicatifs. Il est utilisé pour protéger les échanges réseau entre un client et un
serveur.
• Pour la connexion de postes de travail voulant accéder au réseau interne de l'extérieur,
la facilité de mise en œuvre de VPN SSL tend à les privilégier pour ce cas d'usage à
des clients VPN IPsec.
• #
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Sécurisez vos équipements réseau
Dans ce chapitre, vous apprendrez à utiliser les fonctions de sécurité des équipements réseau pour
sécuriser le réseau interne et appliquer de la défense en profondeur. En effet, les experts se
concentrent souvent sur la sécurité périmétrique, en oubliant qu'il est indispensable de se protéger
aussi d'un poste interne qui serait compromis !
Vous pourrez tester les configurations présentées avec un émulateur de type GNS3. Les
commandes que je vous propose sont celles d'équipements Cisco, mais les mêmes fonctions
sont présentes chez les principaux constructeurs.
Je vous propose d’améliorer la sécurité de votre réseau interne en :
En matière d'architecture, nous allons donc créer des VLAN différents pour des composants n'ayant
pas le même niveau de sensibilité, pour différencier par exemples :
Switch#show vlans
No Virtual LANs configured.
Switch#vlan database
Switch(vlan)#vlan 10
VLAN 10 added:
Name: VLAN0010
Switch(vlan)#vlan 20
VLAN 20 added:
Name: VLAN0020
Switch(vlan)#vlan 30
VLAN 30 added:
Name: VLAN0030
Afin de rendre la gestion plus explicite, vous pouvez définir un nom au VLAN :
Switch(vlan)#vlan 10 name CLIENTS
VLAN 10 modified:
Name: CLIENTS
Switch(vlan)#exit
APPLY completed.
Exiting....
Dans notre exemple, le poste de travail est connecté au port 0, le poste d'admin au port 1 et
le serveur interne au port 2. Vous devrez assigner le VLAN correspondant de la manière
suivante :
Switch#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#interface fa1/0
Switch(config)#interface fa1/1
Switch(config-if)#interface fa1/2
Switch(config-if)#
Switch(config-if)#end
Switch#
witch#show vlan-switch
VLAN Name Status Ports
---- -------------------------------- --------- ---------------------------
----
1 default active Fa1/3, Fa1/4, Fa1/5, Fa1/6
Fa1/7, Fa1/8, Fa1/9, Fa1/10
Fa1/11, Fa1/12, Fa1/13, Fa1/14
Fa1/15
10 CLIENTS active Fa1/0
20 ADMIN active Fa1/1
30 SERVEURS active Fa1/2
Certaines interfaces seront configurées en mode trunk, ce qui permet d'y véhiculer plusieurs
VLANs :
Switch#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#interface fa1/15
Switch(config-if)#end
Switch#
PVLAN
Pour restreindre encore le cloisonnement, vous pouvez mettre en place des private VLAN
ou PVLAN. Cela permet d'assurer un cloisonnement supplémentaire au sein d'un même
sous-réseau logique.
Par exemple, vous pourrez ainsi séparer les postes de travail les uns des autres. En effet, ils
sont rarement besoin de communiquer entre eux, car lorsqu'ils veulent échanger des données,
ils le font au travers d'un serveur !
• les ports primaires sur lesquelles seront connectés les systèmes pouvant être
joints depuis les ports secondaires. Il peut s'agir d'un serveur de fichier ou d'un proxy
Web ;
• les ports secondaires sur lesquels sont branchés des systèmes qui ne pourront
communiquer qu'avec les systèmes connectés à des ports primaires. Les ports
secondaires isolés se distinguent des ports secondaires communauté : pour ces
derniers, si plusieurs systèmes sont connectés à un même port, ils peuvent
communiquer entre eux.
• Les ports promiscuous peuvent communiquer avec tous les systèmes des ports
primaires ou secondaires. Il s'agit typiquement du port sur lequel sera branché le pare-
feu qui filtre les flux échangés entre les différents VLANS.
La configuration se fait de la manière suivante :
Switch(config)# vlan <primary_vlan_id>
Switch(config-vlan)# private-vlan primary
Switch(config-vlan)# exit
Switch(config)# vlan <secondary_vlan_id>
Switch(config-vlan)# private-vlan isolated
Switch(config-vlan)# exit
Port-security
Lorsqu'un attaquant a accès au réseau interne, il peut faire des attaques au niveau ARP, en
particulier pour usurper un adresse MAC, détourner le trafic à destination du routeur par
défaut ou du serveur DNS.
Il peut aussi tout simplement falsifier un grand nombre de réponses ARP afin de saturer les
switchs (leur table CAM) et les faire se comporter comme des Hub. Cela permet de capturer
l'ensemble du trafic réseau et lorsqu'elles ne sont pas chiffrées, des données d'authentification.
Tout d'abord, il est possible de fixer un maximum d'associations d'adresses MAC pour un
port donné. Même en ne le limitant pas à une seule, cela évite les attaques visant à saturer la
table CAM des switchs :
Switch(config)#interface fa1/3
Switch(config-if)#switchport mode access
Switch(config-if)#switchport port-security maximum 7
Le mode sticky permet un apprentissage automatique des adresses MAC branchées sur
chaque port :
Switch(config)#interface fa1/3
Switch(config-if)#switchport mode access
Switch(config-if)#switchport port-security
Switch(config-if)#switchport port-security mac-address sticky
Pour être encore plus restrictif, au lieu de sticky, l'adresse MAC de l'équipement autorisé peut
être inscrite en dur. La gestion en est tout de même contraignante ! Il faut par ailleurs noter
qu'un attaquant connaissant une adresse MAC peut la configurer sur son propre PC et ainsi
se brancher à la place de l'équipement légitime. Ce type de scénario peut être évité avec
une authentification 802.1x.
Dans tous les cas, pensez que des situations non malveillantes nécessiteront de mettre à jour la
configuration, par exemple en cas de remplacement d'une carte réseau défectueuse !
Plusieurs actions sont possibles lors d'une violation du port-security : la désactivation de
l'interface, la restriction du trafic à l'adresse MAC connue ou encore l'envoi d'une alerte
SNMP.
Pour éviter cela, il suffit d'activer le DHCP Snooping en indiquant sur le switch quel est le
port où les réponses DHCP sont légitimes :
Switch#conf t
Switch(config)#ip dhcp snooping
Switch(config)#ip dhcp snooping vlan 1
Switch(config)#interface Fa1/5
Switch(config-if)#ip dhcp snooping trust
En complément du DHCP Snooping, l'activation du DAI (Dynamic ARP Inspection) permet
au switch d'inspecter l'ensemble du trafic ARP, le confronter avec une base de référence
construite à partir du DHCP Snooping, pour ne laisser passer que les réponses ARP légitimes.
En résumé
• Pour sécuriser vos équipements réseau, il y a 4 moyens : les VLAN, le PVLAN,
le port-security et DHCP Snooping et DAI.
• VLAN et PVLAN permettent de renforcer vos cloisonnement interne.
• Les attaques ARP peuvent être limité en en activant le port-security.
• La fonction de DHCP Snooping permet d’empêcher les réponses DHCP pirates.
• #
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Entraînez-vous à cloisonnez et filtrez le réseau de votre
entreprise
À vous de jouer !
Pour vous entraîner, réalisez cet exercice étape par étape. Une fois terminé, vous pouvez
comparer votre travail avec les pistes que je vous propose.
Vous arrivez dans votre nouvelle entreprise en tant que RSSI et constatez que le réseau n'est
pas cloisonné ou filtré. Le réseau est actuellement à plat.
Vous souhaitez proposer une nouvelle architecture qui segmentera les catégories suivantes
d'utilisateurs :
• Les membres du Comité Exécutif qui disposent des informations stratégiques et en
particulier le projet d'acquisition d'un concurrent ;
• Les administrateurs de la DSI ;
• Les utilisateurs standards, répartis dans 3 divisions métier différentes.
En dehors des utilisateurs, le système d'information héberge :
• deux contrôleurs de domaine Active Directory et deux serveurs Radius. Les serveurs
Active Directory assurent le rôle de serveurs DNS et DHCP ;
• trois serveurs, chacun hébergeant les applications métier d'une division. Toutes les
applications métier sont développées en PHP/MySQL par la DSI ;
• un serveur de fichiers et d'impressions ;
• un serveur de messagerie électronique ;
• un proxy Web ;
• un relais filtrant pour les mails entrants ;
• le serveur Web de l'entreprise, permettant à des clients externes de passer des
commandes. Ce serveur repose sur un serveur de bases de données hébergé sur le
réseau interne, partagé avec le serveur et l'application qui gèrent la logistique (2e
division métier).
L'entreprise dispose également d'imprimantes ou multicopieurs.
Parmi ses équipements réseau, elle dispose de switchs supportant le Port Security, DHCP
Snooping et 802.1x. Le pare-feu dispose de 8 interfaces réseau.
Enfin, l'entreprise dispose de nombreuses salles de réunion. Les réunions peuvent comporter
des personnes externes à l'entreprise. Les employés connectés au réseau en salle de réunion
doivent absolument avoir accès à leurs applications métier.
Consigne
Proposez une architecture avec les différentes zones définies soit sur le pare-feu, soit sur les
équipements réseau internes. Implémentez les règles de filtrage entre chaque zone avec un pare-feu de
type iptables sous Linux.
Livrables attendus
Vous devrez réaliser les trois fichiers suivants :
1. Un schéma d'architecture réseau exporté sous forme de fichier PNG ou Jpeg. Vous
pouvez créer un tel schéma à partir de Visio ou du site web Draw.io. Le schéma
présentera les différentes zones, celles créées au niveau du pare-feu ou celles créées au
niveau des switchs. Il positionnera les différents serveurs ou groupes de postes de
travail dans chaque zone.
2. Un fichier LibreOffice Writer ou exporté en PDF qui contiendra
1. Dans une première partie, la liste des zones (VLAN ou zones cloisonnées par
une interface du pare-feu), leurs adresses ou plages d'adresse et l'équipement et
son IP qui en assurent le routage
2. Dans une seconde partie, la description de la solution proposée pour que les
utilisateurs gardent leur contexte réseau lorsqu'ils sont connectés en salle de
réunion.
3. Troisièmement, un fichier texte décrivant les règles de pare-feu iptables.
Vérifiez votre travail
Alors, vous êtes allé au bout ? Suivez le guide pour vérifier votre travail !
Le schéma d'architecture et le fichier texte décrivant les règles de pare-feu doivent
répondre à au moins 3 des caractéristiques suivantes :
• Les serveurs recevant des connexions entrantes initiées d'Internet (mail, Web) sont
cloisonnés du reste du réseau, ils sont dans une DMZ sur une interface dédiée du pare-
feu.
• Le proxy Web initiant des flux directs vers Internet est séparé du reste du réseau, il est
dans une DMZ sur une interface dédiée du pare-feu.
• Le serveur de bases de données est accessible à la fois de la DMZ externe et depuis un
serveur interne de la logistique. Il doit être cloisonné du reste du réseau, soit dans un
VLAN dédié, soit sur une interface dédiée du pare-feu.
• Les serveurs internes sont séparés dans un VLAN chacun et arrivent ensemble sur une
interface du pare-feu
• Les 6 zones clients (COMEX, DSI, 3 métiers et imprimantes) sont dans des VLAN
séparés et arrivent sur une interface du pare-feu. Il serait envisageable de considérer
les imprimantes comme un VLAN au même niveau que les serveurs internes, et non
les postes de travail, mais leur implémentation géographique implique qu'il est plus
simple de les configurer au même niveau qu'un poste de travail (les VLAN seront
propagés sur les mêmes switchs).
Le fichier texte décrivant les règles de pare-feu doit répondre à au moins 4 des
caractéristiques suivantes :
• La définition des interfaces réseau du pare-feu et les zones caractérisées par les
adresses IP ou sous-réseau respectent les caractéristiques définies ci-dessus concernant
le schéma d'architecture.
• La politique par défaut est définie à DROP pour toutes les chaînes de traitement.
• Les règles sont écrites avec le suivi d'état et la journalisation des flux.
• Une règle de NAT permet la translation d'adresse entre les plages d'adresses IP
internes respectant la RFC 1918 et Internet.
• Aucune connexion réseau directe n'est autorisée entre le réseau interne et Internet.
• Seules les flux justifiés fonctionnellement sont autorisés.
• Aucun système ne peut se connecter sur les postes d'administration.
• Seuls les postes d'administration peuvent se connecter sur les services réseau
d'administration des serveurs, des postes de travail, des équipements réseau et du pare-
feu.
Le fichier LibreOffice Writer ou PDF doit répondre à au moins une des caractéristiques
suivantes :
1. Pour la première partie :
o Toutes les zones et les VLAN décrits ci-dessus concernant le schéma
d'architecture doivent figurer dans la liste.
o Tous les systèmes ou sous-réseaux internes doivent avoir une plage d'adresse
IP respectant la RFC1918.
o Le routage pour tous les VLAN passe par le pare-feu. Aucun routage n'est
effectué sur les équipements intermédiaires (sinon, aucun filtrage ne serait
réalisé inter-VLAN).
2. Pour la seconde partie :
o les principes de la mise en place de 802.1x, qui permet à un utilisateur de
garder son contexte réseau (son VLAN et donc sa zone et les règles de filtrage
associées) quel que soit son point de connexion doivent être décrits. Par
exemple, il peut être connecté soit à son bureau, soit en salle de réunion et
gardera la même configuration réseau et aura accès aux mêmes services.
Voici un exemple pour vous permettre de vérifier votre travail.
• #
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Partie 3 - Sécurisez votre Active Directory
La protection uniquement au niveau réseau n'est pas suffisante, car certains services
sont exposés par nature. C'est le cas d'Active Directory, qui est le point névralgique qui
gère l'authentification sur les différents systèmes et les différentes applications. Active
Directory est d'ailleurs utilisé pour gérer l'authentification au-delà du monde Microsoft ! En
effet, des connecteurs LDAP ou Radius permettent de s'y référer pour authentifier les
utilisateurs qui se connectent sous Linux, des équipements réseau ou encore divers progiciels
et applications.
Un compte Active Directory devient alors le Sésame sur toute l'infrastructure du système
d'information.
Les attaquants ne s'y sont pas trompés. Lorsqu'ils arrivent à mettre un premier pied sur le réseau, leur
objectif devient de compromettre l'ensemble du domaine Active Directory. C'est ce que nous avons
vu dans la première partie de ce cours en ce qui concerne les APT (Advanced Persistent Threat). La
phase de propagation latérale de l'attaquant a pour but de récupérer des données d'authentification d'un
compte privilégié sur le domaine, ce qui permet ensuite de compromettre un contrôleur de
domaine et obtenir ainsi les données d'authentification de tous les utilisateurs.
Vous l'avez compris, le domaine Active Directory est l'élément clé à sécuriser dans votre
infrastructure !
Allez du mot de passe à son empreinte
Pour comprendre l'authentification sous Windows, deux notions sont essentielles :
• LM est le format historique. Les mots de passe sont limités à 14 caractères, sur un
alphabet restreint (pas de caractères Unicode). LM repose sur un algorithme DES
ancien et faible. Le calcul de l'empreinte ne se fait même pas sur toute la longueur du
mot de passe. Ce dernier est décomposé en deux portions de 7 caractères (voire une
portion plus courte pour les mots de passe qui ne font pas 14 caractères), ce qui facilite
le travail d'un attaquant. Bref, LM est facile à casser ! Ce format n'est plus utilisé
dans les bases de comptes des Windows récent, à partir de Windows 2008, même si
les empreintes LM peuvent toujours s'y retrouver en mémoire.
• NTLM est un format plus récent. Même si peu d'utilisateurs vont jusque là, les mots
de passe peuvent aller jusqu'à 255 caractères Unicode. L'algorithme sur lequel repose
le calcul de l'empreinte NTLM est MD4 et il est plus robuste.
Dans le cas de LM, comme NTLM, il n'y a pas de « graine » (salt) dans le calcul de
l'empreinte. En comparaison, sous Linux, quelques caractères sont choisis aléatoirement et
ajoutés au mot de passe avant d'en calculer l'empreinte. Il en résulte qu'un même mot de
passe donnera des empreintes différentes. Le fait que ce ne soit pas le cas sous Windows
permet aux attaquants de créer des tables de pré-calcul, appelées aussi pour certaines des
Rainbow Tables. Lorsqu'il récupère une empreinte de mot de passe, l'attaquant n'aura pas
besoin de la casser par brute-force, il n'aura plus qu'à rechercher la correspondance dans la
table de pré-calcul !
L'authentification à distance
4 méthodes d'authentification à distance existent sous
Windows : LM, NTLM, NTLM2 et NTLMv2. Tous les 4 fonctionnent par défi-réponse.
Faites bien attention, les noms « LM » et « NTLM » sont à la fois des empreintes de mots de
passe et des méthodes d'authentification à distance ! Cela porte à confusion, mais ce n'est
pas du tout la même chose…
1. Lorsque le client fait une demande de connexion au serveur, ce dernier lui envoie un
« défi », une chaîne de caractères générée aléatoirement.
2. Le client prend l'empreinte du mot de passe, y concatène le défi et calcule une
nouvelle empreinte. Le défi permet d'éviter le rejeu dans le cas où un attaquant
intercepte l'échange réseau. Dans le cas de l'authentification à distance LM, le client
prend l'empreinte de mot de passe LM. Dans le cas de l'authentification à distance
NTLM, NTLM2 ou NTLMv2, il prend l'empreinte de mot de passe NTLM. Dans le
cas de NTLM2 et NTLMv2, le client génère aussi un défi, ce qui renforce la protection
contre le rejeu et le Man-in-the-Middle, c'est à dire quand l'attaquant se place entre le
client et le serveur et intercepte ou modifie les échanges réseau.
3. L'empreinte du défi concaténé à l'empreinte du mot de passe donne une réponse que
le client transmet au serveur. Le serveur calcule de son côté la même chose, c'est à
dire l'empreinte du défi plus l'empreinte du mot de passe de l'utilisateur telle qu'il
l'a consignée dans sa base de compte. Il compare le calcul côté client au calcul côté
serveur et s'ils correspondent, cela prouve que le client connaît l'empreinte du mot de
passe sans n'avoir jamais transmis le mot de passe en clair !
Le calcul de l'empreinte du défi plus de l'empreinte de mot de passe repose sur DES à la fois pour
LM, NTLM et NTLM2. DES n'est pas très robuste. Dans le cas de NTLMv2, un algorithme plus
robuste est utilisé, HMAC-MD5. Vous verrez d'ailleurs dans la partie 4 comment renforcer la
sécurité des systèmes pour qu'ils n'autorisent que NTLMv2.
En résumé
• Deux méthodes d'empreinte de mots de passe existent, LM et NTLM. Vous devez
éviter le stockage d'empreintes LM.
• La méthode d'authentificationà distance par défi-réponse permet au client de
prouver qu'il dispose de l'empreinte de mot de passe sans jamais envoyer le mot de
passe en clair.
• NTLMv2 est la méthode la plus robuste d'authentification à distance.
• #
• Quiz : Partie 3
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Utilisez maintenant le logiciel Mimikatz pour traiter l'image mémoire et faire ressortir les
empreintes de mot de passe. Depuis une ligne de commande Windows :
C:\Users\Administrator\Desktop\mimikatz_trunk\x64>mimikatz.exe
Notez que vous auriez pu utiliser directement Mimikatz sur le système cible, sans passer par
l'étape de dump de la mémoire du processus LSASS. Toutefois, cela fait en général tilter
les antivirus. A l'inverse, faire un dump mémoire n'est en général pas identifié, d'autant que
vous le faites ici avec un outil signé par Microsoft, comme le ferait un développeur pour
débugger son programme !
Jouez à rejouer
Une fois que vous avez collecté une empreinte mémoire, il ne vous reste plus qu'à la
réutiliser pour vous connecter à distance. De nombreux outils de test d'intrusion permettent
de faire du Pass The Hash, par exemple Mimikatz sous Windows que nous venons juste
d'utiliser ou sous Linux, Metasploit ou pth-winexe.
• #
• Quiz : Partie 3
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Ne laissez pas vos empreintes n'importe où !
Pour se protéger du Pass The Hash, la première solution n'est pas de mettre en œuvre des dispositifs
techniques compliquées ! Il faut d'abord éviter de laissez ses empreintes n'importe où, tout
particulièrement pour les comptes privilégiés.
Les version récentes de Windows interdisent la connexion réseau avec l'administrateur local.
Pour les versions plus anciennes, vous devez l'interdire explicitement par GPO ou politique
locale, à la fois pour les connexions réseau et pour l'accès avec le bureau à distance.
L'empreinte de mot de passe de ces identités ne se retrouve pas en mémoire. Par contre, si
un compte de service du domaine est utilisé pour lancer un service Windows ou un vieux
progiciel, l'empreinte du mot de passe se retrouvera immanquablement en mémoire et pourra
être récupéré par un attaquant.
Vous devrez alors imposer aux éditeurs de respecter les bonnes pratiques et utiliser l'identité
adéquate prévue par Microsoft.
N'utilisez pas de compte administrateur de domaine
L'utilisation d'un compte administrateur de domaine doit être exceptionnelle. C'est le cas par exemple
lorsque vous devez faire une extension du schéma Active Directory, par exemple à l'installation d'une
nouvelle version d'Exchange. Mais trop souvent, vous pourriez être tenté de vous connecté en tant
qu'administrateur de domaine par facilité. C'est bien sûr à éviter ! Vous avez vu pourquoi, vous
risqueriez d'exposer l'empreinte du mot de passe là où vous vous connectez.
Alors comment faire au quotidien pour administrer le système d'information sans être
administrateur de domaine ?
C'est simple :
• Pour créer ou gérer des comptes, définissez des utilisateurs dans le groupe
« opérateurs de comptes »,
• Pour administrer des ressources, utiliser des comptes qui ne sont pas administrateur
des contrôleurs de domaine, mais juste dans le groupe administrateur local des
ressources (postes de travail ou serveurs) administrées.
Bien sûr, les compte d'administrateur de domaine ne doivent jamais ouvrir de session sur des
systèmes de moindre confiance.
Ces mesures vont de paire avec un cloisonnement réseau spécifique des postes des
administrateurs, comme nous l'avons vu dans la partie 2.
En résumé
• Soyez organisé et consciencieux dans la gestion de vos comptes d'administration.
• Réduisez à néant l'utilisation des comptes d'administration locale.
• Assurez vous que les services Windows ne fonctionnent pas avec des comptes du
domaine, mais avec les identités NetworkService,
LocalService et LocalSystem prévues par Microsoft.
• Réduisez drastiquement l'usage de comptes administrateur de domaine et privilégiez
des opérateurs de comptes ou de ressources.
• #
• Quiz : Partie 3
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Utilisez les fonctions de sécurité pour protéger vos comptes
privilégiés
Vous pouvez utiliser quelques fonctions récentes d'Active Directory pour améliorer la protection des
comptes privilégiés et limiter le risque que l'empreinte de leur mot de passe ne se retrouve n'importe
où !
Pour activer Credential Guard, allez simplement dans la politique du système, dans Computer
configuration > Administrative Templates > System > Device Guard. Activez la sécurité basée sur la
virtualisation. Notez bien que cette configuration n'existe que sous Windows 10 ou 2016.
• #
• Quiz : Partie 3
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Partie 3
Compétences évaluées
• Question 1
Casser une empreinte LM pour un mot de passe de 13 caractères prend un temps infini.
L'utilisateur peut prouver qu'il connaît le mot de passe sans le transmettre au serveur.
o
Avec un défi-réponse, le mot de passe ne peut jamais être connu par le serveur.
Si un attaquant intercepte l'échange réseau lors d'une authentification, il ne peut pas rejouer
l'authentification.
• Question 3
Le Pass The Hash est un mode de chiffrement avec un nombre élevé de passes, ce qui permet
une meilleure protection de la donnée.
Le Pass The Hash est une méthode d'attaque visant les systèmes Windows permettant de
s'authentifier à distance sans connaître le mot de passe en clair, mais seulement son empreinte.
Le Pass The Hash est une méthode collaborative d'attaque où un premier attaquant passe une
hache à son partenaire afin qu'il découpe une empreinte de mot de passe LM en deux.
• Question 4
Nul part, l'empreinte du mot de passe n'est jamais stockée en mémoire vive
• Question 5
o
L'authentification à distance par Pass The Hash ne peut s'initier que depuis un système sous
Windows.
Mimikatz permet de récupérer l'empreinte de mot de passe, mais ne permet pas de faire de
Pass The Hash.
Quel que soit l'outil utilisé, l'attaque par Pass The Hash ne nécessite pas un temps de calcul
long pour casser le mot de passe.
• Question 6
Quelle identité doit être utilisée pour faire fonctionner un service Windows ?
On peut utiliser soit NetworkService, soit LocalService, mais éviter LocalSystem, car ce
dernier laisse l'empreinte de son mot de passe en mémoire.
• Question 7
L'utilisation d'un compte administrateur du domaine doit être cantonnée à des tâches
exceptionnelle et sur des serveurs spécifiques.
Que ce soit pour des postes de travail ou des serveurs, les groupes d'administrateurs peuvent
être dans le groupe local administrateurs des ressources administrées, sans être administrateur
du domaine.
• Question 8
Protected users
Stratégies d'authentifications
Credential Guard
• Question 9
Quel que soit le niveau fonctionnel du domaine Active Directory, le niveau de sécurité est le
même.
Avec Windows 2012R2, la fonction de Protected Users permet de limiter le risque de vol de
données d'authentification.
• Quiz : Partie 3
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Partie 4 - Sécurisez des systèmes et applications
Pour la plupart des systèmes clients ou serveurs, vous pouvez ne laisser que :
• Partage de fichiers et imprimantes : cette option ne vous sera utile que sur les
serveurs de fichiers ou d'impression ;
• Planificateur de paquets QoS : cela n'est utile que sur les serveurs sur lesquels une
priorisation du trafic est implémentée ;
• Les protocoles de découverte LLDP et topologie de la couche de liaison : ces
fonctions dévoilent inutilement les propriétés du système et augmentent sa surface
d'exposition.
Configuration de l'interface réseau
Vous aurez accès à de nombreuses options concernant les limitations d'accès par le réseau,
d'ouverture de session, la sécurité des protocoles réseau, etc.
Un antivirus ne peut vous protéger que des logiciels malveillants connus. A l'inverse, les
politiques de restrictions logicielles permettent de n'autoriser que ce qui
est nécessaire et interdire tout le reste, y compris des logiciels malveillants qui ne sont pas
encore connus.
Sous Windows, vous pouvez le mettre en œuvre soit avec la fonction AppLocker, soit avec
les SRP (Software Restriction Policy). AppLocker offre une meilleure protection, mais en fonction
des versions de Windows, cette fonction n'est disponible que pour les licences Enterprise ou Ultimate.
Les SRP sont donc plus génériques.
Pour éditer les SRP, ouvrez gpedit.msc. Allez dans Ordinateur > Paramètres Windows >
Paramètres de sécurité > Stratégie de restriction logicielle. Allez dans le menu Action et
choisissez Nouvelle stratégie de restriction logicielle.
Tout d'abord, allez dans Niveaux de sécurité et configurez « Non autorisé » comme étant
l'action par défaut :
Configuration du blocage par défaut
Par défaut, les programmes sont autorisés à être lancés dans les répertoires Windows et
Program Files. En fonction de la configuration des postes, il est possible d'ajouter des
répertoires, mais il faut que l'utilisateur courant n'ait pas de droit d'écriture dans les
répertoires sélectionnés. Dans le cas contraire, il pourrait y déposer volontairement ou non
un logiciel malveillant qui s'y exécutera !
La restriction par empreinte ou vérification de signature va plus loin, mais impose des
contraintes de gestion plus importantes. En effet, cela nécessite de mettre à jour la liste des
programme autorisés au fur et à mesure de leurs mises à jour fonctionnelles ou de sécurité.
Reposer sur une liste de répertoires paraît donc un bon compromis !
Ajouter une règle basée sur une empreinte ou une signature peut toutefois être judicieux pour
autoriser un programmer à un endroit où l'utilisateur a des droits d'écritures, par exemple
une clé USB.
Et voilà, avec cette simple configuration, un programme malveillant déposé dans un répertoire
temporaire ou le profil utilisateur ne pourra plus s'exécuter ! Et contrairement aux antivirus,
cela ne nécessite aucune mise à jour régulière.
Pour cela, continuez dans gpedit.msc. Activez les deux options suivantes :
• Configuration Ordinateur > Modèle d'administration > Système > Accès au stockage
amovible > Toutes les classes de stockage amovible : refuser tous les accès ;
• Configuration Ordinateur > Modèle d'administration > Système > Installation de
périphérique > Restriction d'installation de périphériques > Empêcher l'installation
de périphériques amovibles.
• #
• Quiz : Partie 4
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Sécurisez les systèmes Linux
Après avoir vu comment sécuriser les systèmes Windows, nous allons voir les mêmes principes
pour Linux. De la même façon, vous apprendrez comment supprimer les services réseau inutiles,
mettre en place une restriction logicielle et limiter l'accès des médias amovibles.
Pour les désactiver, vous pouvez soit désinstaller le service que vous ne voulez pas, soit le
désactiver. Par exemple, pour désinstaller le service Avahi sur Debian ou Ubuntu :
OC:~# apt-get remove avahi-daemon
Ou pour le désactiver :
OC:~# systemctl disable avahi-daemon.socket
Removed symlink /etc/systemd/system/sockets.target.wants/avahi-
daemon.socket.
Au départ, il est préférable de vous limiter au mode complain, jusqu'à ce que la configuration
des profils soit bien éprouvée.
OC:~# aa-complain /etc/apparmor.d/*
Profile for /etc/apparmor.d/apache2.d not found, skipping
Setting /etc/apparmor.d/bin.ping to complain mode.
Setting /etc/apparmor.d/lightdm-guest-session to complain mode.
Setting /etc/apparmor.d/sbin.dhclient to complain mode.
Setting /etc/apparmor.d/sbin.klogd to complain mode.
Setting /etc/apparmor.d/sbin.syslogd to complain mode.
Setting /etc/apparmor.d/sbin.syslog-ng to complain mode.
Setting /etc/apparmor.d/usr.bin.chromium-browser to complain mode.
Setting /etc/apparmor.d/usr.bin.evince to complain mode.
Setting /etc/apparmor.d/usr.sbin.identd to complain mode.
Setting /etc/apparmor.d/usr.sbin.mdnsd to complain mode.
Setting /etc/apparmor.d/usr.sbin.nmbd to complain mode.
Setting /etc/apparmor.d/usr.sbin.nscd to complain mode.
Setting /etc/apparmor.d/usr.sbin.rsyslogd to complain mode.
Setting /etc/apparmor.d/usr.sbin.smbd to complain mode.
Setting /etc/apparmor.d/usr.sbin.tcpdump to complain mode.
Les fichiers de profil sont de simple fichiers texte qui listent les capabilities, fichiers de
programme, librairies, fichiers de configuration, etc, auxquels peut accéder le programme. Un
simple exemple pour ping sous Ubuntu :
OC:~# cat /etc/apparmor.d/bin.ping
[…]
#include <tunables/global>
/{usr/,}bin/ping flags=(complain) {
#include <abstractions/base>
#include <abstractions/consoles>
#include <abstractions/nameservice>
capability net_raw,
capability setuid,
network inet raw,
/bin/ping mixr,
/etc/modules.conf r,
#include <local/bin.ping>
}
Vous pouvez identifier quepinga le droit de disposer de la capabilitynet_rawpour injecter des
paquets directement forgés, lire et exécuter le programme stocké dans /bin/ping et lire sans
plus de droit son fichier de configuration.
Vous pouvez générer rapidement un profil avec la commande aa-autodep , suivi du nom de
l'exécutable à profiler.
OC:~# aa-autodep /usr/bin/vim
Writing updated profile for /usr/bin/vim.basic.
Restreignez l'usage des médias amovibles
Vous avez vu comment limiter la surface d'attaque en désactivant les services réseau inutiles. En
complément, AppArmor permet de limiter ce que pourrait faire un attaquant qui a accès localement au
système ou qui a exploité une vulnérabilité dans un des logiciels.
Pour aller plus loin dans les scénarios d'attaque avec un accès physique, vous
pouvez limiter quels médias amovibles ont le droit de se brancher sur le système. Le filtre peut se
faire dans la configuration Udev, soit par identifiant de la marque du média amovible, soit de son
modèle. Udev permet par ailleurs d'aller plus loin en restreignant d'autres types de périphériques USB.
Vous verrez ci-dessous un exemple de fichier de configuration qui restreint l'usage des médias
amovibles à une seule marque (d'identifiant 1234) et un seul modèle (d'identifiant 2121).
• #
• Quiz : Partie 4
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Améliorez l'authentification
Pour commencer, il est assez simple d'améliorer l'authentification dans SSH. Nombreux
sont les utilisateurs qui se plaignent d'avoir trop de mots de passe à retenir. Une bonne
solution pour éviter cela est de les authentifier par clé et non par mot de passe. Pour cela, il
faut juste désactiver l'authentification par mot de passe et préciser dans la configuration sur
serveur SSH où sont définies les clés publiques des utilisateurs dans le fichier
/etc/ssh/sshd_config .
PasswordAuthentication no
PermitRootLogin no
PermitEmptyPasswords no
AuthorizedKeysFile /etc/ssh/keys/%u
L'utilisateur pourra récupérer sa clé publique (par défaut ~/.ssh/id_dsa.pub ) et la
communiquer à l'administrateur pour qu'il la place dans le répertoire /etc/ssh/keys/ .
Définissez les redirections que vous acceptez
En dehors de l'exécution de commande ou l'échange de fichiers, SSH peut être utilisé
pour rediriger des connexions réseau en les encapsulant dans un tunnel SSH, idem pour des
connexions graphiques X11. Il est également possible d'utiliser un agent qui va relayer la
demande d'authentification. En fonction de votre besoin, vous pouvez ou non les accepter :
X11Forwarding no
PermitTunnel no
GatewayPorts no
AllowTcpForwarding no
AllowAgentForwarding no
Apportez de la flexibilité et de la finesse
Parfois, vous ne pourrez pas purement et simplement désactiver une fonction telle que celles
mentionnées précédemment. En effet, même si la plupart des utilisateurs n'en ont ni le besoin
ni le droit, il est possible que vous ayez juste quelques utilisateurs faisant exception.
Pour ne pas adopter une configuration laxiste globalement juste à cause de quelques
exceptions, vous pouvez utiliser dans la configuration du serveur SSH la directive Match, qui
permettra d'affiner les règles pour un utilisateur, un groupe ou une provenance de
connexion.
Dans l'exemple ci-dessous, l'utilisateur toto n'aura pas le droit de faire de forwarding TCP,
sauf quand il se connecte depuis le poste ayant l'adresse 10.1.2.3.
Match User toto Address 10.1.2.3
AllowTcpForwarding yes
Emprisonnez le SFTP
Si vous utilisez SSH pour l'échange de fichier avec le protocole SFTP, vous voudrez
sûrement que l'utilisateur qui viendra récupérer des fichiers ne puisse pas accéder à l'ensemble
de l'arborescence du système. Pour cela, SSH propose un mécanisme de Chroot pour SFTP.
En pratique, l'utilisateur sera « dans une cage », il verra le répertoire autorisé comme si ce
dernier était la racine du système. Dans l'exemple ci-dessous de configuration de
/etc/Ssh/sshd_config , tous les utilisateurs qui sont dans le groupe sftponly n'auront
accès qu'à l'échange de fichiers dans /data/sftp/ et ne pourront ni passer des commandes
sur le système, ni relayer des connexions TCP ou X11.
Subsystem sftp /usr/lib/ssh/sftp-server
Match Group sftponly
ChrootDirectory /data/sftp/
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
PasswordAuthentication no
En complément de cette configuration, il faudra que le répertoire /data/ftp appartienne à
root et au groupe sftponly (avec les droits d'écriture pour ce groupe si cela est souhaité).
En résumé
• Chaque service réseau doit être configuré pour adapter le niveau de sécurité,
les modalités d'authentification et les fonctions accessibles aux utilisateurs.
• L'authentification des utilisateurs par clé est plus robuste et permet de s'affranchir
des contraintes de gestion des mots de passe.
• Certaines fonctions avancées comme la mise en cage vous offre une restriction
forte des accès des utilisateurs.
• #
• Quiz : Partie 4
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.
Partie 4
Compétences évaluées
• Question 1
Quelle fonction est indispensable sous Windows pour le fonctionnement d'une interface
réseau ?
Le protocole IPv4
Pour les restrictions logicielles sous Windows, peut-on dire que les réponses suivantes
sont vraies ?
Les restrictions logicielles avec AppLocker ou SRP permettent de se protéger contre des
logiciels malveillants encore inconnus.
Pour se protéger des logiciels malveillants, il est préférable d'avoir une configuration qui
interdit les logiciels malveillants (liste noire) plutôt qu'une configuration qui n'autorise que les
logiciels utiles (liste blanche).
Les restrictions logicielles ne doivent pas autoriser l'exécution dans des répertoires où les
utilisateurs ont des droits d'écriture.
Pour l'exécution d'un programme depuis une clé USB, il est préférable de faire une règle qui
autorise le répertoire plutôt qu'une règle basée sur une empreinte ou une signature numérique.
• Question 5
netstat
ipconfig
lsof -i
wireshark
• Question 6
Utiliser un mécanisme qui filtre les appels systèmes, comme AppArmor ou SELinux.
Configurer AppLocker.
• Question 7
Pour vous protéger des attaques par médias amovibles, vous pouvez :
o
Sous Windows, autoriser ou non dans les politiques locales l'usage de stockage sur médias
amovibles ou l'installation de nouveaux périphériques
Remplacer des échanges par médias amovibles par des échanges sécurisés par le réseau
Interdire purement et simplement à vos utilisateurs de brancher une clé USB et leur proposer
de saisir au clavier les informations qu'ils veulent importer.
• Question 8
Pour assurer une traçabilité, interdire la connexion directement en tant que root.
Plutôt que d'utiliser un mot de passe, authentifier les utilisateurs avec une clé SSH.
o
• Quiz : Partie 4
•
•
•
Le professeur
Victor Vuillard
Chief Security Officer et Chief Technical Officer dans une entreprise de conception de
drones.