ArticleCMS Security: Cómo mantener tu sitio web seguro

Publicado: 2022-08-12

La cantidad de sitios en la web está creciendo, al igual que el porcentaje de sitios que son pirateados cada año. Podría ser un bot que intenta explotar una vulnerabilidad conocida o un ataque directo y dirigido a su organización. De cualquier manera, debe adoptar la mentalidad de que será pirateado . Pensar de esta manera fomentará un comportamiento proactivo y mejores prácticas.

Si no está seguro de que alguien quiera piratear su sitio web, eche un vistazo a sus registros web en algún momento. Es probable que encuentre evidencia de que alguien o algún bot intenta piratear su servidor web. Si su organización es de alto perfil, es posible que suceda todos los días. Es imperativo saber de antemano cómo pueden ocurrir los ataques, cuál podría ser el impacto y cómo mitigar el daño. Echemos un vistazo a cómo suceden.

Vulnerabilidades de código

Uno de los exploits más infames que llegaron a la web fue una vulnerabilidad en OpenSSL conocida como Heartbleed. OpenSSL es la capa de software que maneja el cifrado en el servidor para transacciones de datos seguras. A Heartbleed no le importó qué sistema de administración de contenido (CMS) usó porque OpenSSL funciona en un nivel más bajo en conjunto con el software del servidor web. Fue un simple error introducido por un programador muy calificado, y era el tipo de error que cualquiera podría haber cometido.

Lo que hizo que este error fuera tan notable es que más de dos tercios de todos los sitios web seguros se vieron afectados. A pesar de más de 100 contribuyentes a OpenSSL y más de 21 000 contribuciones de código distintas, esta simple vulnerabilidad no fue detectada ni reparada durante casi tres años.

Los dos últimos exploits de alto perfil, Spectre y Meltdown, aprovecharon las vulnerabilidades inherentes a la mayoría de los procesadores informáticos modernos. Permiten a los usuarios de computadoras compartidas (como servidores web) mirar por encima de la pared virtual que separa su entorno de otros sitios que se ejecutan en el mismo hardware.

Dado que la mayoría de los sitios web dependen de docenas de aplicaciones distintas, millones de líneas de código y miles de desarrolladores individuales (sin contar el código de su sitio web), podemos suponer que existen vulnerabilidades en cada sistema operativo, servidor web, CMS y sitio web.

Configuración incorrecta

La razón más común por la que se piratea un sitio es una mala configuración inicial. Muchos administradores de sitios web simplemente no tienen mucha experiencia y hay mucho que saber. Configurar usuarios tanto en el sistema operativo como en el CMS, administrar los permisos de esos usuarios, administrar las reglas del firewall, la configuración del servidor web, la lista continúa. Pero todos estos factores son críticos para la seguridad.

Muchos artículos y guías prácticas cubren solo lo mínimo para simplificar las cosas para los nuevos usuarios. Esto puede estar bien para un individuo o una empresa familiar, pero es inaceptable para una gran corporación pública. A este nivel, los hacks no son solo un inconveniente; pueden tener un impacto serio en un negocio.

Falta de mantenimiento

Cuando se descubren vulnerabilidades de código, se crean parches y se da tiempo a los usuarios para actualizar sus sistemas antes de que la vulnerabilidad se anuncie al público. Lamentablemente, muchos sitios web no reciben parches con regularidad. Volviendo a nuestro ejemplo de Heartbleed, más de tres años después del lanzamiento del parche, todavía había más de 200 000 servidores web que ejecutaban la versión antigua y vulnerable de OpenSSL.

Los sistemas de gestión de contenido modernos tienen capas sobre capas de aplicaciones. Una instalación típica de WordPress tendrá un sistema operativo Linux, software de servidor web, PHP, MySQL y cualquier cantidad de complementos. Todas estas cosas deben ser monitoreadas y mantenidas constantemente. Es un hecho que muchos proveedores de servicios simplemente no pueden mantenerse al día.

humanos siendo humanos

Las vulnerabilidades del código y la falta de mantenimiento pueden parecer aterradoras, pero pueden palidecer en comparación con los riesgos que conlleva permitir que los seres humanos utilicen su CMS. Nosotros humanos son siempre el eslabón más débil y el agente principal en un ataque dirigido.

Todo el mundo quiere ser útil y parecer inteligente, lo que nos hace inherentemente susceptibles a la ingeniería social. Ciertas solicitudes deberían hacer sonar las alarmas, como:

  • "Hola, soy Bob de TI. Estamos detectando tráfico anómalo proveniente de su máquina..."
  • "Voy a enviarte algunas herramientas de diagnóstico y..."
  • "Eres uno de nuestros usuarios avanzados, ¿podrías ayudarme..."

Desafortunadamente, estas técnicas a menudo funcionan en personas vulnerables.

Otro escollo común son las malas prácticas de contraseñas. Eche un vistazo rápido a esta lista de contraseñas comunes. ¿Algo te resulta familiar? ¿Alguno de estos se parece a la raíz de su contraseña o utiliza una técnica similar?

Si es así, su solución no es única o inteligente y debe cambiar sus contraseñas ahora. Un ataque de fuerza bruta comenzará con una lista como esta, introducirá variaciones y posiblemente encontrará su contraseña en minutos.

junto a los pobres clave la opción es reutilizar el mismo en varios sitios. Si su contraseña está comprometida en un sitio y ha usado esa contraseña en otros lugares, está en problemas.

Cómo mantener su sitio seguro

Cualquiera que diga "No podemos ser pirateados" está tentando al destino, pero puede minimizar significativamente los riesgos. Aquí hay algunas salvaguardas y procesos básicos que puede implementar para proteger los sitios de los malos actores.

Buenos hábitos de seguridad

Hay algunas cosas simples que sus usuarios pueden hacer para reducir significativamente el riesgo de que sus credenciales se vean comprometidas:

  • Utilice contraseñas de "frase". Según el Instituto Nacional de Estándares y Tecnologías, frases de contraseña son más memorables y seguras. Los requisitos de contraseña con caracteres especiales y números no son tan efectivos.
  • Utilice un administrador de contraseñas. Un administrador de contraseñas ayudará a garantizar que use contraseñas únicas en cada sitio. También puede establecer y hacer cumplir sus propias pautas de contraseña.
  • Enseñar el arte de la ingeniería social. Brinde a los usuarios el conocimiento para reconocerlo mientras está sucediendo y la confianza para cerrarlo antes de que tenga éxito.

Mantenimiento regular

Mantenga siempre el software actualizado con parches de seguridad y nuevas versiones. Si no es responsable del mantenimiento de su servidor web, presione a todos sus proveedores de servicios para obtener detalles sobre sus procesos que garanticen que su pila de tecnología ejecute los últimos parches críticos.

Esto incluye sistemas operativos, servicios web, lado del servidor analizadores, sistemas de gestión de contenido, bases de datos y todos los complementos.

Las buenas prácticas de mantenimiento se extienden al hardware más allá de su web servidores como conmutadores y cortafuegos. Estos dispositivos deben mantenerse con la misma vigilancia y atención que dedica a su servidor web.

Recuerde, cada vez que se descubra un nuevo exploit, se encontrará involuntariamente en una carrera con los malos. Tienes que colocarte los parches antes de que te encuentren. Hay muchas acciones que realizar y elementos que supervisar, por lo que el mantenimiento de los servidores web es un trabajo de tiempo completo.

Mantén actualizada tu lista de usuarios autorizados y elimina siempre los que han dejado tu organización. Coordine un plan para manejar los despidos porque los trabajadores descontentos pueden causar mucho daño en poco tiempo.

Eliminar vectores de ataque

Cada capa que agrega código y complejidad a su sitio web también presenta vulnerabilidades potenciales, por lo tanto, mantenga su pila de tecnología lo más ligera y simple posible. Elimina todas las aplicaciones y servicios que no sean necesarios. Ejecute solo los servicios que se requieren para que su sitio web y CMS funcionen.

Permita solo el tráfico entrante a su servidor web en los puertos que se requieren para su sitio web, CMS u otros servicios necesarios. No tiene sentido exponer servicios que no utiliza.

Limite el acceso a su CMS a los usuarios de su red o VPN. Esto puede afectar a sus administradores de contenido, así que considere esta compensación cuidadosamente.

Mantenga las copias de seguridad rotativas

Refiriéndose a un punto anterior, la mentalidad más segura es asumir que será pirateado. Subraya el valor de mantener buenas copias de seguridad. Un plan completo de copias de seguridad podría incluir el mantenimiento de seis copias de seguridad diarias rotativas, cada cuatro semanas, cada seis meses y copias de seguridad anuales.

Debido a que los hacks no siempre se descubren de inmediato, nunca se sabe cuánto tiempo debe retroceder. Una sola copia de seguridad diaria es arriesgada.

También tenga en cuenta que simplemente configurar el plan de copias de seguridad no es suficiente. Debe verificar regularmente que todas las copias de seguridad se estén ejecutando y que pueda recuperarse de cualquiera de esas copias de seguridad de manera oportuna. Imagínese descubrir que sus copias de seguridad no funcionaban solo después de haber sido pirateado... No es un escenario en el que la gente quiera encontrarse.

Entonces, ¿qué pasa con SAM?

Hay algunas propiedades únicas de SAM que hacen que sea más difícil piratear sitios creados con esta herramienta que sitios creados con otros sistemas de administración de contenido.

SAM es una aplicación única para mantenerse actualizada porque no tiene complementos y solo requiere los servicios básicos que son componentes centrales del sistema operativo Windows Server. Si confía en las actualizaciones automáticas de Microsoft, su servidor siempre estará parcheado.

Aún más notable, SAM es un generador de sitios estáticos. La mayoría de los sistemas de administración de contenido generan páginas a pedido cuando un usuario las solicita, pero un generador de sitios estáticos funciona generando páginas y publicándolas en el sistema de archivos cada vez que hay un cambio en el contenido.

El CMS no es necesario para que los usuarios vean el sitio web en vivo, y SAM se puede ocultar dentro de su red. En otras palabras, ¡no hay un CMS públicamente visible para hackear! La mayoría de nuestros clientes nunca son conscientes de la distinción, pero es una cualidad que realmente diferencia a SAM de la multitud.

Referencias y recursos

  • Informe de tendencias de sitios web pirateados
  • NoHacked: un año en revisión
  • Seguridad del sitio web: ¿Cómo se piratean los sitios web?
  • Cómo piratean su sitio web: descripción general de las técnicas comunes
  • Encuesta de servidores web de noviembre de 2017
  • El error Heartbleed
  • fusión y espectro
  • Pautas de identidad digital del NIST
  • Las peores contraseñas de 2016