Grâce à ces 7 mesures, vous laissez les attaques de Brute Force courir dans le vide

Tobias Schüring Dernière mise à jour : 20.10.2020
8 Min.
Avec au moins 4 milliards d'attaques individuelles cette année, les attaques de Brute Force sont probablement la plus grande menace pour les sites WordPress .
Dernière mise à jour : 20.10.2020

Avec plusieurs milliards d'attaques individuelles par an, les attaques de Brute Force sont probablement la plus grande menace pour les sites WordPress . Heureusement, ce type d'attaque est également très maladroit et facile à déjouer. Nous allons vous montrer quatre mesures simples et rapides contre les attaques des pirates informatiques. Et aussi trois mécanismes de protection plus complexes.

Rien qu'en avril 2017, le fournisseur de sécurité Wordfence a compté plus d'un milliard d'attaques Brute Force sur des sites WordPress dans le monde entier. Et ce n'est qu'une approximation - le nombre de cas non signalés est nettement plus élevé. Cela signifie que les attaques, qui tentent automatiquement de deviner les mots de passe et les noms d'utilisateur, représentent une menace majeure pour les sites WordPress dans le monde entier. Mais pas seulement. Plus de 37,5 % des 10 millions de sites web les plus importants sont actuellement exploités sur WordPress . Et cela signifie que la question des mécanismes de protection efficaces pour WordPress concerne également l'Internet dans son ensemble.

Si vous voulez savoir exactement comment fonctionnent les attaques de Brute Force et à quel point elles sont dangereuses, consultez notre article de fond sur les attaques de Brute Force .

Malgré leur grand nombre, il y a une bonne nouvelle : il existe des mesures de sécurité judicieuses contre les attaques de Brute Force que vous pouvez mettre en œuvre vous-même sans trop d'efforts et, surtout, sans connaissance de la programmation. Et il y a des mesures qui exigent au moins une connaissance de base du fichier .htaccess.

Ces sept mesures font l'objet du débat d'aujourd'hui :

  1. Mots de passe forts (très important !)
  2. N'utilisez pas "admin" comme nom d'utilisateur
  3. Limiter le nombre de connexions non valables
  4. Authentification à deux facteurs
  5. Connexion à plusieurs niveaux
  6. Liste noire
  7. Cacher la zone de connexion (est controversé)

1. utiliser un mot de passe fort

Un mot de passe fort est extrêmement important pour se protéger contre les attaques de Brute Force . Les bots et les réseaux de zombies utilisent d'énormes bases de données de mots de passe pour leurs "jeux de devinettes". Ceux-ci sont testés sans ménagement. Plus votre mot de passe est inhabituel et difficile, plus il y a de chances qu'il n'y apparaisse pas.

Plus votre mot de passe est long et difficile, plus il faudra de temps aux robots pour le déchiffrer s'ils essaient également de le deviner sans liste.

Votre mot de passe doit donc contenir différentes combinaisons de caractères de ...

  • 10 numéros différents (de 0 à 9)
  • 52 lettres différentes (A à Z et a à z)
  • 32 caractères spéciaux différents ...

... et comporter au moins 8 caractères.

Le gestionnaire de mots de passe Passwort-Depot fournit quelques exemples de calcul. On suppose ici qu'un seul ordinateur puissant peut générer deux milliards de mots de passe par seconde. Concrètement, cela signifie :

  • Un mot de passe composé de 5 caractères (3 lettres minuscules, 2 chiffres) comporte 60 466 176 combinaisons possibles et peut donc être déchiffré en 0,03 seconde.
  • Un mot de passe de 8 caractères (4 minuscules, 2 caractères spéciaux, 2 chiffres) comporte déjà 457 163 239 653 376 combinaisons possibles. Ici, le calculateur a besoin d'environ deux jours et demi.
  • Et un mot de passe composé de 12 caractères (3 majuscules, 4 minuscules, 3 caractères spéciaux, 2 chiffres) présente un nombre stupéfiant de 475 920 314 814 253 376 475 136 combinaisons possibles. Il faut 7,5 millions d'années à un seul ordinateur pour craquer ce mot de passe.

Le codexWordPress recommande le Plugin Force Strong Passwords pour la création de ces mots de passe. Cela oblige les utilisateurs à choisir des mots de passe suffisamment complexes. Ainsi, ce Plugin ne rend pas les sites directement plus sûrs, mais éduque les utilisateurs à utiliser des mots de passe forts. Et surtout si vous travaillez pour le compte d'un client, cette petite mesure peut être très pratique.

Vous n'avez pas besoin de vous souvenir des mots de passe !

Les gestionnaires de mots de passe vous aident à créer et à gérer des mots de passe sécurisés. Il vous suffit de vous souvenir d'un mot de passe maître (aussi complexe que possible, bien sûr). Le programme fait le reste pour vous. Les ordinateurs Apple ont déjà une application appelée "Keychain Manager" installée. Les programmes de gestion des mots de passe basés sur le cloud, tels que 1Password, LastPass ou KeyPass, fonctionnent de la même manière.

Vous n'avez donc pas à vous souvenir de tous vos mots de passe. Surtout si vous gérez plusieurs sites et utilisez divers services, une gestion professionnelle des mots de passe est une bénédiction.

2. n'utilisez pas le nom d'utilisateur "admin

Comme déjà mentionné : Brute Force les attaques sont essentiellement des tentatives de devinettes. Vous devez donc faire en sorte que les pirates informatiques aient le plus de mal possible à deviner votre nom d'utilisateur. Par conséquent, n'utilisez pas le nom d'utilisateur "admin" prédéfini par WordPress - et donc n'utilisez pas celui que le système vous a prédéfini. Ce nom d'utilisateur est bien sûr aussi le nom par défaut pour tous les autres utilisateurs de WordPress .

3. verrouiller la page de connexion après un trop grand nombre de tentatives infructueuses

Brute Force Les attaques testent des milliers et des milliers de combinaisons de noms d'utilisateur et de mots de passe. Inversement, cela signifie qu'ils génèrent des milliers et des milliers de tentatives de connexion pour limiter.

Votre serveur remarquera qu'il se passe quelque chose. Avec un Plugin approprié, vous pouvez définir que l'accès est bloqué après un certain nombre de tentatives infructueuses, de sorte que les pirates doivent mettre leur attaque en attente. Vous pouvez mettre en œuvre cette protection avec un Plugin comme WP Limit Login Attempts ou Limit Login Attempts Reloaded.

Sur RAIDBOXES , chaque installation de WordPress a la fonction de limitation des tentatives de connexion intégrée par défaut. Si une personne ou un robot essaie de se connecter à votre site trop souvent avec des données d'accès erronées, nous bloquons initialement l'IP en question pendant 20 minutes. Si les tentatives de connexion avec de fausses données se poursuivent, l'adresse IP sera même bloquée pendant 24 heures. Bien entendu, vous pouvez également définir vous-même le nombre de tentatives et la période de blocage.

Les tentatives de connexion limitées et autres ont une date d'expiration

Cependant, il y a une chose importante à comprendre à propos de ce Plugins : la limitation des tentatives de connexion d'une adresse IP présente une grave lacune. Elle ne peut pas anticiper le changement d'une adresse IP. Cela signifie que les attaques de botnets, par exemple, ne peuvent être défendues que de manière médiocre, voire pas du tout. Avec la nouvelle génération d'adresses IP (adresses IPv6), un seul attaquant peut également changer son adresse IP en quelques fractions de seconde. Ce fait augmente le danger que représentent les attaques de botnets.

Et : un grand nombre des attaques de Brute Force ne sont pas susceptibles d'être de simples devinettes. Comme le montre le calcul dans la section sur les mots de passe sécurisés, même un réseau de zombies comptant un million de dispositifs ne peut pas deviner les mots de passe sécurisés. C'est pourquoi de nombreux hackers travaillent avec des listes de mots de passe. Cela réduit le nombre de tentatives de connexion aux combinaisons possibles de la bibliothèque de mots de passe respective.

Bien que la limitation des tentatives de connexion par IP soittoujours valable, l'importance de ce mécanisme de sécurité va rapidement diminuer à l'avenir. Le seul mécanisme de protection véritablement sûr contre les attaques avec des IP changeantes est l'authentification à deux facteurs.

4. authentification à deux facteurs

L'idée derrière le concept d'authentification à deux facteurs est d'exiger une seconde confirmation en plus du mot de passe lors de la connexion. Il s'agit généralement d'un autre code alphanumérique. La particularité de ce système est qu'il est transmis en dehors du processus de connexion proprement dit, par exemple via un générateur de code ou un téléphone portable. Et seul le propriétaire de cet appareil est en mesure de se connecter.

Avec l'application Google Authenticator et un Plugin correspondant, l'authentification étendue peut être mise en œuvre relativement facilement pour WordPress . On utilise fréquemment, par exemple, le Plugins Google Authenticator de Hendrik Schack ou le Google Authenticator de miniOrange.

Pour installer la protection de sécurité supplémentaire, téléchargez l'application Google sur votre smartphone et installez le Plugin dans WordPress . Un code QR est maintenant généré ici, que vous scannez avec l'application. Vous pouvez également créer le compte manuellement. Votre compte d'utilisateur WordPress et l'application sont maintenant liés sur votre téléphone portable.

L'application génère désormais un nouveau code de sécurité toutes les 30 secondes. Chaque utilisateur pour lequel l'authentification à deux facteurs est activée verra désormais la ligne "Code d'authentification Google" à côté de "Nom d'utilisateur" et "Mot de passe" dans la zone de connexion. Pour se connecter, il a donc besoin du smartphone sur lequel les codes sont générés. Les grands plugins de sécurité tels que Wordfence offrent un mécanisme similaire dans certains cas.

Le processus de double authentification peut sembler complexe, mais d'un point de vue sécuritaire, il constitue une très bonne protection contre les attaques de Brute Force . Surtout compte tenu du changement susmentionné d'adresses IPv4 à IPv6.

Des mots de passe forts, le changement du nom d'utilisateur, Plugins comme les tentatives de connexion limitées et l'authentification à deux facteurs sont autant de mesures que vous pouvez mettre en œuvre facilement, rapidement et sans connaissances en programmation. Et surtout, une authentification supplémentaire et des mots de passe vraiment forts protègent aussi efficacement contre les attaques de Brute Force .

Mais si vous voulez, vous pouvez faire encore plus. Vous pouvez sécuriser votre zone d'administration WP avec un mot de passe supplémentaire, créer une liste noire ou une liste blanche, ou même cacher votre zone d'administration WP. Cependant, toutes ces mesures ne tendent pas à offrir plus de sécurité, mais doivent plutôt être comprises comme des options ou des alternatives.

5. protection supplémentaire par mot de passe

Si vous exécutez votre site WordPress sur un serveur Apache, vous avez la possibilité d'introduire une procédure de connexion à plusieurs niveaux sans Plugin . En effet, chaque installation de WordPress sur un serveur Apache contient un fichier dit "htaccess". Dans ce fichier, vous pouvez stocker un code pour une authentification HTTP supplémentaire afin d'ajouter une autre protection par mot de passe à la page de connexion. Le serveur exige un mot de passe pour permettre aux visiteurs d'accéder à l'écran de connexion.

# Protéger le wp-login
AuthUserFile ~/.htpasswd
 AuthName "Accès privé
 AuthType Basic
 nécessitent l'utilisateur mysecretuser

Avec cette commande, une demande de mot de passe est générée avant même que la zone wp-admin ne soit accessible. Ici, vous entrez un nom d'utilisateur et un mot de passe supplémentaires pour accéder à la zone de connexion. Toutefois, les données relatives à l'utilisateur supplémentaire doivent être définies dans le .htpasswd. Pour ce faire, le nom d'utilisateur et le mot de passe doivent être ajoutés au fichier sous forme cryptée. Le codexWordPress explique comment ce processus fonctionne fondamentalement.

6. liste noire et liste blanche

En parlant de .htaccess : Vous pouvez mettre en œuvre une autre protection puissante avec ce fichier. Quelques lignes de code permettent de s'assurer que seuls certains IP ont accès au tableau de bord WordPress ou à des répertoires individuels.

Pour ce faire, vous stockez un .htaccess supplémentaire avec le code suivant dans le répertoire approprié - de préférence wp-admin :

# Bloquer l'accès au wp-admin. 
 ordonner le refus, autoriser
 permettre à partir de x.x.x.x
 nier de tous

x.x.x.x doit bien sûr être remplacé par les IP qui doivent avoir accès à la page. L'exemple montre une liste blanche, c'est-à-dire une liste des IP qui sont autorisés à accéder à la page. Cela signifie que la page de connexion est bloquée pour tous les autres IP. Au fait, l'ordre des commandes - "autoriser" suivi de "refuser" - est extrêmement important, car elles sont exécutées dans l'ordre. Si le "déni de tous" vient en premier, vous serez également confrontés à des portes fermées.

Une liste noire mettrait en œuvre le mécanisme exactement inverse : Il déterminerait quels sont les IP qui ne sont pas autorisés à accéder à la page. Bien sûr, il existe aussi des solutions de plugin pour les deux. Par exemple, des plugins de sécurité bien connus, tels que All In One WP Security, Wordfence ou Sucuri, proposent chacun une fonction de liste noire ou de liste blanche. Toutefois, il convient de noter que ces trois Plugins peuvent bien sûr faire beaucoup plus que créer des listes noires, ou des listes blanches. Par conséquent, vous ne devez pas les installer exclusivement pour ces fonctions. Une alternative populaire serait Plugin Loginizer, qui compte actuellement plus de 500 000 installations actives.

7. cacher la zone de connexion

Brute Force Les attaques attaquent votre page de connexion. Un moyen très simple de prévenir ces attaques est d'empêcher les attaquants d'accéder à votre page de connexion en premier lieu. Pour cela, certains webmasters cachent le masque de connexion. La zone de connexion n'est alors accessible que via une URL secrète.

Cette mesure suit le principe (controversé) de la sécurité par l'obscurité et n'est pas une mesure de sécurité significative en soi. Nous, à RAIDBOXES , ne sommes pas de grands amis de ce principe. Si vous appliquez les mesures ci-dessus, vous avez déjà très bien sécurisé votre zone de connexion et vous n'avez pas besoin de la déplacer davantage. Toutefois, cette mesure peut contribuer à la perception de la sécurité, ce qui peut être particulièrement important pour la perception de vos clients.

Si vous voulez cacher votre zone d'administration, vous pouvez utiliser l'un des grands plugins de sécurité (qui offrent beaucoup plus de fonctionnalités). Vous pouvez également essayer l'un de ces sites populaires Plugins :

Comme nous l'avons dit : à notre avis, cacher le wp-admin n'est pas une mesure sensée - du moins pas pour protéger votre site des attaques de Brute Force . Si vous avez choisi un mot de passe fort et mis en place une procédure d'exclusion de la propriété intellectuelle ou une authentification à deux facteurs, vous avez déjà réduit de manière significative le risque d'une attaque réussie sur Brute Force .

Conclusion

Avec une part de marché actuelle de plus de 32 %, WordPress est de loin le plus grand CMS du monde. Il est peu probable que cela change à l'avenir. La probabilité de devenir la cible d'une attaque sur Brute Force est donc, purement mathématiquement, extrêmement élevée. Il faut en être conscient. Heureusement, vous pouvez aussi vous en protéger très facilement. Car quelques mesures, à savoir des mots de passe sécurisés et une authentification à deux facteurs, peuvent être mises en œuvre en quelques instants et complètement sans connaissance de la programmation.

Et même les mesures soi-disant plus difficiles, telles que la liste noire ou la liste blanche, une protection supplémentaire par mot de passe ou un mécanisme de blocage de la zone de connexion peuvent être mises en œuvre avec Plugins . Donc, si vous suivez simplement les trois ou quatre premiers points de ce post, vous êtes déjà bien protégé contre les attaques de Brute Force . Bien entendu, vous pouvez toujours en faire plus, c'est-à-dire créer une protection supplémentaire par mot de passe ou établir des listes noires ou blanches. Mais dans de tels cas, vous devez évaluer si les mécanismes de sécurité supplémentaires en valent vraiment la peine, notamment en ce qui concerne l'effort administratif.

En tant qu'administrateur système, Tobias veille sur notre infrastructure et trouve chaque vis pour optimiser les performances de nos serveurs. Grâce à ses efforts inlassables, on peut souvent le trouver la nuit sur le site Slack .

Articles connexes

Commentaires sur cet article

Laisse un commentaire

Ton adresse électronique ne sera pas publiée. Les champs obligatoires sont marqués d'un *.