Vulnerabilidades y seguridad en una página web con el CMS Wordpress

Vulnerabilidades y seguridad en una página web con el CMS Wordpress

Un gestor de contenido, es una buena forma de Crear una web corporativa, ya que permite utilizar funcionalidades estándar ya creadas, de forma fácil y gratuita en muchos casos.

Pero esto supone una contrapartida, ya que al ser código abierto, quedan expuestas las medidas de seguridad que utiliza, lo cual es una ayuda para hackers o usuarios malintencionados.

Índice de contenidos

  1. ¿Es Wordpress inseguro?
  2. ¿Por qué esa mala fama o ese mito?
  3. ¿Toda la culpa es de Wordpress?
  4. Vulnerabilidades del core de Wordpress
  5. Qué medidas de seguridad adicionales se pueden llevar a cabo
  6. Los backups como medida de seguridad adicional
  7. Plugins para mejorar la seguridad de Wordpress
  8. Conclusión
  9. Ayuda

1. ¿Es Wordpress inseguro?

Como la respuesta es muy amplia, vamos a considerar otras preguntas adicionales:

¿Inseguro para qué proyecto?

Para gestionar datos secretos de inteligencia de un cuerpo de seguridad de algún país, o para transacciones bancarias de envergadura, no sería lo suficientemente segura, pero eso no quiere decir, que no vaya a cumplir con los requisitos de seguridad de muchos proyecto web.

¿Qué significa o qué entendemos por inseguro?

Inseguro podría ser hackeable, o susceptible de que un usuario malicioso, dañe, colapse o sustraiga datos de nuestro sitio web.

Cada año se reportan varios casos de brechas de seguridad en grandes corporaciones, donde algunos datos quedan al descubierto, a pesar de las grandes medidas de seguridad que toman estas compañías o instituciones.

En base a esto, sería razonable pensar, que un sitio web es seguro, si limita a muy pocas personas, muy expertas y con muchos medios, la capacidad de acceder o dañar tu proyecto web.

¿Tienes una alternativa mejor?

Si comparamos la seguridad de Wordpress, con una aplicación interna del FBI, sí, Wordpress es inseguro. Pero, ¿cual es tu alternativa? ¿Tienes presupuesto para invertir en una herramienta más segura? ¿Tus conocimientos, o los conocimientos de la empresa que contrates, son suficientes para garantizar una mejora en la seguridad? ¿Y por cuánto tiempo pueden ofrecerte esa garantía?

¿Es Wordpress inseguro?

¿Y comparado con otros gestores de contenido?

Seguramente los CMS de la misma popularidad, medios y desarrolladores detrás, tendrán un nivel de seguridad parecido.

Como el software evoluciona continuamente, seguramente si se comparasen diferentes versiones a lo largo del tiempo, los ganadores en lo que a seguridad se refiere, irían cambiando.

¿Vas a hacer buen uso de las medidas de seguridad disponibles?

Una puerta acorazada y el mejor sistema de seguridad para una vivienda, no son seguros si no cierras la puerta con llave, o si directamente la dejas abierta y la cámara de seguridad apunta al techo.

En muchas ocasiones, se producen ataques a sitios o robos de información, llevados a cabo con acciones muy básicas.

Si tenemos un sitio web muy seguro, pero nuestra contraseña de acceso es "123456" o "elefante", esa cuenta es muy susceptible de ser hackeada.

De esta forma podemos concluir, que el usuario es un elemento fundamental en la seguridad del sitio.

2. ¿Por qué esa mala fama o ese mito?

Al ser un gestor de de contenido tan popular, con tantos comentarios hechos por tanta gente con conocimientos tan diversos, y teniendo en cuenta la edad avanzada de la herramienta (nació en 2003), ha habido versiones que han sido criticadas con dureza por algunos usuarios, pero sería injusto pensar que con el inmenso equipo de programadores y colaboradores que hay detrás, no han corregido o llevado a cabo las acciones necesarias, para asegurar lo máximo posible la herramienta más popular y utilizada de Internet.

3. ¿Toda la culpa es de Wordpress?

Hacer un buen uso de los sistemas de seguridad que ofrece por defecto la herramienta, y de otras acciones adicionales que se pueden tomar, es fundamental para mantener el sitio web con un nivel de seguridad alto.

Pero el alojamiento web es otra parte importante del proyecto. Accediendo directamente a los archivos o base de datos del hosting, también puede hackearse o infectar un sitio Wordpress, sin que este haya tenido la culpa.

La protección a nivel de servidor, es otro factor importante que no habrá que dejar de lado. No sólo que la configuración del servidor sea adecuada, sino que el panel o paneles de acceso al servidor, cumplan de igual forma con una serie de requisitos de seguridad.

Por otro lado, el core o la base de Wordpress, es el punto de partida, pero lo normal es que un sitio web tenga instalada una plantilla de terceros y diversos plugins de varios autores.

Este código adicional, puede suponer vulnerabilidades extra, que anulan las competencias en seguridad que tenía el la versión inicial de Wordpress, sin contenido adicional.

4. Vulnerabilidades del core de Wordpress

  • URL del panel conocida "tudominio.com/wp-admin". Sin el usuario y la contraseña, poco podremos hacer, pero de entrada, no se lo estamos poniendo muy difícil a los hackers.
  • Muchas instalaciones por defecto tienen un usuario administrador con nombre de usuario "admin" e ID de usuario "1". Si se cumplen estas dos primeras, sin ningún conocimiento especial, se podrán probar diferentes contraseñas hasta que se acierte. Si se hace un ataque por fuerta bruta, o prueba masiva de contraseñas, la contraseña deberá ser muy difícil de descifrar para evitar un hackeo.
  • La base de datos, tiene tablas con nombre conocido. Como "wp_users" o "wp_options". No será difícil saber qué tabla atacar, en caso de conseguir acceso a la base de datos.
  • Wordpress no gestiona los intentos de login fallido. Esto deja abierta la puerta a los ataques por fuerza bruta.
  • Otras...
Vulernabilidades de seguridad en Wordpress

5. Qué medidas de seguridad adicionales se pueden llevar a cabo

Muchas. En función de la envergadura y seriedad del sitio web, habrá que tomar más o menos medidas, pero al menos las mínimas recomendadas serían:

  • Mantener el core, plantilla y plugins actualizados.
  • Cambiar la URL por defecto del panel de "tudominio.com/wp-admin" a algo como "tudominio.com/sWejsmIUyrLQlXOPXRHmqu".
  • Bloquear los errores 404 de página no encontrada. Si hay muchos, se entiende que el usuario está buscando la URL del panel, por lo que habrá que bloquear su IP.
  • Cambiar el nombre de usuario "admin" si lo hay o bannearlo directamente
  • Cambiar el ID del administrador, si es 1
  • Bloquear los intentos de ataques por fuerza bruta
    • Limitar el número de intentos de login fallidos (a 3-5), y al superarlos, bloquear esa IP
    • Añadir validaciones anti-robot o campos de Google Captcha
  • Exigir una robustez de contraseña mínima adecuada. No permitir contraseñas tipo "12345".
  • Utilizar un certificado de seguridad SSL. Dependiendo del proyecto, habrá que tener en cuenta si es mejor usar un ceritificado de seguridad de pago o uno gratuito.
  • Cambiar el nombre de las tablas de la base de datos. Por ejemplo, cambiar "wp_users" por "KmHvTxljODnwp_users".
  • Cambiar los WordPress Salts o la combinación aleatoria por defecto para cifrar las contraseñas de Wordpress.
  • Añadir el inicio de sesión en dos pasos o Two-Factor Authentication, de forma que sea necesario introducir una clave que llega por correo o SMS al iniciar sesión.
  • Comprobar la seguridad de los directorios y archivos del sitio. Un nivel de seguridad aconsejable es "755" para directorios y de "444" para archivos como "wp-config.php".
  • Etc...

6. Plugins para mejorar la seguridad de Wordpress

Como es normal en Wordpress, para conseguir una funcionalidad, existen gran cantidad de plugins que pueden llevar a cabo esa tarea. Vamos a ver unos cuantos y sus características:

Se trata de un plugin todo en uno, como su propio nombre indica, por lo que tendremos antivirus, firewall, auditor de seguridad y firewall, en un mismo plugin.

Sus funcionalidades se separan en 3 categorías: "Basic“, “Intermediate” y “Advanced“, donde las "Basic" son acciones no invasivas, o medidas de seguridad que no afectan a otros recursos o funcionalidades del sitio, por lo que podemos configurarlas sin miedo a romper nada. Con las “Intermediate” y “Advanced“, habrá que ir con más cuidado, ya que puede ocasionar daños en tu sitio si se hace una mala configuración.

El plugin cuenta con un auditor de seguridad, que permite ver de un vistazo, el nivel de seguridad de nuestra web.

All In One WordPress Security and Firewall Plugin

Wordfence

Gratis con bastante información, pero muy pocas opciones disponibles - 99$ al año para la versión completa

El plugin incluye un firewall y escáner de malware, que permite detectar si el sitio está infectado o si algún plugin tiene algo de código sospechoso de ser malicioso.

Es una buena opción si sospechas que tu sitio ha sido hackeado o tiene archivos infectados, ya que además de proteger el sitio, permite reparar los archivos corruptos o dañados.

Con una gran base de datos sobre ataques e IPs que fueron bloqueadas por comportamiento extraño o malintencionado.

Wordfence Plugin

iThemes Security

Gratis con algunas opciones - 80$ la versión completa

Antiguamente conocido como Better WP Security. Un clásico de los plugins de seguridad para Wordpress, que permite configurar por separado, muchas opciones para proteger el sitio, contra los ataques más habituales.

Dispone de una auditoría y acciones automáticas, que permite realizar una mínima configuración de forma muy sencilla.

Otras opciones más avanzadas, pueden ser más complejas de configurar, pudiendo dejar tu sitio inoperativo, en caso de establecer algún parámetro incorrecto.

Auqnue dispone de firewall, no tiene un sistema de detección de infecciones o archivos corruptos.

iThemes Security Plugin

Cerber Security & Anti-Spam

Gratis con algunas opciones - 99$ al año

Otro todo en uno bastante completo. Bloqueo de actividad sospechosa o usuarios maliciosos, Anti-spam que detecta robots utilizando algoritmos heurísticos y basados en contenido, así como una potente base de datos de IPs con pasado de spam o ataques de phishing, y por último, integra un inspector de cambios en archivos o base de datos, así como detector de malware, troyanos y virus.

Cerber Security & Anti-Spam Plugin

Sucuri Security

Gratis - Incluye opciones adicionales de Firewall, Monitoring, desinfecciones y mejora del rendimiento desde 200$ al año

También bastante completo, con opciones de seguridad adicionales al core de Wordpress, la mayoría agregando reglas adicionales al archivo .htaccess.

Escaneo rápido y alertas por correo a los administradores del sitio, cuando hay alguna actividad sospechosa o se ha modificado algún archivo.

Si consideras que la seguridad es muy importante en tu sitio, y cuentan con buen presupuesto, sus opciones adicionales le otorgarán una seguridad muy avanzada a tu sitio web.

Sucuri Security Plugin

7. Los backups como medida de seguridad adicional

Si todo falla, la capacidad para restaurar el sitio, y la velocidad para llevar a cabo la restauración, es otra cuestión que debemos tener muy en cuenta.

Mientras haya una copia de seguridad actualizada de Wordpress, la gravedad del hackeo del sitio, reside en mayor medida en si el ataque consistía en robar datos de la web. Si el ataque sólo buscaba la caída del sitio, con restaurar una copia de seguridad, será suficiente para subsanar el problema.

Existen muchos tipos de backups que se pueden realizar. Desde un backup manual a nivel de servidor, backups automáticos en Dropbox u otras opciones de las que disponga tu proveedor de Alojamiento web.

8. Conclusión

La seguridad de tu sitio web es muy importante, pero también es algo complejo y que en función de tus necesidades puede requerir de una inversión a tener en cuenta.

Como con el resto de elementos, establecer la justa medida y hacer la inversión adecuada en seguridad, será determinante para el éxito del proyecto.

¿Quieres que analicemos tu proyecto y te ofrezcamos una solución de seguridad web Wordpress a medida?

Contacta con nosotros para hablar sobre cómo podemos mejorar la seguridad de tu sitio web Wordpress