Comment je me suis fait hacker mon blog….
Et oui, malheureusement, ça peut arriver…
Replaçons le contexte : vendredi soir, 23 heures, Bastien m’annonce que je me suis fait hacker mon blog (merci à Jennifer de l’avoir découvert). En effet, on retrouve un script PHP sur la page d’abonnement, script qui n’a rien à faire là.
Alors, que s’est-il réellement passé ? Véritable hackeur ? Petit farceur ? Script-kiddies ? Vous en saurez plus dans la suite de l’article !
Que faire quand vous découvrez que votre site/blog a été hacké ? Voici, en quelques étapes clés ma réaction.
1. Protéger le blog
C’est l’étape la plus importante : vous devez protéger vos données dès que possible.
En effet, tant que vous n’avez pas identifié et sécurisé la faille, quelqu’un peut à tout moment accéder à vos données, ou modifier vos fichiers pour créer des backdoors.
Un moyen simple, mais efficace : bloquer tous les accès, sauf votre adresse IP grâce à un fichier .htaccess à placer à la racine de votre blog. Les deux lignes à ajouter en début de fichier sont :
Allow from 123.123.123.123
Deny from all
Note : remplacez 123.123.123.123 par votre adresse IP publique.
2. Trouver la portée des dommages
J’ai pu constater dans l’interface d’administration de mon blog que les données du compte admin ont été changées. J’y ai notamment retrouvé ce mail à la place du mien :
yahiaouibilal@live.fr
Note : oui oui, vous pouvez le spammer !
Si vous ne pouvez pas constater visuellement, un accès SSH à vos fichiers peut vous sauver la mise dans 99% des cas. Voici une commande qui permet de trouver tous les fichiers modifiés les dernières 48h :
woueb@ssh1:~$ find . -mtime -1 -print | more
./www/wp-content/themes/classic/style.css
./www/wp-content/themes/glossyblue-1-3/print.css
./www/wp-content/themes/glossyblue-1-3/simple_recent_comments.php
./www/wp-content/themes/glossyblue-1-3/abonnez-vous.php
Un petit tour dans ces fichiers : ils sont encodés en base 64, et effectivement, ont été modifiés pour afficher un script PHP sur la page « Abonnez-vous ».
3. Restaurer des données
Comment ça vous n’avez pas de backups ? Dans ce cas, je ne peux pas vous aider !
4. Trouver la faille de sécurité
Si celle-ci n’est pas évidente, le mieux est de consulter les logs d’Apache. Dans les miens, j’ai retrouvé ceci :
1 | 83.233.168.63 www.woueb.net - [14/Nov/2008:03:11:48 +0100] "POST /wp-login.php?action=lostpassword HTTP/1.1" 302 20 "http://www.woueb.net/wp-login.php?action=lostpassword" "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3" |
1 | 83.233.168.63 www.woueb.net - [14/Nov/2008:03:12:00 +0100] "GET /wp-login.php?action=rp&key=Iq6NN8gS4Jd2hJJwhD4H HTTP/1.1" 302 20 "http://bl117w.blu117.mail.live.com/mail/InboxLight.aspx?n=700632850" "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3" |
Je suppose donc que quelqu’un a réussi à contourner le système de réinitialisation du mot de passe de WordPress ; par contre, je ne sais pas du tout comment !
5. Sécuriser le blog
Une fois que vous avez trouvé la faille, il ne vous reste qu’à la corriger : je reviendrais sur mes méthodes dans un autre article au courant de la semaine.
6. Remettre en production
Si jamais vous n’avez pas pu sécuriser votre blog, je déconseille fortement de le remettre en production pour éviter que quelqu’un fasse un doublé !
Il vaudra toujours mieux voir son blog inaccessible pendant 24h que de perdre des données. Dans tous les cas, ne jamais paniquer, et toujours protéger le blog en premier lieu !
Dans mon cas, je dirai que j’ai eu de la chance : je suis tombé sur des boulets personnes qui n’ont pas trop foutu le bordel puisqu’il n’ont jamais trouvé l’adresse de la page !
En effet, pour la petite histoire, je pense qu’ils n’ont pas remarqué qu’ils avaient réussi à installer leur script :
- ils ont essayé d’accéder la page « Abonnez-vous », mais sur la mauvaise adresse, comme en témoigne les logs d’Apache avec ces erreurs 404,
1 | 83.233.168.63 www.woueb.net - [14/Nov/2008:03:13:56 +0100] "GET /themes/glossyblue-1-3/abonnez-vous.php HTTP/1.1" 404 6213 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3" |
1 | 83.233.168.63 www.woueb.net - [14/Nov/2008:03:14:08 +0100] "GET /themes/abonnez-vous.php HTTP/1.1" 404 6226 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3" |
- personne d’autre n’a accédé à cette page jusqu’à 23h le soir.
Vous pouvez éventuellement placer une étape 7, si jamais vous retrouvez le responsable (rare).
7. Lui casser les genoux
L’adresse IP ne vous donne pas beaucoup d’informations puisque ces personnes utilisent en général des serveurs proxy dans d’autres pays.
…
Autre chose ? Ah oui, je hais les script-kiddies !
Et vous, ça vous est déjà arrivé ? Vous avez réagi comment ?
Commentaire by leGizz — 17 novembre 2008 @ 16:05
Il m’est arrivé la même chose il y a quelques semaines sur le site d’un client. D’après ce que j’ai compris le hacker a utilisé une faille de wordpress (le site tournait sur une ancienne version).
Dans mon cas, le vilain pirate avait placé un message assez désagréable à l’attention des lecteurs du site…
Pour régler le problème j’ai fait, à peu prêt, comme toi, mais sans les étapes 1 et 7
Commentaire by creatix — 17 novembre 2008 @ 16:25
C’est quand meme un boulet oui…. Ne pas reussir a trouver la page… c’est vraiment bas… Heureusement pour toi, c’est vraiment un script-kiddie.
Je pense que je vais développé moi même mon moteur de blog pour pas avoir des script-kiddies sur le dos
Commentaire by fabien thomas — 17 novembre 2008 @ 16:38
Salut, un pote à moi s’est fait hacker son blog aussi il y a quelques temps, mais pas de la même manière, Ce coup ci pas shell99, mais par contre tous les fichiers de son thème étaient vérolés avec un genre de script bizarrement encodé en binaire qui au final ne faisait qu’appeler une iframe..
Je n’est pas très bien compris le pourquoi du parce que, toujours est-il que j’ai vite nettoyer le serveur par le vide, pour ensuite tout réinstaller.
Depuis plus rien, croisons les doigts X
Pour ton histoire de contournement du reset du mot de passe, ce ne serait pas ta boite mail qui serait hackée ?
ça peut paraître invrassemblable, mais ça ne serait pas une première..
A bientôt
Commentaire by Zephir — 17 novembre 2008 @ 18:29
Le même gars a apparemment hacké plopblog.com (wp également)
Commentaire by desfossez Thomas — 17 novembre 2008 @ 20:07
Merci pour les tuyaux
Moi la 1ere fois que je me suis fais hacker mon site joomla, un petit malin a juste écris un article dans mon blog en me disant de faire gaffe et de faire la mise a jour. Il m’a gentiment redonné le nouveau mot de passe et login dans l’article.
Le hic, c’est que quelqu’un est tombé sur l’article avant moi et m’a insulté dans un 2éme article en disant que jamais il ne me filera l’accès a mon site.
Je me suis endormi, pensant résoudre le problème le lendemain et on dirais qu’ils ont passé le mot car je me suis fait re-re-hacker mon site par un russe qui a tout effacé…
Finalement j’ai laissé tombé Joomla et fait mon site par moi même.
Commentaire by jennifer — 17 novembre 2008 @ 21:53
Dire qu’à la base je voulais juste l’ajouter à mon netvibes ! Bon ben j’ai bien fait de demander à Bastien ce que c’était ce truc avec une araignée ^^
Commentaire by Gregg — 18 novembre 2008 @ 9:59
Merci pour les tuyaux…
Je n’utilise pas de scripts open source pour le front office de mon site, mais pour la gestion de mes bases, j’utilisai PhpMyAdmin sur certains de mes serveurs.
Jusqu’à ce jour où j’ai trouvé une charge annormale et 90Go de divx/warez sur l’un d’entre eux. Après quelques recherches, je me suis rendu compte que le hacker avait exploité une faille de session dans phpmyadmin.
Je ne sais pas exactement comment, mais il a réussit à uploadé un script dans le répertoire des sessions PHP et à l’exécuter pour ensuite installer un process torrent…
Bref, il n’y avait pas de correctif phpMyAdmin à cette époque (06/08), alors je l’ai supprimé en faveur de webmin et depuis, tout va bien.
Commentaire by Sébastien C. — 18 novembre 2008 @ 19:46
Pas de bol !
C’est en tout cas une excellente initiative que ce billet puisqu’au lieu de te larmoyer comme l’auraient fait nombre d’autres bloggueurs, tu as su transformer ce problème en un article construit, intéressant et surtout utile. Plus que le contenu du message c’est l’esprit du billet que je salue : )
Quel dommage qu’il faille en arriver là pour voir ce blog bouger. Vivement le prochain petit script-kiddie (ou pas bien sûr)
ps : prochain billet -> Expliquer comment faire des sauvegardes !
Commentaire by paul — 18 novembre 2008 @ 21:01
J’ai le même problème : avec le même email : yahiaouibilal@live.fr C’est vraiment penible…
La méthode utilisée pour créer un nouvel utilisateur admin est décrite ici : http://blogmastering.info/2008.....ess-hacke/
Comment securiser la faille ?
Commentaire by spidervincent — 17 juin 2009 @ 13:48
voila moi aussi je me suis fait hacker un compte e-monsite mais le con ma changé le mot de passe comment faire pour re rentré dans la session
Commentaire by Romain — 18 juin 2009 @ 12:29
@spidervincent > Accéder directement à la base de données et modifier le champ password pour un hash md5 dont tu connais la signification.
Commentaire by mioumiou — 26 septembre 2009 @ 12:02
Il semble que c’est un Hacker Algérien, ce n’est pas le seul site qu’il a hacké, il s’est même introduit sur le site de l’université de Batna en Algérie (celui-ci redirige vers un site islamique)
Commentaire by Mwette — 14 juin 2010 @ 13:41
je me suis aussi faite hacké par un gentil pitit algérien…. très subtil avec ses drapeaus algériens et son foot…. grrr
je suis en train de sauver tout mes derniers posts dans la base de donnée…