WordPress es el cms más usado del mundo, de hecho una de cada cuatro páginas está hecha con este cms, pero también es el número uno de entre cms más inseguros.

Uno de los mayores quebraderos de cabeza para los desarrolladores es intentar que no te hackeen una web hecha en wordpress y creedme que por experiencia sé, que es algo difícil de lograr.

Por eso, hoy, vamos hablar un poco de que podemos hacer para conseguir que nuestro wordpress sea lo más seguro posible.

1. Cuidado a la hora de elegir los módulos

Como todos sabéis, wordpress, es un cms modular, esto quiere decir que podemos instalar plugins que añaden funcionalidades extras a nuestro sitio web.

De echo, si wordpress es tan popular, es precisamente por la gran cantidad de plugins prefabricados que tiene, los cuales te permiten hacer casi cualquier cosa.

Pero esto es un arma de doble filo, el hecho de que hayan tantos plugins también hace que muchos queden en desuso, o que simplemente se abandonen y aquí es donde empiezan haber bugs y/o agujeros de seguridad.

Lo primero que tenemos que tener en cuenta a la hora de plantear nuestro proyecto, es sin duda alguna, cuantos plugins vamos a necesitar o incluso de si es posible que nosotros desarrollemos nuestras propias funcionalidades.

Lo ideal es usar los mínimos plugins de la comunidad posibles, pensad que contra mas plugins, más complejidad de mantenimiento y más probabilidad tendremos de ser hackeados.

Pero si aun así necesitamos usar un plugin de la comunidad lo que haremos será mirar dos datos importantísimos:

  1. Compatibilidad: Revisa que el plugin que vas a instalar es compatible con tu versión de wordpress. En caso de no serlo o tener dudas, te aconsejo elegir otro siempre que sea posible.
  2. Última actualización: Para mi este punto es fundamental, si el plugin no se está manteniendo actualizado y/o no se están aplicando los últimos parches de seguridad (Esto es tan fácil como mirar cuando fue la última vez que se actualizó) para mi es un claro warning que hace que no lo instale, es más, incluso os recomendaría que os creeis un plugin custom en su lugar.

2. Mantén tu sitio actualizado

Este punto sin duda es un clásico, estoy seguro que si navegais por la red, os encontrareis miles de posts que lo que recomiendan es mantener tu sitio actualizado y tienen razón.

WordPress tiene una comunidad muy activa y constantemente estan a la búsqueda de agujeros de seguridad e implementando mejoras, por eso es tan importante tener actualizado tanto el core como los plugins.

Desde la versión 5.5 tenemos disponible una nueva funcionalidad, «las actualizaciones automáticas». Esto aunque es un arma de doble filo, sin duda nos ayudará a proteger nuestros sitio.

El hecho de activar las actualizaciones automáticas, no exime, de que tengáis que estar revisando vuestro sitio, en ocasiones alguna actualización puede romper tu sitio entero o parcialmente.

3. Instala plugins de seguridad

Para mantener tu sitio seguro, wordpress tiene una larga lista de plugins que nos pueden servir como protección para aquellos que quieren intentar robar nuestra información.

No os voy a listar aquí todos los que hay porque el post se haría eterno, pero si os voy a recomendar al menos estos dos que son los que más uso a modo personal:

  1. Wordfence: Para mi, es sin duda el mejor plugin para defender tu sitio web y mantenerlo seguro, Este plugin tiene una larga lista de features, y aunque es bastante difícil elegir las mejores, os dire al menos las que yo uso mas frecuentemente.
    • Sistema de alertas: Te avisa constantemente de posibles problemas con tu sitio mediante mails.
    • Bloqueo por intento de acceso: Te permite elegir cuantos intentos tiene un usuario para probar su contraseña antes de ser bloqueado.
    • Doble factor de autenticación: Sin duda un gran paso para tener un sitio seguro es activar esta feature, nos permite que a la hora de logear ciertos usuarios nos pida un código de una aplicación de terceros.
    • Bloqueo al login por país: Si vuestro sitio web, no requiere de que usuarios se registren o tenéis un segmento muy cerrado para vuestro país, podreis limitar tanto el registro, como el acceso a la página de login si el usuario accede desde países que no os interese, como rusia, china, taiwán…
  2. Security ninja: Este plugin, una vez instalado, nos realiza un diagnóstico de más de 50 vulneraciones típicas que se dan en un wordpress. Una de las grandes ventajas de este plugin aparte de decirte cuales son te explica cómo solucionarlas de una forma tremendamente sencilla.

4. Activa una copia de seguridad diaria

Una vez te han hackeado, ya no hay vuelta atrás, y encontrar los archivos vulnerados y que tablas de tu base de datos han sido comprometidas es buscar una aguja en un pajar.

Si tu sitio no es un ecommerce o no tiene datos que cambien frecuentemente, el recurso mas fácil, es sin duda, volver a poner la copia de seguridad más reciente y no comprometida posible.

WordPress dispone de una gran cantidad de plugins para hacer este trabajo, a mi personalmente me gusta usar mucho el plugin «duplicator pro«, que aunque la finalidad principal no es la de hacer backups, permite crear copias de seguridad programadas y además almacenarlas en la nube.

En caso de que tengas un ecommerce o tu sitio tenga muchos cambios frecuentes, aunque no puedas reestablecer la base de datos, empezar por los archivos es un gran comienzo y te ahorrará horas de mitigación.

5. Comprueba los permisos de tus archivos

Como norma general, cuando subimos un sitio a producción lo primero que se nos olvida o que ni siquiera prestamos atención es con qué permisos dejamos nuestros archivos. 

Precisamente esto, es lo que buscan los hackers y es que si pueden escribir en un archivo php de tu sitio web, estas muerto!, por eso es importante que revises que tus archivos son los correctos.

Si usas filezilla o algún gestor como cpanel, plesk, virtualmin… podrás fácilmente ver que permisos tienen tus archivos y modificarlos.

Cada sitio es un mundo, pero si hay algo que tienen en común, es que, en ningún sitio vamos a permitir escribir que nada ni nadie escriba en nuestros archivos.

Usando esto como base, lo que haremos es modificar todos nuestros archivos de modo que solamente nosotros podamos escribir asignando «0644» -rw-r-r- a todos los archivos y «0755» -rwxr-xr-x- ó «0750″ -rwxr-x—- a todas nuestras carpetas de nuestro wordpress.

Es probable que esto os dificulte luego la actualización de los plugins o incluso que no podáis usar el editor de temas ni módulos de wordpress, pero creedme es mejor asi.

Conclusión

WordPress es sin duda un cms muy popular y fácil de usar, pero también es un «coladero» en cuanto a vulnerabilidades se refiera y si bien es cierto que la comunidad trabaja duro para mejorarlo aún está lejos de ese objetivo de poder considerarse un cms seguro.

No obstante, hay una gran cantidad de acciones que podemos tomar y si aplicamos todas las recomendaciones que la comunidad nos brinda podremos estar seguros que el hackeo sera tremendamente complicado.

Desde mi punto de vista, wordpress requiere un post-mantenimiento, que es cierto que no requieren otros cms y hace que tengas que estar muy encima de todos tus sitios, no obstante los bajos costes y rapidez de producción hace que la gente siga apostando por este cms.