Siento que el título de esta newsletter sea tan claro y preciso, pero lo digo como lo siento.
La gran mayoría de la gente que conozco y que tiene una página web no tiene ni idea de que pasa en su página web.
Incluso gente que tiene webs que generan mucho mucho dinero cada mes.
Y, créeme, si quieres vivir tranquilo, mejor que no lo sepas.
Ojos que no ven, corazón que no siente.
Porque en el momento que empiezas a analizar de manera eficaz tus logs puede que empieces a sentir un gran dolor de barriga o unas ganas tremendas de hacer un "sudo service apache2 stop" y dedicarte a la cría de renacuajos en cautividad.
¿Por qué?
Pues porque en tu web cada día pasan cosas.
Cosas que tú normalmente no ves.
Cosas que, gracias a $deity en la mayoría de los casos no van a más, PERO que en otras ocasiones te pueden provocar dolores de cabeza muy muy grandes.
...
🤔.-"Bueno, a ver, nuestra web no es tan importante. Nadie va a intentar hacerle nada."
👻.-"Es que ese no es el tema... No son ataques dirigidos, son automatizados. No van a por ti, van a POR TODOS."
...
Cuando ponemos en marcha un WAF en cualquier web, las estadísticas de los 4-5 primeros días suelen poner los pelos de punta.
Una vez activas un conjunto de reglas especialmente diseñado para esa web, solo te queda esperar un rato para comenzar a ver hits... y más hits... y muchos más hits...
He tenido algunas webs con 800-900 bloqueos POR HORA nada más desplegar el Firewall Web.
Y te digo que ver eso en directo y en tiempo real, haces que te preguntes: "¿Y con esto antes que pasaba?"
Pues nada... eso antes impactaba en tu servidor web... y si colaba, pues podían pasar cosas de estas muy chungas...
......
9:00 de un día cualquiera, suena el teléfono y preguntan por mí.
😧.-"Hola, me llamo XXXXX. Mira, yo es que tengo una web en la que vendo XXXXXX y la verdad es que nos va bastante bien, tenemos bastantes pedidos a la semana. Pero desde ayer la web no va y estoy desesperado..."
👻.-"Encantado XXXXXX. A ver, ¿cómo que la web no va? ¿Qué error da?"
😧.-"A ver, da un error de MySQL, recuperamos un backup anterior y funciona... Pero al rato vuelve a dar ese error de MySQL."
👻.-"Vale... Puedes darme acceso..."
Y es aquí cuando accedemos a la admin del VPS del cliente, nos vamos a MySQL y vemos que no había tablas...
Bueno, no exactamente. Existía una sola tabla, llamada README... en la que con un simple select:
mysql> select * from README *************************** 1. row *************************** id: 1 readme: To recover your lost Database send 0.022 Bitcoin (BTC) to
our Bitcoin address: ****************** After this, contact us by email
with your Server IP or Domain Name and a Proof of Payment (Payment ID).
Your Database is downloaded and backed up on our servers. Backups that
we have right now: XXXXX XXXXX XXXXX
Any email without your server IP Address or Domain Name and a Proof of
Payment together will be ignored.
If we dont receive your payment in the next 10 Days, we will delete or
leak your sensitive information. BTC_address: ************************************ email: ******@***mail.com 1 row in set (0.00 sec)
......
¿Divertido no?
Se llama secuestro de datos y ocurre más de lo que crees.
Por un plugin no actualizado, por un 0-day en la aplicación web que usas, por una mala configuración del hosting, por una inyección SQL a través de un formulario mal creado, por una mala versión de PHP, por una API mal asegurada... ¡Por mil y una cosas!
Pero en ese momento tu web SE VA AL SUELO.
Y no tienes nada que hacer. Porque si levantas el backup y no arreglas el error, que a veces no puedes hacerlo porque ni sabes que existe, al rato te la vuelven a tumbar.
Estás en la rueda de los secuestradores y van a ir a por ti hasta que pagues o lo soluciones de alguna manera...
Y, en ese momento, o cuentas con un buen equipo que te ayude a levantar el servicio y a arreglar esa historia sobre la marcha o... estás muy jodido.
De hecho, si quieres minimizar este riesgo, mi recomendación es que pongas cuanto antes un WAF a tu web o la de tus clientes. Cuanto antes.
Esto que te he contado le paso en mitad de la campaña de final de año a un, ahora, cliente. Su web estuvo 6 días KO.
Más del 30% de las ventas de Navidad perdidas. Una alegría para cualquiera.
Asustaviejas, sí, pero esto pasa más de lo que crees. Y no es bonito.
Encima el SEO se te va al carajo y luego la recuperación es lenta, costosa y traumática.
Dicen que una imagen vale más que mil palabras, así que he cogido dicha web y he visto que ha pasado esta noche.
Estas son sus estadísticas de las últimas 8 horas:
No está mal, ¿no?
¿Pero sabes cuál es el problema? Que una vez tienes constancia de esto, te dedicas, como hacemos nosotros, a mejorar las reglas existentes, a comprar reglas de pago, a añadir nuevos conjuntos de reglas y, en definitiva, a mantener el sistema actualizado.
¡Y, aun así, sigues con el miedo en el cuerpo!
Para que veas otro ejemplo de la gravedad de no saber qué está pasando en tu web, esta semana hemos tenido una incidencia, de la que por cierto se han hecho eco en esta noticia los compañeros de Amarillo-Limon, en varias webs.
El crawler-bot de ByteDance, ByteSpider, ha dejado KO muchas muchas webs en su carrera por entrenar su nueva IA y alguna gente ha tardado días en encontrar "qué pasaba", mientras su web rechazaba montones de peticiones de usuarios por sobrecarga.
¿Lo ves ahora o no lo ves? 😱😱😱
Así que mi recomendación final, como no podía ser otra, es que no abras este melón.
No mires que está pasando en tu web o la de tus clientes.
No lo hagas. 🤪🤪🤪
No necesitas un WAF. No necesitas una monitorización en condiciones.
Déjalo estar.
Total, ¿qué es lo peor que puede pasar?
¡Feliz Domingo! ¡Si es que puedes estar tranquilo!
P.D.: Si ves que no te lo quitas de la cabeza, lo mismo tenemos que hablar...
El contenido de esta semana:
Todos aquí: https://pod.link/1721508436
Los enlaces que he ido recopilando:
Este tío cada día duerme menos, al final será un Dementor, pero de verdad...