Los sitios web estáticos almacenan contenidos ya renderizados, por lo que no necesitan acceder a ninguna base de datos, ejecutar secuencias de comandos complejas ni depender de un motor de ejecución cada vez que un usuario solicita una página.

Eso se traduce en claras ventajas en tiempos de carga y seguridad: las páginas estáticas ahorran mucho tiempo de servidor y tienen menos vulnerabilidades. Eso, a su vez, significa que los motores de búsqueda clasificarán mejor las páginas estáticas que sus equivalentes dinámicas.

Los expertos en SEO están recurriendo al contenido estático siempre que pueden, para competir mejor en un mundo en el que una fracción de segundo puede marcar la diferencia entre el éxito total y el fracaso absoluto. El despliegue de contenidos estáticos se ha convertido en una palabra de moda entre los estrategas de marketing, y al personal informático le encanta tener un punto menos vulnerable que vigilar.

Pero cuidado: no son 100% a prueba de piratas informáticos, así que si está planeando desplegar contenido estático en su sitio web, hay algunas prácticas recomendadas que debe seguir para mantenerlo seguro.

Utilice cabeceras HTTP de seguridad

Las cabeceras deseguridad son un subconjunto de las cabeceras de respuesta HTTP — un paquete de metadatos, códigos de error, reglas de caché, etc. que el servidor web añade al contenido que sirve — diseñado para decirle al navegador qué hacer y cómo manejar el contenido que recibe. No todos los navegadores admiten todas las cabeceras de seguridad, pero hay un pequeño conjunto que es bastante común y proporciona medidas de seguridad básicas para impedir que los piratas informáticos exploten las vulnerabilidades.

X-Frame-Options: SAMEORIGIN

La cabecera X-Frame-Options está pensada para desactivar o mitigar los riesgos impuestos por los iframes en su sitio. Los iframes pueden ser utilizados por piratas informáticos para apoderarse de clics legítimos y dirigir a los visitantes a cualquier URL que deseen. Existen diferentes formas de evitar el uso indebido de los iframes.

La mejor práctica recomendada por OWASP (Open Web Application Security Project) sugiere utilizar esta cabecera con el parámetro SAMEORIGIN, que permite el uso de iframes sólo por alguien del mismo origen. Otras opciones son DENY, para deshabilitar completamente los iframes, y ALLOW-FROM, para permitir sólo a URLs específicas poner páginas en iframes.

Consulte la guía de implementación para Apache y Nginx.

Protección X-XSS: 1; mode=block

La cabecera X-XSS-Protection está diseñada para proteger los sitios web de las secuencias de comandos entre sitios (cross-site scripting). Esta función de cabecera puede implementarse de dos maneras:

  • X-XSS-Protection: 1
  • Protección X-XSS: 1; mode=block

El primero es más permisivo, filtrando los scripts de la petición al servidor web pero renderizando la página de todas formas. El segundo modo es más seguro, ya que bloquea toda la página cuando se detecta un script X-XSS en la petición. Esta segunda opción es la mejor práctica recomendada por OWASP.

X-Content-Type-Options: nosniff

Esta cabecera impide el uso de «sniffing» MIME, una característica que permite al navegador escanear el contenido y responder de forma diferente a lo que indica la cabecera. Cuando esta cabecera está presente, el navegador debe establecer el tipo de contenido según las instrucciones, en lugar de deducirlo «olfateando» el contenido de antemano.

Si aplica esta cabecera, debe comprobar dos veces que sus tipos de contenido se aplican correctamente en cada página de su sitio web estático.

Content-Type: text/html; charset=utf-8

Esta línea se añade a las cabeceras de solicitud y respuesta de las páginas HTML desde la versión 1.0 del protocolo HTTP. Establece que todas las etiquetas se rendericen en el navegador, mostrando el resultado en la página web.

Utilizar certificados TLS

Un certificado SSL/TLS es imprescindible para cualquier sitio web porque permite al servidor web cifrar los datos que envía al navegador web a través del protocolo seguro HTTPS. De esta forma, si los datos son interceptados en su recorrido, serán ilegibles, lo que resulta esencial para proteger la privacidad de los usuarios y asegurar el sitio web. Un sitio web estático no almacena la información personal de sus visitantes, pero es esencial que la información que solicitan no pueda ser vista por observadores no deseados.

El uso de la encriptación por parte de un sitio web es necesario para que la mayoría de los navegadores lo marquen como sitio seguro y es obligatorio para los sitios web que pretendan cumplir el Reglamento General de Protección de Datos (RGPD) de la UE. La ley no establece específicamente que deba utilizarse un certificado SSL, pero es la forma más sencilla de cumplir los requisitos de privacidad del reglamento.

En términos de seguridad, el certificado SSL permite a las autoridades verificar la propiedad de un sitio web y evitar que los piratas informáticos creen versiones falsas del mismo. El uso de un certificado SSL permite al visitante del sitio web comprobar la autenticidad del editor y sentirse seguro de que nadie puede espiar sus actividades en el sitio web.

La buena noticia es que el certificado no cuesta mucho. De hecho, puede obtenerlo GRATIS en ZeroSSL o comprar uno premium en SSL Store.

Implemente protección DDoS

Los ataques distribuidos de denegación de servicio (DDoS) son cada vez más comunes hoy en día. En este tipo de ataque, se utiliza un conjunto de dispositivos distribuidos para abrumar a un servidor con una avalancha de peticiones, hasta que se satura y simplemente se niega a funcionar. No importa si su sitio web tiene contenido estático: su servidor web podría convertirse fácilmente en víctima de un ataque DDoS si no toma las medidas necesarias.

La forma más sencilla de implementar la protección DDoS en su sitio web es encargar a un proveedor de servicios de seguridad que se ocupe de todas las amenazas cibernéticas. Este servicio le proporcionará detección de intrusiones, servicios antivirales, escaneado de vulnerabilidades y mucho más, por lo que prácticamente no tendrá que preocuparse por ninguna amenaza.

Una solución tan completa podría resultar cara, pero también existen soluciones más centradas con costes más bajos, como la Protección DDoS como Servicio (DPaaS). Debería preguntar a su proveedor de alojamiento si ofrece un servicio de este tipo.

Otras soluciones más asequibles son los servicios de protección DDoS basados en la nube, como los que ofrecen Akamai, Sucuri o Cloudflare. Estos servicios proporcionan una detección y análisis tempranos de los ataques DDoS, así como el filtrado y desvío de dichos ataques, es decir, el desvío del tráfico malicioso lejos de su sitio.

Al considerar una solución anti-DDoS, debe prestar atención a su capacidad de red: este parámetro indica cuánta intensidad de ataque puede soportar la protección.

Evite las bibliotecas JavaScript vulnerables

Incluso si su sitio web tiene contenido estático, podría hacer uso de bibliotecas JavaScript que imponen riesgos de seguridad. En general, se considera que el 20% de esas bibliotecas hacen que un sitio web sea más vulnerable. Afortunadamente, puede utilizar el servicio proporcionado por Vulnerability DB para comprobar si una biblioteca concreta es segura o no. En su base de datos, puede encontrar información detallada y orientación sobre un montón de vulnerabilidades conocidas.

Además de comprobar si una biblioteca concreta presenta vulnerabilidades, puede seguir esta lista de mejores prácticas para bibliotecas JavaScript que le proporcionarán soluciones a sus riesgos potenciales:

  • No utilice servidores de bibliotecas externos. En su lugar, almacene las bibliotecas en el mismo servidor que aloja su sitio web. Si debe utilizar bibliotecas externas, evite utilizar bibliotecas de servidores incluidos en listas negras y compruebe periódicamente la seguridad de los servidores externos.
  • Utilice la gestión de versiones para las bibliotecas JavaScript y asegúrese de utilizar la última versión de cada biblioteca. Si la gestión de versiones no es una opción, al menos debería utilizar versiones libres de vulnerabilidades conocidas. Puede utilizar retire.js para detectar el uso de versiones vulnerables.
  • Compruebe regularmente si su sitio web utiliza bibliotecas externas que desconoce. De esta forma, sabrá si un pirata informático ha inyectado enlaces a proveedores de bibliotecas no deseados. Los ataques de inyección son poco probables en sitios web estáticos, pero no estará de más hacer esta comprobación de vez en cuando.

Implemente una estrategia de copia de seguridad

Un sitio web estático debe tener siempre copias de seguridad de su contenido cada vez que se modifique. Las copias de seguridad deben almacenarse de forma segura y ser fácilmente accesibles en caso de que necesite restaurar su sitio web en caso de caída. Hay muchas formas de hacer copias de seguridad de su sitio web estático, pero en general, se pueden clasificar en manuales y automáticas.

Si el contenido de su sitio web no cambia con mucha frecuencia, una estrategia de copia de seguridad manual puede ser adecuada: sólo tiene que acordarse de hacer una copia de seguridad nueva cada vez que realice un cambio en el contenido. Si dispone de un panel de control para gestionar su cuenta de alojamiento, es muy probable que dentro de ese panel de control encuentre una opción para hacer copias de seguridad. Si no es así, siempre puede utilizar un cliente FTP para descargar todo el contenido del sitio web a un dispositivo local donde pueda mantenerlo a salvo y restaurarlo en caso necesario.

Por supuesto, la opción de copia de seguridad automática es preferible si desea reducir al mínimo las tareas de gestión de su sitio web. Pero los proveedores de alojamiento suelen ofrecer las copias de seguridad automáticas como una prestación adicional, lo que incrementa el coste total de mantener su sitio web seguro.

Puede considerar el uso de almacenamiento de objetos en la nube para la copia de seguridad.

Utilice un proveedor de alojamiento fiable

Un servicio de alojamiento web fiable es necesario para garantizar que su sitio web funcione sin problemas y con rapidez, pero también para estar seguro de que no será pirateado. La mayoría de las reseñas sobre alojamiento web le mostrarán cifras y comparaciones sobre velocidad, tiempo de actividad y atención al cliente, pero cuando se trata de la seguridad de un sitio web, hay algunos aspectos que deben observarse cuidadosamente y sobre los que debe preguntar a su proveedor antes de contratar su servicio:

  • Seguridad del software: debe averiguar cómo se gestionan las actualizaciones del software; por ejemplo, si todo el software se autoactualiza o si cada actualización se somete a un proceso de prueba antes de desplegarse.
  • Protección DDoS: en caso de que este tipo de protección se incluya con el servicio de alojamiento, pida detalles sobre cómo se implementa, para comprobar si cumple los requisitos de su sitio web.
  • Disponibilidad y soporte SSL: dado que en la mayoría de los casos los certificados son gestionados por el proveedor de alojamiento, debe comprobar qué tipo de certificado ofrece y cuál es la política de renovación de certificados.
  • Copia de seguridad y restauración: muchos proveedores de alojamiento ofrecen un servicio automatizado de copia de seguridad, lo cual es positivo porque prácticamente le permite olvidarse de hacer copias de seguridad, almacenarlas y mantenerlas actualizadas. Pero tenga en cuenta el coste de dicho servicio y póngalo en relación con el esfuerzo que le supondrá mantener usted mismo las copias de seguridad de su contenido.
  • Protección contra el malware: un proveedor de alojamiento fiable debe tener sus servidores protegidos contra el malware, realizando escaneos periódicos de malware y supervisando la integridad de los archivos. En el caso del alojamiento compartido, es conveniente que el proveedor de alojamiento haga uso del aislamiento de cuentas, para evitar que las infecciones por malware se propaguen entre sitios web vecinos.
  • Protección con cortafuegos: un proveedor de alojamiento puede aumentar el nivel de seguridad de los sitios web que aloja desplegando un cortafuegos que mantenga alejado el tráfico hostil.

Compruebe la fiabilidad de la plataforma de alojamiento de sitios estáticos.

Imponga una política de contraseñas segura

Puesto que un sitio estático no tiene una base de datos ni un sistema de contenidos gestionados, tiene menos nombres de usuario y contraseñas que administrar. Pero aún así tiene que aplicar una política de contraseñas para las cuentas de alojamiento o FTP que utilizará para actualizar el contenido estático.

Las buenas prácticas para las contraseñas incluyen, entre otras:

  • Cambiarlas periódicamente
  • Establecer una longitud mínima de contraseña.
  • Utilizar combinaciones de mayúsculas/minúsculas junto con caracteres especiales y números
  • Evitar comunicarlas por correo electrónico o mensajes de texto.

Además, la contraseña por defecto de las cuentas administrativas debe cambiarse desde el principio: se trata de un error común que los piratas informáticos pueden aprovechar fácilmente. No tenga miedo de perder la contraseña; utilice un gestor de contraseñas para gestionarlas de forma segura.

Pongámonos estáticos

Hace unos años, el contenido dinámico era el camino a seguir: todo podía cambiarse y actualizarse fácilmente, lo que permitía rediseñar todo un sitio web en cuestión de segundos. Pero entonces, la velocidad se convirtió en la máxima prioridad, y el contenido estático de repente volvió a estar de moda.

En ese sentido, todas las prácticas de seguridad de los sitios web deberían reevaluarse: seguro que hay menos aspectos a tener en cuenta, pero no hay que relajarse por ello. Esta lista de mejores prácticas seguramente le ayudará a crear su propia lista de comprobación para mantener su sitio web estático sano y salvo.