Uh si, esa tendencia de no habilitar comentarios que es común hoy en día la baja bastante.
Y es una pena porque, hoy en día, el debate sano es algo que se esta perdiendo y estas cosas no ayudan con la causa.
El spam nunca termina
Pasaron años y años y la lucha contra el spam nunca se termina, para aquellos que lidiamos con spam en sitios web es ya una tarea diaria encontrar la vuelta y pensar siempre cómo lograr evitarlo y cómo darle a los usuarios legítimos una experiencia aceptable.
La semana pasada tuve uno de esos "encontronazos" con el spam y el intento de ataque en un sitio amigo, pero no es el único caso, les voy a contar algunas cosas que me sirvieron y otras que no tanto...
Comment Spam
Primero que nada, no ha terminado, sigue ahí, muy activo el spam de comentarios.
En el caso de Tecnogeek, como uso Wordpress, hay algunas herramientas que sirven para controlarlo y funcionan bastante bien. No es perfecto, pero logro tener el sitio limpio de spam, vean lo que atajo a diario:
Mucho sitio apuntando a Turquía, Rusia, Japón, China, países que jamás leen mi blog, por lo que más adelante les cuento la estrategia que estoy usando.
Akismet es el plugin más usado en WP para atajar spam, la verdad que funciona muy bien pero no tiene sentido que sea tan fácil comentar en una época en la que pocos dejan comentarios en blogs. Algunos optan por sencillamente cerrar los comentarios. No es mi estilo, prefiero la interacción, aunque sea poca, es humana.
Los spammers están todo el tiempo buscando sitios "limpios" para promover casinos, el 90% del spam es de casinos online hoy en día, ludopatía por todas partes y lo que no es casinos es porneta, estafas y distintos engaños para que la gente pierda su dinero.
Esos spammers buscan desesperadamente sitios que no estén contaminados por ellos mismos, así de ridículo todo.
En el caso de mi blog es más fácil, nadie automatizó el envío de spam a mis forms, tienen un sistema de seguridad diferente y bloqueo muchas keywords que hacen que, como mucho, al año un o dos mensajes pasen, NADA MÁS. La joya de usar un sistema oscuro.
Pero este no es el único método de spam que hay, curiosamente hay más.
User Spam
Lo noté en mi blog primero, luego googleando ví que no era el único, una serie de usuarios turbios, como mucho compartían el nombre y luego tres letras.
Encontré que en otros sitios también intentaban entrar estos usuarios, Andreasrpf, Andrewlulge, Andreasirg, ¿Qué era todo esto?
Pues bien, por lo que pude averiguar estos spammers dejan registrados los mismos usuarios en decenas de sitios web, luego de un tiempo entran a usarlos y tratar de enviar spam y/o escalar privilegios aprovechando vulnerabilidades con un usuario ya creado en el sistema.
Un bot automatiza el re-descubirmiento de estos usuarios, donde logran entrar al login (sea que el usuario se creó de forma honesta o vía un bug/inyección) lo validan y empiezan a romper el sitio con spam.
Más avanzado que el clásico spam de comentarios, el tener un usuario ya registrado te permite pasar varios controles que algunos sitios tienen, como el de "un primer comentario aprobado para poder dejar el segundo". Regla muy común en wordpress.
Como en mi blog nunca registraron nada los detecto fácil, pero me dan falsos negativos de login, así que decidí primero banear una larga lista de estos login spam para detectar y... son muchos eh! Todos los días, sin parar.
En el blog lo voy a controlar con Recaptcha porque por IP regional no se puede ¿Por qué? Porque usan bots instalados en IPs europeas de alta calidad, así es, mucho civil que no sabe que su router o PC es utlilizado diariamente para atacar sitios.
VPS asesinos
En mi blog en particular tuve varios spiders de VPS, estimo que son spiders de empresas que están entrenando modelos de AI y necesitan obtener información de la red de forma violenta y rápida para lograr sus metas.
Como fuere hay un par de proveedores que son los mayores culpables, armé una listita de IPs que usan muy seguido.
Hetzner.de es una de las empresas de VPS a las que me quejé y básicamente me mandaron a cagar diciendo que el uso estaba debajo de los límites que ellos decidieron poner... pero para sus servers, no para el mío! Así que le bloqueé todos los tangos de IP posibles. Spammers de mierda.
También recibí soretes de este tipo de VPS varios como Dreamhost, otros de México re densos de Totalplay.net y varios más, todo bloqueado directamente rangos.
Ya lo había hecho con amazon y otros más, no tengo por qué servirle datos a gente que no aporta nada a Internet, que no son más que sanguijuelas de datos.
Ataques deliberados siempre de la misma zona
Pero lo más interesante se me dio con el sitio de un amigo.
Estábamos teniendo problemas con la performance de un VPS, cuatro núcleos, 8 GB de RAM, una muy gruesa cantidad de visitas por día, pero el CPU se iba ocasionalmente al 100% trabándolo todo.
Luego de meses de buscarle la vuelta empecé a mirar bien los logs, había MUCHO acceso al wp-login.php , es decir, mucha gente queriendo ingresar.
Cruzando un poco de info ví que el 99% provenía de Rusia, China, India, Pakistán, esos países desde donde SEGURO un sitio en español no es visitado.
El problema de Wordpress es que, como viene por default, esa página de login está abierta a todo el mundo. Esto se combina con que esa página de login no está cacheada, sumado además que el intento daba un error, pero mucho peor, luego de probar con Wordfence, un Firewall para Wordpress, noté que era muy común que desde un IP de Bulgaria o Mongolia le tiraran cientos de ataques de fuerza bruta al login ¡Lo estaban desplumando!
Me pudrí ¿Cuántos visitantes tenemos desde ahí? Cero, así que armé una regla en Cloudflare:
(ip.geoip.country in {"AF" "DZ" "AZ" "BY" "BW" "KH" "TD" "CN" "EG" "IN" "IR" "IQ" "KZ" "KP" "KG" "LA" "LB" "LY" "MA" "NP" "NE" "NG" "PK" "RU" "SA" "SG" "SO" "SS" "SD" "SZ" "SY" "TJ" "TN" "TR" "TM" "UA" "UZ" "ZW" "ET"})
A todo esos países que le haga un "Challenge" de javascript al que entra, si lo supera, que pase, no hay problema.
Sólo el 0.1% es un usuario legítimo, bloquear todos esos rangos de IP fue un éxito.
Ahora el procesador anda por el 40% en promedio, dejando margen para muchos visitantes más, de hecho, muchísimos más porque el 90% de la gente ve una versión cacheada del sitio que ni necesita uso de CPU, pasa como quiere y super rápido (logramos re buenos tiempos de renderizado y Google le quiere más el sitio a mi amigo, así que está contento).
Esta regla estoy empezando a aplicarla en todos los sitios que tengo con Cloudflare porque es mucho mejor hacerlo desde ahí, bloquea antes de que llegue a tu servidor.
La única mala es si tenés negocios en China 😁 y no te pueden encontar.
Ahí hay otra forma de hacerlo, con Cloudflare está la VPN Warp que permite cerrar el área de administración del sitio a un rango de IPs que sólo sean los que usan esa VPN, pero como tienen muchos redactores en ese sitio iba a ser alto bardo. Eso quedará para otro día, jeje.
Otros posts que podrían llegar a gustarte...
Comentarios
-
-
el spam, provocado por las reglas de SEO de Google (enlaces entrantes en cualquier lado) ha estado arruinando muchos sitios, si los links en los comentarios no tuviesen valor alguno el 50% de terminaría (el otro 50% es inundar sitios con campañas, así que no desaparecería del todo).
El spam es uno de los grandes males de Internet, pero yo asumo la responsabilidad de controlarlo en mi blog: no pasarán.
-
Para wordpress también esta el plugin Honeypot para los formularios hechos con Contact Form 7. Funciona bastante bien, porque agrega un campo oculto que lo completan solo los bots, y ahí te lo manda a spam y listo.