Pentesting

JWT : 7 Vulnérabilités Critiques en 2024 et Comment les Éviter

5 novembre 2024
15 min de lecture
Samuel Tognon

Analyse des vulnérabilités JWT critiques : algorithme None, secrets faibles, confusion de clés. Contre-mesures techniques et bonnes pratiques.

JWT : Popularité et vulnérabilités

JSON Web Tokens sont utilisés dans 78% des applications web modernes, mais 60% d'entre elles présentent au moins une vulnérabilité critique liée à leur implémentation. Cette analyse détaille les 7 failles les plus exploitées en 2024.

1. Algorithme "None" - La faille critique

L'attaque par algorithme "none" permet de contourner complètement la vérification de signature. Cette vulnérabilité exploite une faiblesse dans l'implémentation des bibliothèques JWT qui acceptent aveuglément l'algorithme spécifié dans le header.

Exploitation pratique

// JWT original signé
{
  "alg": "HS256",
  "typ": "JWT"
}
{
  "sub": "user123",
  "role": "user",
  "exp": 1699123456
}

// JWT modifié par l'attaquant
{
  "alg": "none",
  "typ": "JWT"
}
{
  "sub": "user123",
  "role": "admin",    // Privilèges élevés
  "exp": 1999123456   // Expiration prolongée
}
// Pas de signature requise !

Recommandations finales

La sécurité JWT repose sur une implémentation rigoureuse et une validation systématique. Chaque vulnérabilité présentée peut compromettre l'intégrité de votre système d'authentification. Adoptez une approche défensive avec validation stricte, logging sécurisé et tests réguliers.