7 pasos para mejorar la seguridad de tu sitio web creado en CMS - Parte 1

7 pasos para mejorar la seguridad de sitios web creados en CMS – Parte 1

23 abril, 2015

Como comentamos en el artículo sobre sitios web seguros, es primordial considerar la seguridad de sitios web. En la primera parte de este post, veremos los primeros cuatro de siete pasos para mejorar la seguridad de un sitio web, sobre todo aquellos que utilizan un administrador de contenidos (CMS).

1. Contraseñas Passwords

Un tema básico, a veces molesto, pero esencial. A la hora de elegir una contraseña todos pensamos «esa es muy difícil, la voy a olvidar, usaré una más sencilla». Este es uno de los peores errores que cometemos, es la forma más común de hackeo, cuando se utiliza una contraseña sencilla, común y fácil de recordar.

Observa esta lista, son las contraseñas más populares del 2013. Algunas contraseñas que puedes encontrar son: password, 12345678, 0000000, letmein, etc.; contraseñas sencillas, fáciles de recordar y sobre todo comunes. Esto debilita la seguridad del sitio ya que son contraseñas que pueden ser rotas fácilmente con fuerza bruta o simplemente adivinándolas. En algunos casos, las contraseñas se encuentran encriptadas, pero eventualmente serán crackeadas.

Algunas medidas que se pueden tomar son las siguientes:

  • Comparar tus contraseñas con listas de passwords populares.
  • Utilizar contraseñas complejas, por ejemplo,%6dj;@l;g(
  • Realizar políticas de cambios periódicos de contraseñas de los administradores y alentar a los usuarios a también hacerlo de manera habitual.

2. Extensiones

Este es un tema que ignoramos comúnmente, se refiere a las extensiones, módulos, plug-ins, widgets o scripts que utilizamos en nuestros sitios. No significa ningún problema el utilizarlos, el abandono de dichas extensiones así como la falta de actualización y de uso, es lo que puede traer problemas de seguridad, ya que puede dejar al sitio susceptible a ataques, pues la mayoría de las veces, estas extensiones reciben actualizaciones de seguridad pues con el tiempo van encontrando pequeñas vulnerabilidades. Existen programas que analizan sitios de internet (por ejemplo, spiderfoot) para adivinar que extensiones utilizan y si alguna de éstas tiene algún problema conocido.

Algunas medidas que se pueden tomar son las siguientes:

  • Mantener siempre actualizados el CMS y sus extensiones/plug-ins/módulos.
  • Eliminar extensiones/plug-ins/módulos que no se utilicen (incluidos templetes ó temas).

3. Usuarios

Los usuarios son siempre el eslabón más débil en cualquier sistema de seguridad en cualquier plataforma. Generalmente los ataques vienen a través de los usuarios y recuerda que los administradores también se consideran usuarios, pero sobre todo hay que tener cuidado con usuarios no validados o con cuentas sospechosas. Es necesario monitorear de manera frecuente la lista de usuarios del sitio y cualquier usuario raro o desconocido, borrarlo, ya que podría ser algún ataque o vulnerabilidad empleada por los hackers.

Hay cosas que tener en cuenta sobre los usuarios de administrador:

  • Crear uno nuevo y eliminar el que viene por defecto.
  • Cambiar el nombre, no utilizar algo común como admin.
  • En algunos casos, existen varios usuarios con privilegios de administrador, hay que saber exactamente quienes son y porqué tienen estos privilegios. En caso de que ya no trabajen en este sitio, se les debe remover de la lista de usuarios o por lo menos sus privilegios de administrador.
  • Revisar los registros por intentos múltiples de acceso como administrador.

No olvides a los usuarios que acceden a través del FTP, que aunque es un protocolo muy fácil de usar y realmente útil, también es altamente vulnerable. Hay que estar pendientes de los registros de usuarios que ingresan al FTP, todos deben de ser usuarios conocidos y deberían tener acceso por una buena razón, en caso contrario, es mejor eliminarlos.

Algunas medidas que se pueden tomar son las siguientes:

  • Verificar cuentas de administradores.
  • Revisar todas las cuentas de usuarios.
  • Eliminar cuentas que no se utilicen y anónimas, sobre todo las de FTP.
  • Cambiar constantemente la contraseña del FTP.
  • Revisar los registros, buscando ataques de fuerza bruta.

4. Permisos

Los permisos son uno de esos temas usualmente malentendidos y siempre abusado por los hackers. El modelo de permisos varía de acuerdo al sistema, ya sea Linux o Windows. Trataremos este tema usando el modelo más simple, Linux.

Propietario.– permisos únicamente para el usuario propietario del archivo o directorio.
Grupo.– permisos para un grupo de usuarios asignados con acceso al archivo o directorio.
Público.– permisos generales, para todos los usuarios.

Dentro de este modelo existe un formato numérico octal que se utiliza para asignar los diferentes permisos. Un error muy común es utilizar los valores 777, significa que el archivo o directorio puede ser leído, escrito y ejecutado por quien sea, cualquier usuario de cualquier nivel. Esto prácticamente es dejar la puerta abierta para recibir ataques y es común en un desarrollo flojo dejar estos permisos en el directorio de imágenes o en el directorio de uploads.

Las causas de estos errores son generalmente humanas, una mala administración del sitio, un sistema comprometido desde su concepción, extensiones o módulos mal programados o simplemente olvidos y descuidos.

Algunas medidas que se pueden tomar son las siguientes:

  • Asignar permisos para directorios y subdirectorios en 755, permisos para el propietario de lectura, escritura y ejecución, el grupo y otros pueden leer y ejecutar el archivo.
  • Asignar permisos para archivos en 644, el usuario propietario puede leer y escribir, el grupo y los demás usuarios sólo pueden leer el archivo.

Sugerimos ingresar a través del FTP y asignar estos son los permisos, pero pueden variar en casos muy específicos, es tarea del administrador elegir la mejor opción. Y aunque existen aplicaciones, extensiones o módulos, incluso servicios de hospedaje, que requieren permisos 777 para funcionar correctamente, recomendamos mejor no utilizarlas.

Todos estos pasos son apenas un inicio para crear y mantener lo más seguros posibles nuestros sitios web. Siempre debemos tomar en cuenta que las amenazas se mantienen en continua evolución y de la misma manera nuestras estrategias deben ampliarse continuamente. La conectividad sin precedentes de la era de Internet nos brinda tantas ventajas como desafíos.

En el siguiente artículo te mostraremos cómo mejorar la seguridad de tu sitio web en CMS realizando los parches, revisando los registros y realizando respaldos y pruebas de restauración.



Contacto