J'avais encore un serveur dans les choux ce matin. Un serveur pourtant en parfaite santé, qui fonctionne très bien depuis des années.

Impossible d'accéder à l'OS, la carte réseau répondait bien aux sollicitations par ping, j'ai du forcer une coupure de courant au risque de perdre des données et le bloc d'alimentation. Et là, je suis content d'avoir un Master Switch accessible à distance pour m'éviter un déplacement de deux heures pour une intervention de deux minutes en console !

Il y a quelques jours j'avais déjà repéré des ralentissements liés à des requêtes SQL gourmandes, mais rien de très anormal sur des grosses tables (forcément sans l'index qu'il faut pour les trier...).

Ce serveur est un mutualisé, il contient environ 200 sites de clients sur lesquels je ne suis jamais intervenu et une centaine de sites à moi ou gérés par des collègues freelances.

Pas de chance, c'est une fois de plus un site pas géré qui était touché par un robot utilisant un programme de soumission de formulaires pour bourriner avec des messages de spams.

Le hic n'est pas forcément qu'en quelques mois plusieurs millions d'enregistrements ont été mis dans la base de données inutilement (contenant des liens vers sites pornos, pilules d'extension de pénis et de bandaison ou autres merdouilles), mais plus que ces pages bourrées de spams étaient parfois affichées (car parcourues par des moteurs de recherche) et que par conséquent ça lançait en boucle la construction d'un index temporaire sur une table gigantesque bloquant ainsi les accès à la base de données, et par extension au serveur qui n'avait pas assez de ressources pour tout traiter.

Résultat des courses j'ai passé 3 heures à chercher la source du problème et la circonscrire. Le serveur a été inaccessible pendant près de 12 heures avec les sites présents dessus tous HS. Un samedi soir et dimanche matin, c'est pas la cata vus les sites mais par principe ça me gonfle.

Le logiciel utilisé sur le site concerné par cette attaque était une fois de plus un script open source, trouvé au hasard, non maintenu et sans protection contre ce genre de choses (le minimum étant d'éliminer le HTML de ce qu'on envoi dans un simple commentaire, le mieux étant de s'assurer que ledit commentaire est envoyé par le formulaire du site et non appelé en direct de l'extérieur et pour rappel, les captchas ne servent à rien si ce n'est faire chier les internautes).

Comme à chaque fois depuis que je fais de l'hébergement et perds du temps sur des accès extérieurs non sollicités, c'est un script qui n'a pas été maintenu, qui n'a pas été codé proprement et qui en plus n'était plus censé être utilisé par le site mais a quand même été laissé sur son FTP !

Ce qui est chiant, c'est que quand on me demande pourquoi je fais du personnalisé, développé par moi ou des collègues mais non basé sur de l'open source, on ne comprends pas mes arguments. Si les gens étaient capables d'installer les patchs sur leurs sites ça ne me poserait pas de problème, mais une fois que c'est en place la plupart n'y touchent plus et ne savent même pas qu'il y a des sources d'attaques possibles. De toute façon ils s'en foutent jusqu'à ce que ça se voit sur leurs pages ou que le site soit inaccessible ou qu'ils puissent plus envoyer d'email parce que leur quota est dépassé alors qu'ils n'en envoient pas (mais qu'un bot le fait pour eux sans qu'ils le sachent).

Cet incident est la goutte d'eau qui fait déborder le vase déjà trop plein : j'arrête l'hébergement mutualisé et dégage tout le monde. J'en ai marre de perdre du temps sur ce genre de choses pour 30 euros par an ! A compter de demain je ne renouvelle plus les sites et leur propose de s'héberger ailleurs (avec prestation d'assistance au transfert s'ils n'en sont pas capables eux-mêmes).