Problème de sécurité sur les anciennes versions de WordPress !

La nouvelle a fait le tour de la planète, mais il me semble important de faire un point ici…

Les anciennes versions de WordPress ( inférieur à la 2.8.4 ) sont susceptibles d’être contaminées par un vers (de type worm). Henri du blog 2803, décrit son fonctionnement : « il simule l’enregistrement d’un nouvel utilisateur, utilise une faille de sécurité connue, puis se cache avec l’aide d’un javascript et enfin intègre du spam et du code malicieux au sein de vos articles. »

Si votre blog est à jour, en version 2.8.4, vous n’avez rien à craindre, cette version est immunisée… Pour les autres, vous devez absolument mettre à jour votre installation.

Pour mettre à jour.

La méthode est toujours la même :

  1. Sauvegarder les fichiers via votre client FTP
  2. Sauvegarder votre base de données via phpMyAdmin
  3. Désactiver toutes les extensions
  4. Mettre à jour WordPress (via FTP ou mise à jour automatique)
  5. Réactiver les extensions.

Comment savoir si son blog est contaminé ?

3 choses à vérifier…

Les permaliens :

example.com/category/post-title/%&(%7B$%7Beval(base64_decode($_SERVER%5BHTTP_REFERER%5D))%7D%7D|.+)&%/.

Si vos permaliens contiennent le mot « eval » ou « base64_decode », vous êtes contaminé.

Les utilisateurs :

Vérifier la liste de vos utilisateurs, si vous êtes le seul administrateur, vous devriez n’avoir qu’un seul compte. Si les inscriptions sont ouvertes, vérifier qu’il n’y a pas un compte nommé « Administrator »

Essayer également la requête SQL proposée par Dougal sur son blog. ( dougal.gunters.org )

Pour tester votre base d’articles, exécuter la requête suivante sur votre installation :

SELECT * FROM wp_posts WHERE post_content LIKE '%<iframe%'
UNION
SELECT * FROM wp_posts WHERE post_content LIKE '%<noscript%'
UNION
SELECT * FROM wp_posts WHERE post_content LIKE '%display:%'

Si cette requête SQL renvoie des résultats, vous devez nettoyer chacun des articles contaminés…

Quelques ressources

Le codex traite également du sujet avec la page « Comment nettoyer mon installation après un hacking« .

L'auteur :

Co-fondateur de WordPress Francophone.

Directeur associé de Be API, agence spécialisé dans le développement de solutions complexes.

Freelance spécialisé dans l'expertise WordPress et BuddyPress

Retrouvez mon blog : www.herewithme.fr

Et mon site professionnel : beapi.fr

Informations annexes à l'article

Cet article a été publié le dimanche 6 septembre 2009 à 23:35 et est classé dans Sécurité, WordPress, WordPress Mu.

Vous pouvez en suivre les commentaires par le biais du flux RSS 2.0.

Les commentaires et pings sont fermés.

Article lu 21 891 fois.

Méta

1 étoile2 étoiles3 étoiles4 étoiles5 étoiles (4 votes, average: 4,75 out of 5)
Loading...Loading...
Imprimer cette article

25 commentaires

  1. La 2.8.4 n’est pas completement epargnée, il faut rester vigilant.
    http://wordpress.org/support/topic/297639/page/2

  2. Pour la version 2.8.4, le staff dit que c’est ok.

    Les retours utilisateurs sont à prendre avec des pincettes, peut être que la personne était déjà contaminé avant sa MAJ …

    Mais tu as raison, vigilance de mise…

  3. Bonjour,

    Quand je lance la mise à jour automatique de la version 2.8.4 de wp je reçois le message suivant:
    Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 2608815 bytes) in /home1/kassatay/public_html/wp-includes/http.php on line 1324

    Que dois-je faire?

  4. Désactiver toutes les extensions avec la MAJ ou la faire à la main…

  5. J’ai tout désactivé. Quant à la faire à la main… Je dois dire que je suis vraiment novice en la matière.

  6. Pas d’autres solution malheureusement !

    Ca n’est pas compliqué de la faire à la main…

  7. OK. Merci bien.
    Autre chose: pour insérer une photo jpeg dans le header savez-vous comment procéder?

  8. Y’a le forum pour ce type de question :)

  9. merci encore. Bonne fin de journée.

  10. qwerty - 08/09/09 - 1:27

    Bonjour,

    Depuis 1 semaine mon blog n’était plus accessible (erreur 500). J’ai compris en lisant cette page qu’il avait été effectivement contaminé parce que…
    1- Je n’ai jamais fait de mise à jour en 6 mois d’existence ( par peur des conneries – oui c’est pas bien)
    2- Le pb est survenu juste après une « inscription » auquelle je n’ai pas preté attention
    3- J’ai effectivement « 7Beval(base64_decode($_SERVER%5BHTTP_REFERER%5D » dans les permaliens.

    Maintenant que le mal est fait, comment je peux le réparer? Faut-il suivre les étapes de l’upgrade en 2.8.4, ou il y a aussi autre chose à faire?
    Je me permet de préciser que je suis nulle en informatique… mais je sais suivre des instructions simples à la lettre.
    Merci infiniment pour toute aide.
    Une blogeuse désespérée

  11. Ta base de données est corrompue et peut etre ton theme.
    Il faut que tu exportes tes billets et commentaires en xml via l’interface d’admin.
    Apres reinstalle completement wordpress en supprimant tous les fichiers et en ne gardant que le dossier wp-content. Des fichiers contaminés sont surement dans wp-uploads egalement.
    Une fois tout remis, verifie que ta base de données ne contienne pas le mot eval ou base64.
    Apres, il faut securiser ton installation et suivre dès que possible les mises à jour. ;)

  12. Merci beaucoup pour la réponse, mais comment dire… c’est un peu du chinois pour moi dès la deuxième phrase!
    Es-ce qu’il aurait quelque part un tutoriel pas à pas pour cette manip?
    Merci

  13. La procédure complète est là : http://codex.wordpress.org/fr:.....ll.C3.A9es

  14. pour les permaliens : c’est au niveau du panneau de config / permalien que l’on voit si infection ? ou dans les urls générées par WP ?

  15. Je reste très septique sur la requete « SELECT * FROM wp_posts WHERE post_content LIKE ‘%display:%' » car lorsque l’on utilise un générateur du style live writer. des display CSS apparaissent dans le contenu du post… donc forcement on a des retours sans pour autant être affecté.

  16. Bonjour,

    Pourquoi parlez-vous de ver??

    Pour ce que j’ai pu en voir, aucun ver n’habite la version wordpress corrompue. Il s’agit « simplement » d’un robot externe qui créé un compte et injecte des commentaires.

    Rien que du banal spam de formulaire, en somme, non?

    PS: perso, j’ai mis un htaccess sur tout /wp-admin/ depuis des mois, je ne regrette pas!

  17. Bonjour,
    Ce fut laborieux mais j’ai fini par réussir à nettoyer et mettre en place la version 2.8.4. A cette heure, le blog fonctionne ok.
    Je n’ai qu’une question: comment dois-je faire pour vérifier dans ma base de données l’absence des mots « eval » ou « base64″?
    J’imagine que c’est par la fonction « recherche » dans les tables concernées via l’interface phpMyadmin, mais plus en détails…? Juste la table wp-posts, ou d’autres? comment dois-je formuler la requête?

    Encore autre chose: Est-ce qu’il est tout à fait impossible que le dossier wp-content, qui est conservé, soit jamais contaminé? Merci

  18. Merci de cette info, j’ai 2 blogs et possèdent bien la 2.8.4.

  19. Alors pour ma part les CMS c’est vraiment un fonctionnement préhistorique j’arrive pas à m’y faire et naturellement je déteste, le système de faire un site en local puis de passer par un serveur puis passer par ftp puis trouver un hébergeur donc repasser tout son fichu bordel chez l’hebergeur pour configurer le tout sans oublier le phph plus que problématique je compte plus les mises à jour. WordPress veut jouer entre blog et site mais quand tu penses que tu peux créer un bon produit similaire sans tout ce système voyageur et voir le résultat très rapidement j’acquiesse sans sourciller bien entendu.

    Bon courage tout de même.

    Je crois que le système de créateur de site web acheté en commerce est bien plus efficace,

  20. C’est pas juste les install où les user peuvent s’inscrire qui sont vulnérables ?

  21. Merci de ces indications, j’avais été attaqué et réparé les permaliens, mais là j’ai pu nettoyer la bdd de 2 administrateurs cachés (comptés comme tels dans la page « utilisateurs », mais introuvables dans la liste), ainsi que les scripts dans post_content.

  22. bonjour je ne suis pas sur d erte infecte mais je n arrive plus a avoir les commentaire apres parution d un article je les autorisent ca fonctionnait tres bien avant jusqua aout apres un stanby d 1 mois plus rien avez-vous une idee merci

  23. Le test MySQL renvoie des entrées très légitimes : lorsqu’on insère par exemple une carte Google (Google Maps), une timeline ou autre widget. Ce n’est pas probant du tout comme test.

  24. Bonjour tout le monde, je vois qu’il y a de +en+ de monde infecté par les trojans sous wordpress et c’est vraiment une horreur pour s’en débarrasser, j’ai donc fais un tuto pour vous aider :

    http://www.reussirenfin.fr/wor.....wordpress/

    Si vous avez la moindre n’hésiter pas sur mon blog ou ici …

    Merci
    Franck

Les commentaires sont fermés.

écrire un commentaire