Session Fixation — Fixation de session
★★★★★
Principe
L'attaquant impose un identifiant de session connu de lui à la victime (via URL, cookie injecté ou paramètre) avant qu'elle ne s'authentifie. Si l'application ne régénère pas l'ID de session au moment du login, l'attaquant réutilise ensuite ce même ID désormais authentifié.
Déroulé de l'attaque
1. L attaquant obtient un SESSIONID valide non authentifié
GET /login -> Set-Cookie: PHPSESSID=ATTACKER_KNOWN
2. Il force la victime à l utiliser :
http://target/login?PHPSESSID=ATTACKER_KNOWN
3. La victime se connecte avec cet ID
4. L attaquant rejoue PHPSESSID=ATTACKER_KNOWN -> session authentifiée Défenses
// Régénérer l ID de session au moment du login (clé)
session_regenerate_id(true); // PHP
request.session.regenerate() // Express / autres
// + cookies HttpOnly/Secure/SameSite, ne jamais accepter
// un ID de session via paramètre d URL