En fin de semaine dernière, j’ai étudié les IP qui se connectaient, et tenté de détecter un schéma de consultation qui permettrait de décider qu’une IP est un bot. J’ai décidé un petit peu rapidement que les IP qui consultent certaines pages sans être connecté étaient des bots. Ça m’a permis de bloquer 10000 IP distinctes, et je ne me suis rendu compte que je m’étais auto-bloqué à mon domicile qu’au moment de couper le VPN pro... Il m’a fallu le WE pour m’en rendre compte, et encore 24 heures de plus pour décider de supprimer ces 10000 IP du firewall ; parfois, je suis lent à la détente. Je ne connais donc pas ton IP en particulier @vanderling, mais par contre, ton IP peut se retrouver au milieu de milliers d’autres sans autre raison qu’une erreur de jugement de l’un d’entre nous, et comme c’est moi en ce moment en particulier qui m’y colle, et bien voilà.
Aujourd’hui, dans l’après-midi, nous avons, comme le relate @arno, eu à gérer un millier d’IP particulièrement sauvages, qu’il a heureusement été relativement facile d’identifier, au moyen des nouveaux outils d’analyse des logs, que nous avons enfin pu mettre en place, du fait de la nouvelle machine.
Tout ce que nous avons fait ces dernières semaines nous permet de relancer des projets d’évolution, qui avaient été à tort laissés de côté. Travailler sur un environnement obsolète, ça ne motive pas forcément pour réaliser des évolutions, et quand je constate que nous avons entamé l’installation de ce nouvel environnement il y a déjà 2 ans, je me dis que mieux vaut tard que jamais... mais on pourrait sans doute être un petit peu plus efficace ! :-))
Entre autres travaux de fond, que nous avons pu commencer, merci @b_b pour ta disponibilité et ton accompagnement, nous tâchons d’optimiser et d’isoler certains traitements présents dans le code de SeenThis et de SPIP qui normalement ne posent pas de difficultés, mais qui lorsque les bots agressifs deviennent la normalité sont de vraies failles de sécurité pour la stabilité de l’environnement. Je pense par exemple à la façon dont SeenThis calcule les blocages de comptes. Quand il est nécessaire de calculer la page d’accueil d’une page /people/, les requêtes effectuées sur la base de données sont peu performantes, en particulier quand le people en question bloque beaucoup de monde. Ces requêtes sont probablement améliorables. Et toute amélioration assure que la prochaine attaque fera moins de dégâts, et ce sans nécessité de rajouter des ressources (processeur, mémoire...).