Protection brisée : blocage basé sur l’adresse IP

Broken brute-force protection, IP block

Ce laboratoire présente une faille logique dans son mécanisme de protection contre les attaques par force brute. L’objectif est de forcer le mot de passe de la victime, puis de se connecter à son compte.

  • Identifiants fournis : wiener / peter

  • Nom d’utilisateur de la victime : carlos

Observation du mécanisme de blocage

En testant plusieurs combinaisons pour l’utilisateur carlos, on constate qu’au bout de trois tentatives incorrectes, l’application affiche :

You have made too many incorrect login attempts. Please try again in 1 minute(s).

Le site applique donc un blocage basé sur l’adresse IP après plusieurs échecs consécutifs.

Contournement du blocage IP

Pour contourner cette protection, on exploite une faille logique :

  • On envoie deux tentatives invalides pour carlos.

  • À la troisième tentative, on envoie une authentification valide, mais avec les identifiants wiener : peter.

  • Comme cette connexion réussit, le système réinitialise le compteur d’échecs pour cette adresse IP.

Script Python utilisé

Le script suivant automatise l’attaque en testant deux mots de passe pour carlos, puis en réinitialisant le compteur via une connexion réussie en tant que wiener :

Le mot de passe correct pour carlos découvert via l’attaque est :

michelle

Mis à jour