Nat 1 – Spam 2

Il fût une époque où je fanfaronnais joyeusement avoir vaincu la première tentative de spam sur le présent site, dans un article orgueilleusement intitulé Nat 1 – Spam 0. Aujourd'hui, je fais moins la maligne.

Le premier but

Pour vous remémorer les épisodes précédents, en bref j'ai signé ma première victoire en utilisant le fait que les spammeurs avaient dégotté une agresse en http://vibrissae.org, sur laquelle il ne peut arriver aucune requête POST légitime vu que tous mes formulaires sont en http://www.vibrissae.org, et ça, ça change tout.

D'ailleurs c'est amusant, parce qu'après mûre réflexion, et considération des arguments de no-www.org, j'ai décidé que la réécriture de mon moteur ferait l'inverse, utiliser vibrissae.org comme domaine principal et rediriger tous les www.vibrissae.org dessus. Je perdrai peut-être encore une partie des spammeurs...

L'égalisation

Je n'ai pas vraiment fait beaucoup de bruit autour, mais en ce moment ce n'est pas la première fois que je perds face au spam. Ceux qui suivent mon site depuis assez longtemps, et surtout assez fréquemment, ont pu remarquer une vague de spam sur une de mes histoires.

J'avoue avoir oublié quand c'était, ni sur quelle partie de Tout ce vert c'est tombé. Je me souviens seulement que c'était cuisant.

Depuis le temps que je vous embête avec ça, vous devez commencer à le savoir, je suis en train de réécrire le moteur du présent blog. Et ça dure depuis début août.

Le problème fondamental, c'est que je n'ai pas vraiment choisi de faire une réécriture, ça m'est plutôt tombé dessus sans que je le veuille vraiment. Je voulais juste faire une petite modification au plus profond de l'architecture interne, et comme c'était super-mal codé, j'ai tout cassé.

Et bien sûr, je n'ai aucune sauvegarde, et je n'utilise pas de système de contrôle de version ou de choses comme ça, bref je me suis retrouvée avec du code immonde qui ne marche pas. C'est là que je me suis dit qu'il serait peut-être mieux de tout reprendre proprement moins salement à partir de rien.

Et puis il y a eu cette vague de spam. Pour diverses raisons personnelles le nouveau moteur était très loin d'être écrit, et tout ce qu'il me restait du vieux moteur ne compilait plus. Je n'avais donc plus aucun moyen de modifier le binaire, et donc de lutter contre le spam.

Finalement, j'ai dû me résoudre à m'avouer vaincue, et j'ai simplement supprimé la page spammée. Du coup les spammeurs (ou plutôt leurs zombis) se prenaient un 404 et aucun commentaire n'a été ajouté.

Évidemment, la disparition subite d'une de mes histoires a provoqué beaucoup d'émotions parmi mes fans du monde entier, il y a eu des pleurs et de grincements de dents, et certains pays ont même décrété une journée de deuil national. Et pas la peine de chercher maintenant la page manquante pour faire semblant de l'avoir remarqué, je l'ai remise depuis.

La belle

Telle le reflux des marées l'histoire inlassablement se répète. Cette fois-ci, c'est la page d'explication sur le tripcode qui a été touchée.

C'est la page qui a connu le plus de tentatives de spam depuis le début, mais elles étaient jusqu'à il y a peu toutes déjouées. J'imagine que le fait d'être liée depuis wikipedia, depuis l'article sur 4chan, aide a attirer l'attention des spammeurs.

Au début j'avais des scrupules à utiliser le même traitement de choc que la fois précédente, parce que c'est quand même une page qui liée depuis un gros site, et depuis chaque formulaire de commentaire de ce site ; on pourrait donc dire que c'est une page plutôt importante. Alors je me contenantais de supprimer l'un après l'autre tous les spams.

Et puis j'ai fini par en avoir assez de modifier tout le temps ce fichier, alors je l'ai mis en lecture seule. De cette façon les nouveau commentaires ne sont pas enregistrés, et un simple rechargement interne de la page permet de revenir à la version propre. Et si par hasard un commentaire légitime était posté, je pouvais encore le remettre en lecture/écriture, le temps de le sauvegarder pour de vrai.

Mais même ça a fini par se révéler vraiment lassant. Alors je me suis encore une fois avouer vaincue, ils sont trop fort pour moi. J'ai donc supprimé provisoirement cette page. C'est moche, mais c'est la vie. Lorsque le nombre de requêtes louches sur cette page auront cessé, je la remettrai. Ou lorsque j'aurai fini le nouveau moteur, suivant ce qui arrive le plus tôt.

No future

Mais maintenant que le moral tient à peu près la route, je passe du temps sur ce nouveau moteur, parce que ça commence aussi à me lasser de perdre face à une pauv' armée de zombis.

Le match n'est pas fini. J'ai plus d'un tour dans mon code, il faut juste le coder.Soon...

Publié le mercredi 21 novembre 2007 à 12:42.

Catégories : Geek Site

Commentaires

1. Le mercredi 21 novembre 2007 à 13:31, par _FrnchFrgg_ :

Utilise un système de contrôle de révisions, cette fois. Je peux te faire un crash course sur GIT, tu n'en reviendras pas.

2. Le mercredi 21 novembre 2007 à 16:48, par Laurent :

Git ici aussi. J'ai un blog zéro-spam, modulo l'utilisation d'un peu de javascript qui peut être indésirable.

3. Le mercredi 21 novembre 2007 à 18:06, par Ness :

Bon, moi, vous me parlez un peu chinois, tous.
Pour ma part, j'avais tout le temps des spams sur mon livre d'or. J'en ai eu tellement marre que j'ai inséré un Capcha. Maintenant, tout marche bien.
Du côté de mon tagboard, même combat, sauf que je ne voulais pas mettre de capcha, c'est un peu chiant pour un chat en ligne. Alors je fais une vérification des commentaires, et tous ceux qui contiennent des http:// sont supprimés automatiquement. Vous me direz que ça limite la possibilité de poster des liens, mais non, car il y a une case exprès pour poster un lien, justement.
Depuis que j'ai fait ça, tout roule :)

4. Le jeudi 22 novembre 2007 à 18:59, par _FrnchFrgg_ :

Ness, git, c'est un Revision Tracking System. En gros, c'est un logiciel qui permet de conserver tout l'historique des fichiers d'un projet au lieu de seulement avoir une seule version (l'état dans lequel on l'a laissé).

Ça permet aussi d'avoir un historique plus compliqué que juste une évolution linéaire. Tu peux avoir des "branches", par exemple si tu décides de garder un historique des corrections basiques, et un historique des améliorations brutales; ou encore une branche temporaire pour l'écriture d'un nouveau chapitre.

Tu peux ensuite remélanger deux branches, et là le logiciel fait exactement ce qu'il faut, c'est à dire qu'il arrive à mélanger les changements intelligemment, même si par exemple tu as ajouté une phrase au beau milieu d'un paragraphe plein de fautes, et que dans l'autre branche tu as corrigé les fautes.

Un tel logiciel est encore plus utile pour les projets avec plusieurs collaborateurs.

D'autres questions ?

Copyright © 2007-2008 Natacha Kerensikova

Lithium Blog - commit dad867adc7a3fc6476990c37fcfa09685831b7d9 - Thursday 7 February 2008