Seguridad

¿Proteger el planeta luchando contra los piratas de sitios web?

¿Proteger el planeta luchando contra los piratas de sitios web?

Cuando pensamos en la «seguridad» de nuestros sitios web, la relación con la «ecología» parece muy lejana, incluso improbable. Sin embargo, la piratería tiene un coste energético real y nada desdeñable. ¿De dónde viene este impacto energético y cómo combatirlo? Le damos las respuestas.

¿Quiénes son los piratas y cuáles son sus objetivos?

Fuente de la imagen: GeekWire, ‘Mr. Robot’ Rewind: Analyzing Fsociety’s hack-filled cyber heist in episode 6

Los piratas han evolucionado mucho en la última década. Ya no hablamos del tópico del adolescente encerrado en su sótano, escondido tras su teclado y sus gafas, que descubre la contraseña de la biblioteca de su instituto y que quizá ponga su seudónimo en la web de la panadería del barrio para presumir ante sus amigos piratas.
No: los verdaderos piratas modernos están organizados y no se limitan a unos pocos sitios concretos. Los piratas atacan todos los sitios. Todo el mundo es un objetivo. ¿Su meta? Atacar en todas partes para aumentar las probabilidades de «éxito» y, en última instancia, ganar el máximo dinero posible con publicidad, spam o «phishing» (suplantación de identidad). Para lograrlo no tienen ningún escrúpulo ni, por supuesto, ninguna ética. Todo vale.

¿Es vulnerable mi sitio?

Como hemos visto, todo el mundo es un objetivo, lo que significa que si tiene un sitio web, hay aproximadamente un 100 % de probabilidades de que sea atacado. La cuestión, por tanto, es saber si su sitio está protegido o no.

Por lo general, los sitios sin mantenimiento y que no han recibido los cuidados necesarios para su protección son los más vulnerables. Pero son sobre todo los CMS (WordPress, Joomla, Drupal y otros) los que están en el punto de mira, porque son los más utilizados.

En efecto, en un CMS, popular por definición, se acabarán descubriendo inevitablemente fallos de seguridad con el tiempo. Un código «perfecto», totalmente invulnerable «ad vitam aeternam» y a la vez rico en funcionalidades todavía no existe. En cuanto es posible cualquier interacción con el usuario o el visitante del sitio, puede existir un fallo.

Estos «fallos» o «vulnerabilidades» son puertas abiertas involuntarias en el código PHP de su sitio que permiten un acceso no autorizado a archivos, datos o funcionalidades. Su explotación puede ir desde «permitir el envío de spam» hasta «permitir el control total de los archivos y la base de datos del sitio».

Una vez descubiertos, estos fallos suelen hacerse públicos por dos motivos principales: o bien para obligar al editor a publicar el parche, o bien, una vez corregidos, para mostrar el peligro que suponían y animar a los usuarios a actualizar. Los editores de software suelen corregirlos muy rápido, pero si el sitio no está actualizado, resulta muy fácil de piratear.

Así que, puesto que tiene la certeza de que le atacarán, asegúrese de no ser vulnerable evitando caer en alguno de los 7 errores capitales de seguridad en la gestión de sitios web.

El modo de operar de los piratas

La forma «fácil» para un pirata de hacerse con el control del máximo número de sitios de manera rápida y automatizada: desarrollar programas que examinan todos los sitios en busca de vulnerabilidades conocidas en los grandes CMS.

Muchos piratas empiezan buscando servidores web sin proteger para instalar en ellos sus scripts y/o robots de piratería. Con varios servidores se fabrican así una «máquina de guerra» controlable a distancia. Este conjunto de servidores se denomina «botnet».

A continuación elaboran listas lo más completas posible de todos los sitios web conocidos, después listas de fallos conocidos, y programan una forma de comprobar la presencia de esos fallos en un conjunto de sitios. Su botnet envía entonces numerosas peticiones a cada uno de los sitios de la lista para encontrar un fallo que les permita tomar el control. Si un sitio es vulnerable, el pirata puede sacarle partido.

Por supuesto, también existen los ataques de fuerza bruta, en los que el robot prueba todas las contraseñas y nombres de usuario. Un acceso de administrador al sitio también permite hacerse con su control.

El uso que se hace del sitio va desde la desfiguración hasta el envío de spam o la «minería» de criptomonedas, pasando, por supuesto, por redirecciones a sitios publicitarios, estafas o la creación de páginas de «phishing» en el sitio.

En definitiva, los ataques dirigidos específicamente contra un sitio concreto son poco frecuentes: en la gran mayoría de los casos se observan ataques masivos que se dirigen a sitios más bien aleatorios, sea cual sea su popularidad.

Un coste energético importante

Tendemos a olvidarlo, pero cada petición a un sitio web exige cierta potencia de cálculo al procesador del servidor, y esa potencia de cálculo no existe sin potencia eléctrica: el servidor consume una determinada cantidad de vatios en cada carga de página. Esta potencia es mayor o menor según lo optimizado que esté el sitio.

Pues bien, los intentos de pirateo citados anteriormente tienen un punto en común: se envían muchísimas peticiones inútiles a los servidores que alojan los sitios. Esto genera un uso intensivo del procesador y, por tanto, un fuerte aumento del consumo eléctrico.

Un servidor en reposo consume poca energía, sobre todo gracias a los sistemas de ahorro energético que Dell e Intel incorporan en los servidores que utilizamos. Pero un procesador a plena carga consume una cantidad considerable de electricidad: el exceso de consumo puede ir de 50 a 300 vatios por servidor según su capacidad.

Además de la fase de búsqueda de fallos e intentos de pirateo, el uso posterior de un sitio pirateado también puede requerir muchísima energía. El peor caso es cuando el sitio intenta «minar» criptomonedas.

Aunque es difícil de medir, estimamos que, sin ninguna medida preventiva, más del 75 % de las peticiones procesadas por los servidores web son probablemente intentos de pirateo. Una parte nada desdeñable procede también de los motores de búsqueda.

Doble penalización energética

El consumo eléctrico directo es una cosa. Pero en un centro de datos, las salas están climatizadas para que los servidores funcionen correctamente en un entorno denso (los servidores se montan en rack, unos encima de otros). En un centro de datos, si consume más energía para el cálculo, después consume más energía para la refrigeración.

Aunque nuestro propio centro de datos se refrigera de forma ecorresponsable (sistema de refrigeración por evaporación de agua de lluvia, que requiere un consumo eléctrico reducido), la mayoría de los centros de datos utilizan climatizadores convencionales que consumen muchísima energía. El consumo provocado por los robots es, por tanto, muy considerable, sobre todo a escala mundial.

¿Por qué y cómo luchar?

Nunca podremos detener los ataques, pero sí podemos defendernos y bloquearlos, evitando así el consumo inútil de recursos y de energía. De la disuasión a la neutralización, existen varios medios de protección.

El webmaster: la disuasión

Por un lado, el webmaster tiene un papel que desempeñar en la disuasión. Al proteger su sitio, el webmaster puede «ayudar» al pirata (o robot pirata) a darse cuenta rápidamente de que se empeña en vano: el sitio está actualizado, no hay ningún fallo de seguridad conocido, no tiene sentido continuar. Por poco sofisticado que sea el ataque, debería remitir pronto. Y, sobre todo, así se evita ser pirateado.

El webmaster también puede instalar módulos de seguridad que bloqueen automáticamente las IP atacantes, como por ejemplo el plugin WordFence para WordPress, que (entre otras cosas) protege contra la fuerza bruta.

El webmaster puede utilizar además las herramientas de seguridad que ofrece su proveedor de alojamiento. HaiSoft ofrece varias, que veremos a continuación.

Por último, un sitio protegido es un sitio que no será pirateado y que, por tanto, generará un menor consumo eléctrico.

Así pues, protegerse solo tiene ventajas.

El proveedor de alojamiento: el (gran) brazo armado

Por otro lado, un proveedor de alojamiento como HaiSoft tiene, por supuesto, un papel fundamental en esta lucha y puede evitar numerosos ataques.

En HaiSoft hemos implantado varias protecciones automáticas. Filtran los ataques, los detectan y bloquean las IP de los atacantes. Una vez bloqueada la IP, las peticiones ya no llegan a los servidores y el problema queda resuelto.

Evidentemente, el proveedor debe utilizar software de vanguardia y configurar los accesos sensibles con gran rigor para evitar cualquier intrusión, o incluso bloquear cualquier intento de intrusión, mediante el filtrado de puertos o de IP.

También hemos comprobado que es necesario un seguimiento manual y frecuente para contrarrestar los ataques que se escapen de las redes de los sistemas automáticos. En efecto, a veces la «carga» (uso de los servidores) generada por un robot pirata no basta para ralentizar nuestro servidor y disparar una alerta de monitorización. Por eso hemos implantado además sistemas de monitorización en tiempo real, que nos permiten comprobar de forma regular, eficaz y más precisa el uso de los recursos.

Un ejemplo: en lugar de ver picos de uso más o menos aleatorios (típicamente cargas de página), el uso se vuelve constante (cargas de página continuas, realizadas por un robot).

Servidor con un uso normal
Servidor con sitios atacados

Gracias a este tipo de gráficos sabemos que hay una actividad anómala en el servidor e investigamos a fondo para bloquear las pocas IP que atacan sitios alojados en él.

Las medidas adoptadas por HaiSoft

Estas son, por ejemplo, las principales medidas implantadas de serie en el alojamiento compartido de HaiSoft:

  • Protección contra la fuerza bruta (Fail2ban) en numerosos servicios, incluido el inicio de sesión de WordPress
  • Cortafuegos de aplicaciones que bloquea las peticiones peligrosas, los escaneos de robots y los intentos de pirateo (y que activa el bloqueo de IP por Fail2Ban en caso de repetición)
  • Filtrado de puertos y de IP en los servicios sensibles
  • WordPress Toolkit, con protecciones que pueden activar el bloqueo de Fail2Ban, así como detecciones adicionales contra robots
  • Comprobación frecuente y precisa del uso de los recursos para detectar ataques, y bloqueo manual de las IP atacantes

¿Es cliente de VM o de servidor dedicado? Le proponemos aplicar todas estas medidas de forma gratuita a todos nuestros clientes de VM y servidores dedicados, dentro de los servicios gestionados incluidos con todos nuestros servidores.

Balance

Estas medidas han permitido dividir entre 3 y 4 el uso de CPU en los servidores compartidos y, por tanto, reducir drásticamente nuestro consumo eléctrico. Además, han rebajado la carga de los servidores a un nivel manejable y han mejorado notablemente el tiempo de respuesta de los sitios. Sumado a la migración simultánea de los servidores a SSD, el rendimiento es ahora mejor que nunca.

El inconveniente es que ciertas situaciones pueden provocar falsos positivos. Por ejemplo, si en cada página de su sitio se llama a un archivo cuyo acceso está prohibido, provocará un error en el servidor web con cada clic: la repetición de estos errores puede interpretarse como un ataque, lo que bloqueará su IP. Esto exige ocasionalmente un nuevo tipo de soporte, pero reduce mucho más las consultas por lentitud.

La frecuencia de los pirateos de sitios ha disminuido desde la implantación de estas medidas; no obstante, como también hemos trabajado mucho para que los usuarios pasen a versiones de PHP más recientes y actualicen sus scripts, es difícil saber en qué proporción han influido estas medidas de seguridad.

Conclusión: una lucha en la que todos ganan

La ventaja de esta lucha es que todo el mundo sale ganando:

  • Los propietarios de sitios ganan en seguridad y rapidez, y sufren menos pirateos
  • Los proveedores de alojamiento reducen su consumo energético y reciben menos solicitudes de soporte
  • Se ahorran los recursos de nuestro planeta

¿Está protegido su sitio? ¿Cuenta su servidor con las protecciones mencionadas en este artículo? No dude en ponerse en contacto con HaiSoft para obtener más información.

← Todos los artículos del blog