Hachures Bruteforce
Vous pouvez brutaliser le hachage stocké dans la base de données.
WordPress utilise phpass pour le hachage. Par défaut, WordPress n'utilise pas Blowfish ou similaire, mais juste md5 avec un nombre d'itérations de 8192. Si vous voulez juste trouver des mots de passe vraiment mauvais, le bruteforcing est certainement faisable.
Mais je considérerais cela comme une violation assez importante de la confiance que les utilisateurs placent en vous, donc je ne recommanderais pas cette approche.
Analysez leurs mots de passe lors de la connexion
Vous pouvez ajouter un script qui intercepte toutes les demandes aux scripts de connexion WordPress, et enregistrer ou analyser les mots de passe, car ils sont en texte clair à ce stade.
Bien sûr, cela n'attrape les mots de passe faibles qu'une fois qu'un utilisateur se connecte. S'ils ont abandonné leur site ou sont plutôt inactifs, cela peut prendre un certain temps avant que vous découvriez qu'ils utilisent un mot de passe faible.
Je considérerais cela comme une violation encore plus importante que le renforcement brutal des hachages, et cela comporte également des problèmes de sécurité (si vous stockez les mots de passe en texte clair, ce serait évidemment un problème, mais même si ce n'est pas le cas, vous pouvez accidentellement stocker des informations de l'analyse qui peut aider un attaquant).
Mettre en œuvre une politique de mot de passe (et forcer les utilisateurs à changer leurs mots de passe)
Vous pouvez implémenter une politique de mot de passe. Lorsqu'un utilisateur soumet un nouveau mot de passe, vous vérifierez s'il est conforme à votre politique ou non (idéalement, cela se produirait côté serveur, pas côté client via JavaScript).
La rédaction d'une bonne politique de mot de passe est difficile, alors jetez un œil aux politiques existantes pour vous aider ici.
Bien sûr, les anciens mots de passe ne sont pas affectés par la politique, vous devez donc forcer les utilisateurs à modifier leurs anciens mots de passe pour se conformer à la politique
Limiter les dommages
L'application de mots de passe forts peut certainement être une bonne idée, mais idéalement, une instance WordPress piratée ne devrait pas vraiment vous affecter en tant que webmaster.
Vous devriez vouloir limiter les dégâts une fois qu'un attaquant a accédé à une installation WordPress. Idéalement, vous voudriez que seule une instance soit affectée, pas l'ensemble de votre serveur (vous pouvez donc vous inquiéter qu'un attaquant place du contenu indécent sur un site Web - tout comme un utilisateur valide pourrait le faire -, mais pas sur l'exécution de code ou d'autres programmes malveillants activité).
C'est un sujet assez large, mais certains points incluent DISALLOW_FILE_EDIT
:, l'utilisation limitée des plugins (car ils sont beaucoup moins sécurisés que WordPress lui-même), interdire JavaScript (par exemple avec les multisites, seuls les super-administrateurs ont le droit de publier JavaScript, pas admins), etc.
Les bonnes nouvelles sont que vous pouvez changer les mots de passe des utilisateurs, les mauvaises nouvelles sont que vous ne pouvez pas les voir.
Wordpress est si puissant que même dans la base de données, il stocke le mot de passe avec un cryptage à sens unique, ce n'est pas seulement un hachage md5 que vous pouvez convertir, ce ne sont même pas des données sérialisées, pour le mot de passe,
test123
vous obtiendrez quelque chose comme$P$BjW8o9Dm1vC5bwAcP1iAdNVm0lbvn
, même si vous modifiez le champ de mot de passe dans la base de données sans utiliser de cryptage, cela ne fonctionnerait pas.Comment changer le mot de passe
Je pense que vous en êtes conscient, mais je vais le laisser ici. Vous pouvez entrer votre tableau de bord wordpress avec des privilèges d'administrateur, aller aux utilisateurs, trouver un utilisateur et cette partie est un peu mauvaise pour vous car vous devez cliquer sur générer un nouveau mot de passe, cela vous donnera une soupe aléatoire de lettres et de symboles et vous pouvez modifiez-le avec le vôtre, mais même alors, vous ne pouvez pas voir le mot de passe.
la source
Comme les mots de passe sont hachés, la seule façon de tester leur sécurité est de les forcer brutalement. Rassemblez une liste de mots de passe faibles et couramment utilisés et testez-les par rapport aux hachages stockés dans votre base de données.
À moins que vous n'utilisiez une liste de mots de passe très exhaustive, cela n'attrapera pas tous les mots de passe faibles, mais cela filtrera les plus faibles d'entre eux.
la source
Vous ne pouvez pas forcément changer le mot de passe administrateur wp, sauf si vous n'avez aucun contrôle dans chaque base de données wordpress, qui est stockée dans phpmyadmin.
Et non, il n'y a aucun moyen rapide de trouver le mot de passe de la semaine sur le site 500 wordpress. Josip mentionne un lien pour vérifier la force du mot de passe, mais ce site n'a pas utilisé md5 crypto algo pour vérifier la force du mot de passe.
Vérifiez ce lien SO ( Wordpress utilisant MD5 ) et vous verrez que la sortie est différente de celle de l'application. Donc, comme vous le voyez, ce
p#aSS*Word14
n'est pas sécurisé,Dance With Me Tonight
alors n'utilisez pas l'application tierce pour vérifier votre mot de passe Wordpress, car il se peut qu'ils utilisent un autre algorithme de cryptographie pour vérifier / assumer la force du mot de passe.Vous devriez également avoir tous les mots de passe et les tester un par un, il n'y a pas de truc magique pour le découvrir rapidement.
Une autre chose est que, si un site WordPress est piraté, cela n'affecte pas les autres sites wp du même serveur (sauf attaque DOS). J'ai vu beaucoup de gens démarrer wp dans l'hébergement mutualisé, et leur site est piraté, mais leur site voisin fonctionnait toujours bien, car chaque wp a sa propre base de données sur phpmyadmin.
la source
Didn't affect other WP site on same server:
Coïncidence! Dépend du type d'attaque / piratage et de l'intention du pirate / bot.Comme les réponses précédentes l'ont souligné: vous ne pouvez pas lire les mots de passe stockés.
Une solution alternative pourrait être:
/wp-login.php?action=lostpassword
de réinitialiser leurs mots de passe.la source
Les mots de passe WordPress sont hachés, comme toute application sensée le ferait lorsqu'il s'agit de stocker des mots de passe, car le stockage de mots de passe en texte clair est très peu sûr, car vos utilisateurs peuvent avoir le même mot de passe pour les autres services qu'ils utilisent (pensez à gmail?).
Il n'est pas possible de reconvertir le hachage en mot de passe, sinon on pourrait aussi bien les stocker en texte clair. Les mots de passe étaient auparavant hachés,
MD5
mais cela a été prouvé par une équipe de sécurité, donc l'algorithme de hachage a été mis à jourphpass
.Astuce: WordPress peut toujours réussir à le hacher correctement même si vous mettez à jour MD5 (% password%) dans la colonne sql.
Désormais, la manière pratique d'aborder ce que vous essayez de faire pour un seul site est de forcer un changement de mot de passe en changeant la colonne en quelque chose d'autre et en appliquant des exigences de force de mot de passe sur la page où ils vont mettre à jour leur mot de passe. Mais votre cas d'utilisation nécessite de le faire sur de nombreuses installations WP et ces propriétaires de sites pourraient ne pas apprécier que vous le fassiez sans leur consentement. Donc, vous devez certainement limiter la portée de l'impact de vos actions.
1) Mettez à jour les mots de passe uniquement pour les administrateurs, les éditeurs, mais vous devez savoir qui sont ces utilisateurs. Envoyez-les par e-mail, puis appliquez la restriction de mot de passe sur la page de réinitialisation du mot de passe / page d'inscription, etc. N'oubliez pas que quelqu'un peut avoir ces formulaires ailleurs sur le site (pensez également aux formulaires AJAX). Création d'une commande WP-CLI qui vous aide ici dans l'exécution de ce plan, plutôt que de charger l'environnement WP et d'exécuter des scripts.
2) Génération d'une table arc-en-ciel qui consiste en un mot de passe haché pour une chaîne connue (mot de passe). Et puis, vous devez essentiellement faire correspondre le hachage avec le mot de passe d'un utilisateur particulier et évaluer la force de ce mot de passe. La génération du tableau est l'étape la plus lente ici car vous devez hacher chaque mot de passe possible, le stocker sur le disque (plusieurs Go en fonction de la longueur et de la combinaison de mots de passe que vous comptez), puis agir sur les résultats. 99% sûr que c'est une solution exagérée pour vos besoins.
Astuce: Vous connaissez ces sels et secrets que nous avons dans le
wp-config.php
dossier. Les modifier invalide les sessions connectées, au cas où vous en auriez besoin.la source
Essayez de le forcer à l'aide d'une attaque par dictionnaire
Quelle meilleure façon d'évaluer la force de votre mot de passe? :-) Oui je sais, ça va prendre du temps ...
Sinon, vous pouvez simplement supposer que tous les mots de passe sont faibles (je dirais que ce sera une hypothèse très précise ) et créer vous-même les mots de passe, stocker les hachages dans la base de données et donner le mot de passe en texte brut aux administrateurs en utilisant un "sécurisé" canal
Sinon, supposez à nouveau que tous les mots de passe sont faibles et forcez les administrateurs à les changer, et utilisez un validateur de force de mot de passe très pointilleux sur le site Web lui-même.
la source