Détecter les attaques par force brute
Un samedi, dans un café, après que mon hébergeur OVH m'a informé qu'une attaque DDoS visait mon serveur virtuel, j'ai réfléchi à la façon dont on pourrait détecter une attaque par force brute de nature assez voisine.
- Comment se comporte un utilisateur normal :
- En surveillant des schémas comme les heures de connexion, les adresses IP et les lieux géographiques, on peut repérer des anomalies indiquant une attaque par force brute.
- Surveillance des IP :
- Surveillez le nombre de tentatives de connexion depuis une même adresse IP. Un volume anormalement élevé peut indiquer une attaque par force brute.
- Analyse des schémas temporels :
- Analysez les schémas temporels des tentatives de connexion pour repérer des pics soudains à des heures inhabituelles. Si un utilisateur met normalement 3 à 8 secondes pour se connecter (saisie du nom d'utilisateur et du mot de passe) et que, soudain, des connexions sont tentées à plusieurs reprises en moins d'une seconde, vous pouvez en conclure que quelque chose cloche.
- CAPTCHA ou reCAPTCHA :
- Mettez en place des mécanismes CAPTCHA ou reCAPTCHA pour empêcher les attaques automatisées.
- Liste noire d'IP :
- Mettez en place une liste noire d'IP et mettez-la à jour selon les activités suspectes. Spamhaus est une bonne adresse pour obtenir une liste constamment actualisée.
- Analyse du user-agent :
- Surveillez les informations de user-agent dans les requêtes. Un schéma de user-agents suspect peut indiquer une attaque automatisée. Gardez toutefois à l'esprit qu'il est facile d'usurper le user-agent.
- Filtrage GeoIP :
- Vérifiez l'origine géographique des tentatives de connexion. Des tentatives soudaines depuis des endroits inhabituels peuvent indiquer une attaque.
- Politiques de mots de passe :
- Surveillez le respect des politiques de mots de passe. Un grand nombre de tentatives avec des mots de passe manifestement faibles peut indiquer une attaque par force brute.
- Surveillance des fichiers de log :
- Analysez les fichiers de log en temps réel pour repérer des schémas suspects. On pourrait ainsi détecter des schémas que les outils de surveillance classiques risquent de manquer.