WordPress et la sécurité des sites web

L’article ci dessous illustre d’une manière particulièrement croustillante, mais parfaitement bien documentée, les risques de sécurité liés aux sites web.

Pour ce qui nous concerne, bien que pratiquant des prix très largement inférieurs à ceux déboursés par Carla, nous assurons une maintenance permanente de nos sites sous WordPress ! A chaque connexion, les mises à jour nécessaires sont effectuées, et chaque mois, une vérification systématique est effectuée, afin de conserver en permanence des logiciels à jour. Et chaque semaine, un backup des bases est réalisé sur un serveur séparé. De quoi dormir tranquille.

Bien entendu, l’exemple du site de Carla ne saurait servir de prétexte à la critique de telle ou telle tendance politique : la Toile rit encore du site de Ségolène, « Désirs d’avenir » (2009), qui avait lui aussi été une gabegie financière en même temps qu’une aberration complète, en terme de design, de technique, et d’ergonomie. Cet équilibre des catastrophes devrait cependant amener le milieu politique à davantage de modestie. Mais pour cela, on attendra que les ministres escroquant le fisc veuillent bien démissionner de leur mandats électifs…

Le site de Carla Bruni-Sarkozy : anatomie d’une cybercatastrophe

Olivier Laurelli | @Bluetouff

Depuis deux jours, ça trolle assez sec sur Twitter au sujet du site web de Carla Bruni-Sarkozy. A l’origine, un rapport de la Cour des comptes [PDF], et un article publié sur Politique.net, qui révèlent que le site de l’ancienne première dame aurait coûté 410 000 euros au contribuable.

A ce prix-là, on s’attend naturellement à une véritable merveille, d’une qualité de code irréprochable, d’un design somptueux, d’une horde de hackers chinois qui met à jour le site toutes les heures… Bref, quelque chose de bling-bling et bien vivant.

Je suis donc naturellement allé jeter un œil, et assez rapidement, j’ai pu prendre la mesure de la catastrophe.

Un site « cheap » et trois surprises

Première surprise, à ce prix-là, on s’attend à une technologie exotique, avec de nombreux développements spécifiques… et paf, on tombe sur unWordPress, le même CMS utilisé pour mon blog [sur lequel cette note de blog a été publiée originellement, ndlr] ou pour Reflets.info.

Si je devais chiffrer techniquement le développement d’un site comme Reflets.info, ce dernier n’excéderait pas les 4 000 euros pour une petite semaine de customisation de skin et modules. Comment celui de Carla Bruni Sarkozy a-t-il pu être facturé 100 fois plus cher ?

Visiblement, ce coût exorbitant n’est pas imputable aux postes d’infogérance (semble-t-il réalisée parIntegra, à en croire les DNS et le whois de l’IP du serveur qui héberge le site) et maintenance applicative.

Car, c’est une autre surprise de taille, le WordPress n’est techniquement pas maintenu. Le fichier readme.html arbore fièrement une version 3.0.4. Une versionqui date quand même du 29 décembre 2010. Depuis 2010, le WordPress à 410 000 euros, financé par nos impôts, n’a pas été mis à jour. A titre d’information, nous en sommes, à l’heure où nous écrivons ces lignes, à la version 3.5.2 !

Troisième surprise (et pour le coup, vu la seconde, ce n’est pas franchement une surprise), le site de Carla Bruni-Sarkozy est une véritable passoire. On en déduira donc que les 410 000 euros du budget de ce site ne sont pas non plus imputables à des audits de sécurité réguliers. C’est un véritable festival niveau vulnérabilités…

On commence par un beau XSS dans le module d’upload de média en flash dans l’admin (impact limité car ceci implique un accès à l’admin). On a ensuite la possibilité de se servir du site pour scanner des cibles en exploitant une vulnérabilité dans l’API XMLRPC des rétroliens. Toujours au niveau des rétroliens, on notera diverses autres vulnérabilités

Une base moisie

Quand on part d’une base aussi moisie, on se doute bien que niveau plugins, ça doit un peu être la fête du slip/string… Bingo !

On arrive dans le plus violent avec ce module très populaire, NextGEN Gallery, ici, comme le montre le fichier changelog.txt du module, dans sa version 1.3.5 datée du 17 juillet 2009. Aujourd’hui, nous en sommes à la version 1.9.13. Évidemment ce plugin, dans cette version antédiluvienne, est vulnérable à quelques joyeusetés

Un XSS par-ci, un XSS par-là… Encore un petit par-là, et un splendide upload arbitraire de fichiers images. Le site utilise un autre plugin vulnérable à un XSS, le plugin Subscribe2.

Si les 410 000 euros n’ont ni servi à l’infogérance, ni à la veille sécurité, ni à l’administration système et aux mises à jour pro-actives, ni aux développements spécifiques de fonctionnalités extraordinaires, ce budget a peut-être servi à autre chose, comme le design.

La skin aurait donc été développée par Zeni (site aujourd’hui disparu mais donton trouve encore des traces sur la waybackmachine), « concepteur de sites web complexes », aujourd’hui racheté par Keyrus, spécialiste en « business intelligence ».

Comme le montre ce joli full path disclosure renvoyé par une fatal error, le nom du thème est TAMAYA-V2. Mouais… ben ça fait quand même un peu cher la skin.

Il y a bien un petit hack du plugin zdmultilang, comme en atteste le répertoire zdmultilang-forked dans le répertoire de plugins, mais quand on voit comment il a été utilisé, on se dit que même si le fork a représenté du développement, c’était en pure perte : de simples pages statiques, intelligemment nommées, auraient parfaitement fait l’affaire.

Huit collaborateurs pour poster des billets

Il nous reste donc la gestion des contenus : le site est encore mis à jour, mais aux frais de la fondation cette fois-ci. Politique.net nous explique qu’il a coûté au contribuable la bagatelle de plus de 25 000 euros par mois ! Mais combien étaient-ils pour poster des billets dans un WordPress ? !

A cette occasion, Matignon avait glissé qu’auparavant, deux prestataires externes assuraient la gestion du site de Carla Bruni, pour un coût de 25 714 euros par mois.

Mais ce n’est pas tout, car il a bien fallu faire vivre les contenus du site et là, c’est le NouvelObs qui nous annonce la couleur : soit 8 collaborateurs, pour une rémunération nette globale de plus de 36 000 euros. Soit en tout plus de 61 000 euros par mois pour faire fonctionner un WordPress qui n’a jamais été mis à jour.

Les services du Premier ministre avaient complété cette réponse d’une comparaison avec le dispositif dont bénéficiait Carla Bruni-Sarkozy, qui n’était pas nommément citée :

« Huit collaborateurs étaient affectés au service de la première dame en janvier 2012, pour une rémunération mensuelle nette globale de 36 448 euros.

A celle-ci s’ajoutaient tous les mois les facturations de deux prestataires externes assurant pour la première dame la gestion d’un site internet pour un montant de 25 714 euros, soit une dépense mensuelle totale de plus de 60 000 euros. »

Le contribuable s’est fait escroquer

Pour avoir vu un paquet de sites WordPress, du modeste blog à l’Intranet de la mort avec des tonnes de développements spécifiques, je dois dire que je reste sidéré par le coût pour le contribuable de ce site, si mal entretenu.

Je suis en train d’essayer de me contenir, mais voilà, il faut que ça sorte, le contribuable s’est fait escroquer, c’est pour moi une évidence. Les ingrédients pour arriver à ça sont :

  • des prestataires multiples ;
  • une gestion de projet qui respire l’incompétence ;
  • des choix techniques douteux (des hacks de plugins qui ne sont plus maintenus, et qui empêchent les mises à jour) ;
  • une folie des grandeurs ;
  • et un doigt tendu bien haut au contribuable.