Un plugin de détection d’intrusion

Suite au hack de Pagasa, j’ai écris un plugin qui permet de prévenir ce genre de problème. L’idée est de signer numériquement les fichiers importants qui composent votre blog et de prévenir toute modification sur ceux-ci. L’alerte est alors envoyée sur l’adresse mail de l’administrateur du blog.

Pour installer le plugin, téléchargez l’archive, décompressez le fichier et placez-le dans le répertoire des plugins de votre blog. Activez-le tout simplement, il n’y a rien à paramétrer: le plugin fait les vérifications en tâche de fond, une fois par jour. Vous pouvez le tester en effectuant, par exemple, une modification sur votre wp-config.php. Vous recevrez sous 24 heures une alerte par mail.

Attention, si vous mettez à jour votre blog, le plugin risque d’interpréter une intrusion puisque la plupart des fichiers systèmes auront été modifiés. Il vous suffit alors de signer à nouveau tous les fichiers. Ceci se fait très simplement en désactivant et en réactivant le plugin.

Assurez-vous également que l’adresse mail du blog est sur liste blanche, car les alertes sont parfois interprétées comme du spam.

Historique:
- 15 mail 2012: Version 1.0

Télécharger le plugin

Gagner plus d'argent avec votre blog

Le hack de Pagasa

Il y a quelques semaines, Pagasa s’est fait hacké et cela m’a beaucoup fâché. Sous Firefox, Pagasa n’était plus du tout accessible et affichait la page de StopBadware. Heureusement, j’ai été rapidement prévenu; j’en profite d’ailleurs pour te remercier, Morgan; je ne me balade pas tous les jours sur Pagasa, moi ;-)

Je me suis rapidement fait comprendre d’où venait le problème: un méchant avait modifié le footer de mon thème WordPress pour y injecter un script malveillant hébergé sur une machine distante, ce qui a finit par provoquer le blocage de Pagasa. Je l’ai immédiatement viré et fais en sorte d’être rapidement retiré de la blacklist. Ensuite, je me suis penché sur la nature du problème car je ne suis pas du genre à laisser passer ce genre de chose.

J’ai rapidement pu isoler une IP grâce à la date de modification du fichier footer. Au début, j’ai cru à une injection mais je n’ai strictement rien trouvé de tel. Par contre, des brut force sur le mot de passe admin, j’en ai trouvé à la pelle, mais au vue de la complexité du mot de passe, « ils » peuvent toujours courir :) De toutes les manières, toutes ces attaques finissent par s’arrêter d’elle même au bout d’une centaine d’essais; après, cela devient trop visible.

J’ai finalement constaté avec effroi que l’utilisateur avait simplement utilisé mon mot de passe pour accéder à l’admin de WordPress et y déposer son venin ! J’ai immédiatement changé le mot de passe en me demandant comment diable, le type l’avait récupéré. J’ai examiné mon PC portable pour y déceler une trace d’un keylogger mais je n’ai rien trouvé de particulier. Ce petit doute a néanmoins été le déclencheur de la réinstallation complète du PC qui survient statistiquement tous les deux ans sur ce @&#$!? de Vista. Pas pour faire beau, mais comme je tente toujours de le justifier à mes clients, parce qu’un système d’exploitation, ça vit comme vous et moi, ma p’tite dame !

Ceci fait, j’ai contacté le service abuse du fournisseur de l’IP responsable de mes ennuis, un internaute néerlandais chez Chello.nl. Le type a reçu un avertissement écrit par courrier postal, mais je ne me fais pas trop d’illusions: au vue des traces hyper flagrantes qu’il a laissé et l’absence totale de dissimulation de son forfait (quoi, même pas un petit VPN ou un petit Darknet de mes amis Ukrainiens ??), il doit encore s’agir d’une de ces malheureuses et innocentes victimes manipulées par un utilisateur de botnet.

Après, le mystère du mot de passe reste total. J’ai été jusqu’à le chercher sur Google ainsi que sur Pastebin: rien. Je me suis tout de même souvenu que j’avais du utiliser, il y a longtemps, le même mot de passe sur quelques obscures régies PPC russes; je ne vois que cette solution. Finalement, c’est là que l’on se rend compte de l’efficacité de la recommandation de l’utilisation des clés publiques et privés telles que celles que l’on utilise en SSH.

Pour conclure, j’ai réfléchi à quelques moyens de se protéger plus efficacement contre ce type d’attaque. Vous aurez donc prochainement droit à une petit solution technique de ma composition qui préviendra ce genre de mésaventure.

Mise à jour du plugin Coop: Version 1.7

J’ai mis à jour le plugin Coop; nous en sommes maintenant à la version 1.7.

Comme à l’accoutumée, plusieurs bugs ont été corrigés, notamment un gros souci avec les communications IXR. Ce bug faisait tout simplement planter le plugin et empêchait la propagation des articles. 20% des nœuds de la Coop ont été affectés par ce problème. Si vous constatez que votre blog ne semble plus recevoir d’articles depuis plusieurs mois, alors il y a beaucoup de chances que vous soyez touché par ce problème. Mettez à jour le plugin et tout devrait rentrer dans l’ordre.

Afin de gagner du temps dans la résolution des bugs, j’ai mis au point un dispositif de tests embarqués accessible en appuyant simplement sur le bouton « Tests », qui est situé sous la version. Le plugin va alors effectuer des tests sommaires qui valident ou non le bon fonctionnement des communications XML-RPC. Si les tests échouent, le plugin n’a aucune chance de fonctionner correctement. Dans 99% des cas, le problème vient d’un filtrage de votre hébergeur qui interdit les connexions sortantes à base de XML ou de Curl sur votre blog. Ce souci a déjà été observé notamment sur l’hébergement mutualisé chez OVH.

Si les tests passent correctement, et que vous avez toujours des soucis, remplissez simplement la demande de support, en y renseignant la description de votre problème sans oublier votre email que je puisse vous répondre. J’en profite pour vous rappeler que toute mise à jour de la Coop implique automatiquement que vous redémarriez le plugin. Je constate encore que beaucoup de gens oublient de le faire et qu’en conséquence, le plugin ne peut pas fonctionner correctement.

La gestion des logs a été passablement modifiée; il y a désormais beaucoup plus d’informations qui aident à la mise au point. Les logs sont désormais en rotation; c’est à dire que toutes les semaines, une nouvelle version du log est créée et les informations des semaines précédentes sont archivées. On y gagne ainsi en performance, car à la longue l’écriture dans un fichier qui fait plusieurs mégas finit par consommer beaucoup trop de ressources. On y gagne aussi en paresse, puisqu’il est désormais inutile d’effacer le log de temps en temps, comme on le voit malheureusement encore trop sur d’autres applications.

J’ai également augmenté à cinq le nombre par défaut de partenaires automatiques: le maillage est désormais meilleur.

On m’a posé plusieurs fois la question de la gestion de la poubelle. La Coop communique en créant des articles systèmes qui sont effacés au fur et à mesure et finissent donc à la poubelle. Le problème est qu’à l’heure actuelle, il n’existe pas d’API WordPress pour gérer celle-ci. On doit alors la vider de temps en temps. Heureusement que les développeurs ont toujours une grande qualité en commun: ils sont paresseux partisans du moindre effort. Pour vider automatiquement la poubelle, utilisez la directive suivante dans votre wp-config.php:

define(‘EMPTY_TRASH_DAYS’, 10 );

Où 10 indique la fréquence en nombre de jours; ici, la poubelle sera donc vidée tous les 10 jours.

La dernière grosse modification est l’ajout des réseaux dynamiques. A l’origine, j’avais fixé à 4 le nombre de réseaux; cette limitation a été abrogée et la Coop peut désormais gérer un nombre infini de réseaux, par thème, langue, etc. Pour créer un nouveau réseau, il suffit de me contacter pour que je puisse faire la modification. Celle-ci sera alors automatiquement propagée sur tout le réseau. Les réseaux dynamiques sont pour l’heure encore publics; néanmoins, la prochaine version verra l’apparition d’une très grande flexibilité de ce dispositif. Je sais que certains d’entre vous l’attendent avec impatience :-)

Maintenant, je vous parle des performances en terme de référencement. Sachez que je suis moi même utilisateur du réseau pour référencer mes sites. Je suis content des performances, car mes expériences ont montré de réels progrès de ce côté-là. Pensez-y, vous disposez d’une entrée sur un réseau de blogs complétement hétérogène, réparti sur de nombreuses adresses IP. Par ailleurs, les articles apparaissent doucement au fil du temps, tout naturellement possible et bien entendu automatiquement.
L’effort doit se focaliser sur la qualité de l’écriture d’un article, car un bon spin est vital pour de meilleurs performances. Rappelez-vous aussi qu’il n’y a pas que des robots qui lisent vos articles.

Je ne peux donc que vous encouragez à participer à la Coop, tant que je suis toujours ouvert à l’arrivée de nouveaux membres gratuits.

Ma collection de vieux CD

Ce n’est pas à proprement parler une collection, mais quelques vieux CD qui trainent toujours dans une armoire, et dont je n’ai pas le courage de me débarrasser. Ils représentent quelque part la mémoire d’une époque lointaine où les choses se faisaient plus lentement et surtout nécessitaient beaucoup plus de patience et de recherche.


Mai 1995: 10000 programmes MS-DOS directement téléchargés de l’Internet. Des langages bizarroïdes tels le Forth, l’assembleur, Perl sous DOS, etc.
Il fallait parfois plusieurs semaines pour recevoir le CD des Etats-Unis. La société qui commercialisait le CD, une entreprise Californienne, judicieusement nommé cdrom.com n’existe malheureusement plus.

Septembre 1994, des outils réseau pour Linux et Windows: le système d’exploitation KA9Q, SNMP, FTP, DNS, Sendmail et des clients PPP.

Infomagic, une société de l’Arizona n’existe plus; en revanche, son nom de domaine est désormais utilisé par une agence immobilière située en Inde.

Decembre 1994, le LINUX developer’s Resource, une collection de distributions (Debian 0.91, Slackware 2.1), le noyau 1.1.72 et le jeu Doom sous Linux.

La Slackware 2.1 de ce CD a été installée en 1995 avec succès sur plusieurs 386 dont un à Notre Dame University de Cotabato-City (Philippines).

Le dernier CD de Linux que j’ai acheté en 1997 (à moins que ce ne soit offert ?) A partir de cette date, la bande passante commençait à permettre de télécharger plus rapidement et surtout pour bien meilleur marché.

Megaupload a été fermé par la justice fédérale

Le site bien connu de partage des fichiers vient d’être fermé par la justice fédérale de l’État de Virginie.

La société et ses fondateurs sont accusés d’avoir violé les lois sur les droits d’auteur. Le préjudice porterait sur plus de 500 millions de dollars. La coupure est intervenue après que le site ait participé à la journée d’action contre la loi américaine SOPA.

Dirigé par Kim Dotcom, Megaupload était connu comme le 13eme site le plus visité au monde.