Tout savoir sur WordPress

Empêcher l’usurpation d’identité dans les commentaires

Sur WordPress, n’importe quel visiteur peut usurper votre identité pour écrire un commentaire. Pourtant, il suffit de quelques lignes de code pour empêcher l’usurpation d’identité.

L’usurpation d’identité est un problème de sécurité que l’on retrouve sur WordPress, mais aussi sur site Internet en général. Sur un site WordPress, n’importe quel visiteur qui a le droit de commenter peut choisir de prendre votre pseudo et/ou email. Ceci pose donc un fameux problème sécuritaire.

Pour contrer ce problème, on utilise le filtre preprocess_comment qui attends un paramètre contenant toutes les données du commentaire envoyé.

Copiez le code ci-dessous dans le fichier functions.php présent à la racine de votre thème :
[pastacode lang=”php” message=”” highlight=”” provider=”manual”]

add_filter('preprocess_comment', 'baw_preprocess_comment' );
function baw_preprocess_comment( $commentdata ) {
	
    if( is_user_logged_in() || $commentdata['comment_type']!='' )
	return $commentdata; 
	
    $user = '';
	
    if( $commentdata['comment_author']!='' ):	
        $user = get_user_by( 'slug', $commentdata['comment_author'] );
        $info = 'ce pseudo';
    endif;

    if( !$user && $commentdata['comment_author_email']!='' ):
        $user = get_user_by( 'email', $commentdata['comment_author_email'] );
        $info = 'cette adresse email';
    endif;
	
    if( $user )
	wp_die( 'Impossible de continuer car ' . $info . ' correspond à un membre sur ce site. S'il s'agit de vous, merci de <a href="' . wp_login_url( wp_get_referer() ) . '">vous connecter</a>.
<a href="' . esc_url( wp_get_referer() ) . '">Retour »</a>' );
	
    return $commentdata;
}

[/pastacode]
Pour s’assurer que le visiteur ne tente pas d’usurper l’identité d’un membre, on commence par vérifier que l’utilisateur n’est pas connecté. Ensuite, on vérifie que le commentaire provient d’un visiteur et non pas d’un pingback ou d’un trackback.

Pour terminer, on recherche un membre correspondant au pseudo ou à l’email renseigné par le visiteur. Si un membre est trouvé, on bloque l’ajout du commentaire et on affiche un message d’erreur.

Cet article a été mis à jour il y a 4399 jours - Il n'est peut être plus à jour !

Article écrit par Julio P.

Fondateur de SecuPress, l’extension de sécurité WordPress, Julio Potier est un Expert WordPress, un Formateur Expérimenté et un Consultant en Sécurité Web.

Il aime partager ses compétences et ses réflexions sur WordPress, donnant des conférences partout dans le monde.

39 Commentaires

  1. Je n’y ai jamais pensé, c’est tellement évident que n’importe qui puisse usurper l’identité, d’ailleurs comment savoir si c’est bien moi qui post en ce moment ^^ ça par contre c’est chaud car n’importe qui peux poster à notre place des conne… sur d’autres sites, flippant. J’espère que beaucoup de webmaster verrons ton article, merci Julio

  2. Excusez moi pour un commentaire qui n’a rien à voir avec le sujet de l’article.
    Avec IE10, les lignes de code du site sont illisibles, elle sont affichées sur une seule ligne scrollable horizontalement.

  3. Le web est tellement immense et ouvert à tout le monde… On ne peut jamais être sûr de l’identité d’une personne. Rien que sur Facebook… Tout est permis.

    Merci pour ce tutoriel, au moins on sera paré à ce niveau là ! C’est déjà pas mal :D

  4. Euh oui forcément, on ne peux pas devnier si la personne qui poste un commenatire est la vraie ou pas. Avec le compte, ça limite les risques. Donc le soucis que nous avons eu sur ton site n’est valable que pour moi car j’ai un compte chez toi, pour les “anonymes” qui entrent des infos, libres à eux de mettre ce qu’ils veulent. Peut etre fait-il proposer l’inscription en abonné sans acces profil WP (mais page front end) dans le but d’empecher cette usurpation.

  5. Bonne astuce. Cependant, un “die” parait un peu brutal du point de vue utilisateur.
    Peut être une alternative qui redirige vers la page de rédaction de message avec une erreur au dessus ? histoire de pas perdre son message

  6. Si la personne qui tente d’usurper mon identité ou l’identité d’un de mes membres se prends un die et perds son message, tant pis pour elle,.

  7. En fait, ton astuce fonctionne dans ce cas-ci:
    Vérifier si l’email et le nom entrés correspondent?

    Mais s’ils correspondent, mais que l’auteur n’est pas celui qu’il prétend être, comment on fait pour l’arrêter?

  8. Non tu n’as pas compris.
    Si A dit s’appeler B et rentre l’email de B, comment tu fais dans ce cas là?

  9. Merci du partage! est-ce que quelqu’un saurait s’il y a une application de développement sous wordpress pour mobile ?

  10. Je l’ai aussi mis en oeuvre et ça marche, merci pour l’info, j’ai quatre wordpress en ligne, cette astuce m’a enlevé une belle épine du pieds.

  11. Pas mal de fois, je tombe sur une faille de sécurité qui concerne WordPress. Quoique ce CMS soit populaire, il ne cesse pas de nous présenter des lacunes. Pourquoi les développeurs ne travaillent pas sur ce côté pour améliorer la sécurité en intégrant de telles astuces.

  12. Mais est-ce que le fait que vous recevez les commentaires pour les accepter ce fait automatiquement ou il faut faire quelquechose ??????
    Merci

  13. @Love : Les commentaires ne sont pas ajoutés si ils sont détectés “usurpation”, rien n’est à faire donc.

  14. D’accord mais sa veut dire quoi ils sont détectés usuration???? J’ai toujours pas compris se que sa faisait

  15. @love : hummm oui bon ça c’est le sujet, ya une description et une vidéo. Euh que dire de plus … si tu es “toto@gmail.com” avec pseudo “toto titi” et qu’un visiteur essaie de remplir un commentaire avec ton pseudo ou ton mail, il va avoir une erreur. Voilà

  16. Merci mais c’est que je ne n’est pas compris ni la video ni la description…
    Cela ce fait automatiquement mais que si on créé un blog sur wordpress pas sur un autre site ??

  17. @love : euh tu es sur un site d’astuces WordPress, donc les astuces WordPress sont pour les sites WordPress. Je crois que je ne peux plus rien pour toi, tu sembles tellement perdue … j’en ai le vertige.

  18. Bonsoir, j’ai trouvé l’endroit ou coller le code, mais je ne sais pas ou le mettre exactement. En haut ? en bas ? merci

  19. Il s’agit bien d’un script php pour sécuriser les commentaires.Reste à savoir si une personne qui veut usurper notre identité se servira seulement d’un pingback…

  20. Je suis complètement déprimé.

    Je suis sur le thème udesign. J’ai intégré ce code dans la page fonction mais n’étant pas programmeur. Je l’ai fait par logique en essayant de ne pas me mettre sur un autre code. Ensuite je me suis retrouvé sur la page des 7 erreurs à ne pas faire pour la sécurité. J’ai lancé le lien qui crée des clés. Et puis plus rien… J’ai un écran vide tout blanc. Je suis complètement déprimé car j’ai passé des journées à avancer sur mon site car je ne suis pas programmeur. Au secours, svp. Aidez-moi. Je suis abattu. J’ai un site wordpress chez OVH. Mais je ne sais meme pas comment aller en FTP dessus…