Consejos y plugins para mejorar la seguridad en WordPress

WordPress Login
Hace unas horas hemos comunicado una noticia que no agradará a ningun usuario del CMS WordPress: un ataque usando la fuerza bruta está infectando blogs. Básicamente este ataque se basa en una lista de 1.000 usuarios y contraseñas comunes que intentan averiguar los datos de acceso al panel de administración del usuario principal (administrador) realizando una gran cantidad de logueos.
Al tratarse de un ataque usando la fuerza bruta existen diferentes formas de evitarlo o, por lo menos, asegurar que nuestro blogs esté a salvo contra este tipo de acciones. Estos son algunos de los consejos que te ofrecemos, tanto plugins como modificaciones desde el archivo .htaccess y recomendaciones. Veámoslo.

Plugins para asegurar el inicio de sesión

  • Limit Login Attempts. Lo describo en dos únicas palabras: muy importante. Su principal característica es la posibilidad de limitar el número de intentos de inicio de sesión por IP. De esta forma, cuando se intente realizar un ataque masivo éste será bloqueado (siempre y cuando proceda de la misma dirección IP). Además nos mostrará un informe de inicios de sesión que hayan sobrepasado el límite establecido, para bloquearlas definitivamente si lo creemos necesario.
  • WP Security Scan. Este plugin examinará nuestra instalación de WordPress para indicarnos incidencias, así como algunos consejos para aplicar que nos ayudarán a mejorar la seguridad. Nos mostrará consejos de contraseñas, permisos de archivos, seguridad en la base de datos, seguridad del panel de administración, etc.
  • Wordfence Security. Otro de los plugins esenciales para mantener el “orden” en WordPress ante ataques masivos y así también evitar sobrecargas en el hosting. Wordfence añade un sistema de firewall en nuestros blogs, detección de virus y tráfico en tiempo real. Lo importa del plugin es su opción de firewall, la cual viene desactivada por defecto y tendremos que activarla manualmente desde su configuración (marcar la casilla “Enable firewall rules”).
Wordfence Security for WordPress

Eliminar o modificar usuario “admin”

La mayoría de los ataques masivos, a fuerza bruta, usarán como nombre de usuario “admin” para robar nuestra contraseña. Por este motivo es más que aconsejable usar cualquier otro que no tenga ninguna relación con dicho nombre. Con las últimas versiones de WordPress es posible cambiar este usuario antes de realizar la configuración y primera puesta en marcha del blog. No obstante también podremos configurarlo a posteriori siguiente estos sencillos pasos.
  • Pasos a seguir si podemos acceder a nuestro panel de administración con nuestro usuario y contraseña habitual:

1. Accedemos al panel de administración con nuestro usuario “admin”.
2. Nos dirigimos al apartado “Usuarios” y creamos uno nuevo.
3. Rellenanos la información necesaria, con un usuario y contraseña que no sean comunes. Como perfil del usuario seleccionaremos “Administrador”.
4. Listo. Ya podremos borrar el anterior usuario administrador y empezar a usar el nuevo desde esos momentos.

  • Pasos a seguir si no podemos acceder al panel de administración con nuestro usuario administrador (desde PHPMyAdmin):

1. Lo primero que tendremos que hacer es asegurarnos de disponer de los datos de acceso a nuestro hosting. Una vez accedamos nos vamos al apartado de base de datos (PHPMyAdmin) y seleccionamos la correspondiente a nuestra instalación de WordPress.
2. Buscamos la tabla “wp_users” (puede variar en el caso de haber seleccionado otro prefijo al configurar WordPress, aunque siempre acabará en _users).
3. Nos aseguramos de estar en la pestaña “Browse”. En la tabla buscamos al usuario “admin” y damos en el botón del lápiz para editarlo.
4. Cambiamos los campos “user_login”, “user_nicename” y “display_name” por el nuevo nombre de usuario. Cambia únicamente éstos y deja los demás tal cual, sin modificar. Guarda los cambios y tendrás el usuario listo y configurado, con el nuevo nombre de usuario asignado.

WordPress Database

Consejos para mantener la seguridad

  • Aunque la mayoría de usuario no lo hacen, es recomedable realizar copias de seguridad mensuales de los archivos y base de datos. En el caso de perder los datos por un problema de hosting o ataque hacker podremos restaurarlo posteriormente sin problemas. Para automatizar esta tarea podremos usar el plugin WP-DBManager.
  • Debemos de usar contraseñas difíciles, nunca nombres o datos personales por su facilidad a la hora de obternerlos. Estamos acostumbrados a escucharlo pero muchos no lo ponemos en práctica, siendo unos de los principales causas en el robo de cuentas. Utiliza contraseñas que intercambien letras y númeras, mayúsculas y minísculas, o incluso carácteres especiales como ¬ ! #$%, entre otros.
  • Mantén actualizado WordPress, plugins y temas. Aquí no vale el “si está bien mejor no lo toques” o “mientras funcione lo dejo así”. WordPress, como cualquier otra plataforma, cuenta con agujeros de seguridad que se solucionan con nuevas versiones. Es por eso por lo que, sobretodo en actualizaciones menores, es muy recomendable actualizar para evitar posibles problemas en el futuro.
  • Desactivar plugins innecesarios. Aunque no lo creas, todos los plugins que estén activados repercutirán de una manera u otra en WordPress. Por eso, si algún plugin tiene algún agujero de seguridad podría ser aprovechado por hackers para entrar en nuestro sitio. Mi recomendación es dejar únicamente aquellos que realmente necesitemos, los demás con desactivarlos será suficiente.

Más trucos desde .htaccess

FileZilla FTP
.htaccess es el nombre de un simple archivo de texto que se añade a la raíz del sitio, en el cual pueden aplicarse distintas reglas sobre los directorio y archivos de nuestra Web. En este caso aprovecharemos dicho archivo para aplicar mejoras en la seguridad de WordPress. Veamos algunos códigos sencillos que podemos añadir a dicho fichero, uno por línea.
  • Evitar la exploración de carpetas. Es de suma importancia prohibir que los visitantes puedan acceder y visualizar las distintas carpetas y directorios de WordPress (como wp-admin, por ejemplo). Solo tendremos que añadir estas línea a nuestro archivo .htaccess para bloquearlo por completo.
Options All -Indexes
  • Proteger el archivo wp-config.php. Se trata del archivo más importante de WordPress, el que incluye la información vital para el funcionamiento, así como los datos para acceder a la base de datos. Aunque evidenmente este archivo no puede visualizarse en el navegador, siempre es interesante aplicar medidas extras “por si las moscas”. Más vale prevenir que curar.
<files wp-config.php> order allow,deny deny from all </files>
  • Bloquear el acceso a wp-content. Es la carpeta que engloba todos los temas, plugins, imágenes y archivos que sirven para personalizar el blog. Para evitar accesos no autorizados bastará con añadir lo siguiente.
Order deny, allow Deny from all <files ~”.(xml|css|jpe?g|png|gif|js)$”> Allow from all </files>
  • Proteger y bloquear el archivo .htaccess. Sí, también puedes bloquear el mismo archivo que se utiliza para añadir todas las anteriores reglas sobre directorios. Con la siguiente línea será sufiente para asegurarlo.
<files ~”^.*\.([Hh][Tt][Aa])”> Order allow, deny Deny from all Satisfy all </files>

Comentarios

Entradas populares de este blog

Dabbleboard, una pizarra para hacer más productivas las reuniones

Community Managers: Una fórmula sencilla de medir el ROI para Pymes

3 plataformas para construir elegantes sitios web sin programar