Dépannage WordPress : recréer un user admin via le FTP

Il y a des tas de raisons qui peuvent faire qu'on n'accède plus à son tableau de bord :

  • hack
  • oubli des mots de passe
  • le webmaster a disparu dans la nature
  • mon chat a sauté sur le clavier quand je tapais mon mot de passe

Une procédure existe, en passant par phpmyadmin.

  1. ça donne des sueurs froides à certains
  2. il est aussi possible qu'on n'ait pas /​ plus ses accès à phpmyadmin

Pas de panique ! Tant que vous avez accès à votre ftp, un simple fichier (que vous pouvez charger sous forme de .zip ici) va vous permettre de recréer, miraculeusement, un user admin provisoire. L'avantage est que même si vous avez oublié votre mot de passe FTP, vous avez toujours accès au téléchargement de fichier par l'interface de votre hébergeur (OVH, 1&1, etc...)

Vous dézippez et vous trouvez un fichier script_user_creation.php dont voici le contenu  :

<?php
require_once ( 'wp-config.php' ) ; 

$userdata = array(
'user_login'  =>  'temp_admin',
'user_pass'   =>  'toutouyoutoutou' ,
'user_email'  =>  '01@trash.com' , 
'role'        =>  'administrator'
);

$user_id = wp_insert_user( $userdata ) ;

//On success
if( !is_wp_error($user_id) ) {
 echo "User created : ". $user_id;
} 
?>

Ce fichier est à télécharger sur votre espace web au même niveau que le wp-config.php

Une fois que vous l'avez téléchargé, vous allez sur la page d'accueil de votre blog, et vous rajoutez, dans la barre d'adresse, /script_user_creation.php

Vous pouvez éventuellement avoir des messages d'erreur cabalistiques, on s'en fiche. L'essentiel est de voir, au bas de la page, ce message "User created : " suivi d'un chiffre.

Et voilà, il vous suffit de vous connectez avec le login temp_​admin et le mot de passe toutouyoutoutou

Précautions d'usage

Attention : c'est brutal, efficace et absolument pas sécurisé. C'est une solution de dépannage, et il est essentiel :

  • de changer "au cas où" les valeurs de login et /​ ou de mot de passe avant de charger le fichier (vous pouvez l'éditer avec Notepad)
  • de supprimer le fichier du FTP immédiatement après utilisation

En cas de non respect de ces consignes, je décline toute responsabilité.

Si il n'y a pas le message User created alors le problème est plus grave. Il faut consulter :)

 

(Charly, le beau chat roux sur le clavier appartient à DanR qui partage sa photo sous licence CC BY NC SA)

17 commentaires

  1. Bonsoir, je me garde cette solution sous le coude au cas où. J'espère ne pas avoir à l'utiliser mais c'est rassurant de savoir qu'il y a une solution "accessible" dans le cas où l'accès au panneau d'administration est compromis. Encore une fois appris quelque chose en lisant un article ici :)

    Répondre à Nicolas
  2. Bonjour,
    alors cette astuce là, je me la mets en favori... cela m'est déjà arrivé de perdre beaucoup suite à un problème d'accès à la BDD et comme on ne fait jamais assez souvent de sauvegarde. J'aurais probablement pu mieux m'en tirer si j'avais pensé à ca.
    Encore merci.

    Répondre à michael
  3. Très bien mais n'est-il pas difficile pour des novices angoissés de se souvenir du mot de passe toutouyoutoutou ?

    Répondre à cristophe
  4. Hello
    J'avoue préférer mon script Backdoor User qui fait plus de choses et plus secure.
    ;)

    Répondre à julio potier
  5. Alors une question bête....

    Un rigolo ne pourrait pas utiliser ce truc sur un site quelconque pour changer les mots de passe admin ? (ou mieux créér un compte supplémentaire discret ?

    Amitiés, nono

    Répondre à Delferrière Bruno
  6. Merci Marie-​Aude !
    Très précieux au cas où !
    Bonnes vacances

    Répondre à Mick
  7. Une fois, pour dupliquer un site dont je n'avais plus le mot de passe du compte admin, j'ai été au plus simple : j'ai directement modifié le champ correspondant de la table dans la base de données en passant par PHPMyAdmin. Par précaution, j'avais fait un copier-​coller du champ avant la modification. Et j'ai simplement supprimé la valeur du champ.

    Résultat : un compte sans mot de passe ! Que j'ai bien sur ressaisi après connexion.

    Je ne sais pas si c'est la méthode la plus recommandable ni même la plus stable. Mais elle a fonctionné :-) Bon, il faut connaitre les compte /​ mot de passe de la base de données, savoir se servir de PHPMyAdmin et ne pas avoir peur de mettre les mains dans le cambouis. Mais pour qui sait le faire, ça me semble pas mal.

    Qu'en pensez-​vous ?

    Répondre à Grégory
  8. Certes, c'est ce qui est dit en haut.... l'identifiant ftp est généralement plus facile à obtenir de la personne paumée que l'identifiant phpmyadmin :)

    Répondre à Marie-Aude
  9. jay sea Auteur mai 7, 2015 (1:48 )

    Totalement génial. Merci. Tu viens de me sauver d'une méga crise de nerf !

    Répondre à jay sea
  10. Je vous remercie énormément
    Le script m'a sauvé effectivement il y avait un isurpateur

    Merci beaucoup

    Répondre à Bajoc
  11. Merci beaucoup !
    Comme d'autres vous m'avez sauvée.

    Répondre à Aurelie

Commenter

*Informations requises Merci de donner les informations requises

  • Pas de liens raccourcis
  • L'auteur doit s'identifier avec son pseudo, son nom, son prénom ou s'il le veut le nom de son entreprise ou de son site, sauf si celui-ci correspond à des mots clés. Toutes les combinaisons sont permises dans ce cadre.
  • L'url peut être celle d'un site ou profil de réseau social, uniquement la page d'accueil
  • Pas d'adresse email jetable

*

*