WordPress es una de las herramientas CMS más usadas, alrededor de una cuarta parte de las webs publicadas en Internet lo utilizan. Y esto lo convierte en un objetivo muy apetecible para hackers. Que tu web sea hackeada significa más que una pérdida de control sobre la misma, puede tener consecuencias para tu reputación e incluso para tu economía, hasta puedes acabar recibiendo una sanción si los datos personales de tus usuarios se ven afectados. Por ello, en esta entrada vamos a ver cómo podemos mejorar la seguridad de WordPress.
¿Es WordPress 100% Seguro?
Lamentablemente no, WordPress no es 100% seguro; como ocurre con otros muchos programas y gestores de contenido, la seguridad de WordPress no es infalible, puesto que los hackers siempre están buscando y creando nuevas formas de vulnerarla. Sin embargo, hay varias acciones que podemos llevar a cabo para mejorar la seguridad de WordPress y minimizar todo lo posible la posibilidad de sufrir un ataque que nos inhabilite la página web, nos haga perder su control o, peor, exponga y permita el robo de datos de nuestros usuarios.
Lo que vais a leer a continuación es una guía de seguridad WordPress en 2020 con la que podréis incrementar los parámetros de seguridad de vuestra página web y prevenir, en la medida de lo posible, muchos de los ciberataques de los que pueda ser objetivo.
Especialmente, si tienes una tienda electrónica o manejáis datos personales en vuestra web, es tu obligación contar con un dominio seguro y las medidas de seguridad adecuadas para evitar brechas de seguridad.
Contrata un Hosting WordPress seguro
No todos los servidores web son iguales, y elegir uno solo por el precio puede costarte mucho más a largo plazo.
Puesto que el servidor donde reside tu sitio web también es un objetivo para los atacantes, el uso de un alojamiento compartido de baja calidad puede hacer que el sitio sea más vulnerable a ser comprometido. El alojamiento compartido también puede ser una preocupación porque varios sitios web se almacenan en un solo servidor. Si un sitio web es hackeado, los atacantes también pueden obtener acceso a otros sitios web y sus datos.
Si bien todos los proveedores de hosting toman precauciones para proteger sus servidores, no todos están atentos o implementan las últimas medidas de seguridad para proteger los sitios web a nivel de servidor.
Por lo tanto, el primer paso para mejorar la seguridad en WordPress es contratar un servicio de hosting seguro; busca un servicio en el que la principal de sus prioridades sea la seguridad. Es decir, que cuente con las herramientas necesarias para hacer frente a los diferentes tipos de ciberataques que sufren habitualmente las páfinas web, como Denegación de Servicio (DDoS) o ataques de fuerza bruta.
Usa la última versión de PHP
Aseguraros que el servicio de hosting que vayáis a contratar cuenta con la última versión de PHP, puesto que utilizar versiones desactualizados creará una vulnerabilidad de seguridad en vuestra página web.
Cada versión principal de PHP tiene soporte durante dos años, es decir, recibe actualizaciones y parches durante ese período de tiempo, que ayudan a mejorar la seguridad de nuestra web. Actualmente, la versión de PHP es la 7.4, aunque la 7.3 tendrá soporte hasta 2021.
No utilices el prefijo wp_ para la base de datos
Cuando instalas WordPress debes indicar una serie de información que tienes que insertar para que WordPress se comunique con la base de datos.
Tu proveedor de alojamiento te facilitará la mayoría de esta información, como:
- Nombre de la base de datos
- Usuario
- Contraseña de la misma
Pero tú debes decidir el prefijo de las tablas que se crearán para WordPress.
Por defecto, en esta pantalla el prefijo ofrecido es wp_, de manera que tus tablas serán wp_options, wp_comments, wp_posts, etc. Esto es algo que todo hacker conoce. Cualquier posible atacante sabe que las tablas de WordPress tendrán esos nombres completos si no cambias el prefijo y realizas una instalación segura.
Modifica el prefijo para las tablas por defecto por otro a tu elección, por ejemplo wptabla_ o X1jM_ o lo que quieras. Lo importante es que no dejes el prefijo por defecto, no lo largo o complicado que sea.
Archivo wp-config.php
El archivo de configuración de WordPress, el fichero wp-config.php, incluye información muy sensible sobre tu base de datos:
- Nombre
- Usuario
- Contraseña
- Prefijo de las tablas
Por ello es fundamental protegerlo de modificaciones no deseadas y de miradas ajenas.
Para asegurarlo debes efectuar las siguientes actuaciones:
- Trasladarlo a una carpeta superior, de forma que si está ubicado en la ruta …/public_html/midominio.es/ lo muevas a la carpeta …/public_html/.
- Asegurarlo contra escritura modificando los permisos a 444.
- Incluye una serie de reglas al fichero de Apache .htaccess para impedir accesos no deseados:
- <Files wp-config.php>
- order allow,deny
- deny from all
- </Files>
Backups
Igual que realizas copias de seguridad de los archivos más importantes guardados en el disco duro de ordenador, también debes realizar una copia de seguridad de tu web en WordPress, ya que no solo mejora la seguridad, sino que en caso de ataque, te servirá para reestablecer la web con ese backup.
Una buena política de copias de seguridad en WordPress consiste en:
- Realizar automáticamente una copia de seguridad en WordPress diaria de tu web.
- Hacer una copia semanal (un día fijo) y si es programada mejor.
- Realizar una copia mensual, el primer día de cada mes.
- Hacer copias manuales bajo demanda antes de actualizar o de probar temas o plugins.
- Si además estas copias las subes a la nube (DropBox, Google Drive, etc.) mejor que mejor. Así ocuparás menos espacio en el Hosting, en tu ordenador y siempre las tendrás disponibles desde cualquier lugar cuando las necesites.
Usa HTTPS para Conexiones Cifradas (Certificado SSL)
Aunque estamos más acostumbrados a mirar que un sitio comience por HTTPS como usuarios, para comprobar que es un sitio seguro, lo cierto es que una forma de mejorar la seguridad de nuestra web en WordPress es instalar un certificado SSL y ejecutarla a través de HTTPS, incluso si nuestra web no se dedica al comercio electrónico.
Aplicar un certificado SSL añadirá una capa extra de seguridad a nuestro sitio, especialmente si se trata de una web multi-autor, ya que nos aseguramos que la conexión entre WordPress y el navegador es completamente segura.
También mejor el posicionamiento SEO, ya que Google calificó HTTPS como una factor de clasificación. No es que sea un factor determinante, pero sí que ayudará con el posicionamiento en el buscador. Además, evitará, siempre que esté actualizado, que al usuario que navega con Chrome no le salte el aviso de «sitio no seguro»,
Y contar con ello da confianza y seguridad a los usuarios al entrar en nuestro sitio web. Es decir, es como contar con un certificado de seguridad para WordPress.
Aumenta la seguridad en el Núcleo de WordPress, plugins y themes
Si queremos contar con la máxima seguridad en WordPress, tendremos que centrarnos en tres aspectos del gestor de contenido; la versión de WordPress que estemos utilizando, los plugins y los temas (o themes).
Procura disponer de la Versión de WordPress más actual
Como ocurre en otros aspectos de la seguridad informática, en WordPress también es esencial contar con su versión más actual.
Y es que cuando tu sitio de WordPress ejecuta versiones obsoletas de complementos, temas o WordPress, corres el riesgo de tener vulnerabilidades conocidas en su sitio web.
WordPress se ejecuta en código fuente abierto y tiene un equipo dedicado específicamente a encontrar, identificar y solucionar los problemas de seguridad que surgen en el código principal. A medida que se revelan las vulnerabilidades de seguridad, las correcciones se eliminan de inmediato para solucionar cualquier nuevo problema de seguridad descubierto.
Es por eso que mantener WordPress y todos sus temas y complementos actualizados a la última versión es un componente vital de una estrategia de seguridad exitosa.
Algunas versiones de WordPress son más seguras que otras
WordPress cuenta con un sistema de actualizaciones automáticas tanto para el núcleo como para sus plugins y temas, de manera que las actualizaciones pequeñas (tipo 4.3.1 a 4.3.2) no necesitan de nuestra intervención, pero las «mayores», sí que requieren que las realicemos nosotros (por ejemplo, el paso de 4.3.x a la 4.4).
Ya hemos dicho lo importante de tener actualizado WordPress a su última versión, incluidos temas y plugins, puesto que cualquier vulnerabilidad corregida o error habrá sido subsanado, pero insistimos sobre ello, aunque pienses que la versión que estás utilizando de WordPress es segura, especialmente porque no te da fallos, ten en cuenta que si existe alguna vulnerabilidad, no actualizar puede suponer dejar la puerta abierta a posibles ataques.
Esconde la Versión de tu WordPress a los curiosos
Si, por la razón que sea, no queréis actualizar a la última versión de WordPress, para evitar que posibles atacantes vean qué versión de WordPrtess estáis utilizando, podéis ocultarlo de miradas curiosas.
La función wp_head() es la que se encargada de mostrar que versión de WordPress está utilizando tu sitio web, ya que incluye una llamada la función wp_generator(). Para ocultar esta información, debéis incluir la siguiente línea en el archivo de function.php de vuestro WordPress:
- remove_action (‘wp_head’, ‘wp_generator’);
Usa Plugins especializados en Seguridad
Utilizar un plugin de seguridad para WordPress (o varios) es otra forma de mejorar la seguridad de nuestro sitio. Existen muchos desarrolladores dedicados a la creación de estos plugins de seguridad para WordPress, con los que podremos proteger nuestra web, algunos de ellos son:
Usa Plugins de Backup de WordPress
Ya mencionamos la importancia de contar con una copia de seguridad de nuestro sitio web, para poder restaurarlo en caso de que sea hackeado (o por cualquier otro problema, como fallos que lo rompan). Estas copias de seguridad puede realizarla nuestro servicio de hosting, pero también podemos hacerlas nosotros empleando algún plugin de backup para WordPress.
Como ocurría con los plugins de seguridad, también existen muchos tipos de plugins para realizar copias de seguridad, aquí os dejamos cuatro de los más usados:
Actualiza todos los Plugins regularmente
Tan importante es actualizar WordPress a su última versión, como es hacerlo para los plugins. Cualquier software o aplicación que no tengamos actualizado a la última versión, supone una vulnerabilidad, puesto que los hackers conocen cuáles son sus problemas de seguridad y por dónde atacar para tener éxito.
Por ello, cuando veas que WordPress te notifica que hay una actualización disponible para alguno de los plugins que tienes instalados, actualízalo, de manera que cuentes con la última versión del mismo, en la que habrán corregido esas vulnerabilidades conocidas.
Solo descarga plugins que tengan actualizaciones recientes
Siguiendo esa misma línea, procura descargar plugins ya no solo de repositorios confiables, como puede ser el propio de WordPress, sino también que la versión que estás descargando es la más reciente, puesto que será la que cuente con mayor seguridad frente a posibles ataques.
En los repositorios de plugins suele aparecer la última fecha de actualización, así como la versión más reciente disponible.
Desactiva «Editar Archivos» del Panel de Control
En aquellos sitios de WordPress que cuenten con varios usuarios a los que se les ha dado privilegios de administrador (aunque lo recomendable es no hacerlo), lo recomendable es desactivar el editor de archivos (editor de apariencia) en el Panel de Control de WordPress.
De esta forma nos aseguramos, primero, de que los otros usuarios de nuestro sitio en WordPress no pueden alterar la apariencia del mismo, y segundo, que si el sitio es hackeado, el atacante no podrá editar un archivo o un tema PHP a través del editor de apariencia e introducir así código malicioso en el sitio.
Para desactivar el editor de archivo, puedes introducir en el archivo wp-config.php este código:
- define(‘DISALLOW_FILE_EDIT’, true);
De manera que se eliminarán las capacidades de edit_themes, edit_plugins y edit_files de todos los usuarios.
Solo emplea plugins que tengan una gran cantidad de descargas y buenas opiniones de usuarios
Volviendo con los plugins, ya mencionamos que hay muchos desarrolladores creando este tipo de programas, por lo que para asegurarnos de que nos descargamos uno que cumpla con las expectativas de seguridad necesarias, lo mejor es ver cuántas descargas y opiniones positivas de otros usuarios tiene. La mejor manera de encontrar un buen plugin, es guiarnos por las opiniones de aquellos que ya lo han probado.
Actualiza el theme activo
Como ocurre con el núcleo de WordPress y los plugins, el tema que tengas activo para tu sitio debe estar actualizado a la última versión, puesto que temas obsoletos o que no han recibido actualizaciones en mucho tiempo, pueden presentar riesgos para la seguridad de tu sitio en WordPress.
Al igual que con los plugins, podrás ver en la mayoría de repositorios de temas cuándo se ha actualizado por última vez un tema. Asegúrate de que ese tema que te gusta y quieres para tu sitio web se actualiza con cierta regularidad, para estar seguro de que no será un punto vulnerable a ataques en el futuro.
Deshabilita XML-RPC
Existe una vulnerabilidad específica, llamada vulnerabilidad pingback, que merece una especial consideración porque, aunque de fácil solución, inactivaría importantes funciones de WordPress como:
- Gestión remota
- Uso de aplicaciones móviles
- Sistema de pingbacks y trackbacks
Esta vulnerabilidad se relaciona con el protocolo XML-RPC, que es el que permite:
- Que WordPress se conecte, por ejemplo, con la aplicación WordPress para iOS o Android
- Editores offline
- Algunos sistemas de sindicación de contenidos
Por lo que no es recomendable inactivar este protocolo. Lo malo es que a través de ella, los atacantes pueden realizar posibles inyecciones de código.
En caso de que tengas claro que nunca vas a usar este tipo de aplicaciones la solución es sencilla: borra el archivo de la instalación de WordPress denominado xml-rpc.php.
Aumenta la seguridad del acceso al backoffice de WordPress
A continuación vemos varios consejos para aumentar la seguridad a la hora de acceder a nuestro sitio WordPress, de manera que podamos evitar, en la medida de lo posible, accesos indeseados.
Cambia la ruta /wp-admin o /wp-login para acceder a tu WordPress
Una de las formas de proteger nuestros sitio WordPress de ataques de fuerza bruta es cambiar la URL de inicio de sesión, que por defecto es la ruta /wp-admin o /wp-login por otra distinta. Para hacerlo se puede recurrir a un plugin como WPS Hide login o el plugin premium Permatters.
No utilices el user «admin» para acceder a WordPress
Durante la instalación de WordPress debes decidir el nombre del primer usuario para acceder a la administración de tu web, usuario que por defecto tendrá permisos totales de gestión de la misma.
WordPress ha dado la opción de poner un nombre de usuario por defecto que, por supuesto, no tienes que usar.
Cuando tengas que escoger el nombre de tu primer usuario para acceder a WordPress no elijas los nombres comunes para esta tarea, como admin, Admin, root, etc. Un hacker que quiera acceder a tu web va a comprobar en primer lugar esos nombres.
Solo Contraseñas Inteligentes
Es fundamental que seas consciente de que cuanto más fácil sea para ti recordar una contraseña, también será más fácil que los sistemas automáticos de acceso por fuerza bruta de los atacantes la consigan.
En las últimas versiones de WordPress se incluye un generador de contraseñas seguras y te recomienda usarlas. Ésta será siempre la mejor opción. Pero en caso de que quieras crear tu propia contraseña, utiliza siempre contraseñas robustas, que incluyan letras en minúsculas, mayúsculas, números y caracteres especiales.
Limita los intentos de Inicio de Sesión
Los intentos masivos de acceso a través de la pantalla de login constituyen la mayoría de los actuales ataques contra sitios WordPress. Por eso es fundamental proteger el acceso interno a tu WordPress.
Puedes utilizar diferentes medidas de seguridad:
- Inhabilita el registro de usuarios. De esta forma evitarás que usuarios con malas intenciones obtengan permisos extra en tu instalación y la posibilidad de realizar cambios en la misma aprovechando vulnerabilidades.
- Incluye un sistema de comprobación humana como reCaptcha. Esto evita accesos no deseados de máquinas automatizadas que pretenden acceder a tu web.
- Instala algún plugin para evitar intentos de acceso masivos que bloqueen este tipo de ataques como:
- Limit login attempts
- El módulo Protect de JetPack
Autenticación De Dos Factores
Una de las mejores maneras de proteger su sitio de WordPress es con la autenticación de dos factores.
La autenticación de dos factores agrega una capa adicional de protección al inicio de sesión de WordPress. Además de la contraseña, se requiere un código adicional sensible al tiempo de otro dispositivo, como el móvil, para iniciar sesión correctamente.
Es una de las mejores maneras de bloquear el inicio de sesión de WordPress y minimiza casi por completo el potencial de los ataques exitosos de fuerza bruta.
Si bien WordPress no ofrece una forma integrada de agregar autenticación de dos factores, se puede usar un complemento como iThemes Security para agregar la funcionalidad.
Protección DDoS
Los ataques DDoS son otro tipo de ciberataque que pueden comprometer la seguridad de nuestro sitio web en WordPress.
Un ataque DDoS consiste en realizar múltiples peticiones al servidor hasta colapsarlo, lo que deja inoperativo el sitio, es decir, lo tumba. Un ataque de este tipo puede tener consecuencias nefastas para sitios webs de comercio electrónico o de prestación de servicios. La mejor forma de protegernos de ellos es contratar un servicio de seguridad de terceros, como puede ser Cloudflare.
Resumen
Como hemos visto no son pocas las formas en las que podemos comprobar la seguridad de WordPress, aumentarla y mejorarla llevando a cabo algunas acciones básicas, como mantener actualizadas las versiones de WordPress, de los plugins y temas que utilizamos, limitando el acceso como administradores a otros usuarios, cambiando algunas rutas y las contraseñas que vayamos a emplear, escogiendo aquellas más robustas y complejas.
Al final, aunque nada es seguro al 100%, lo importante es limitar todo lo posibles las vías de acceso a nuestro sitio a los hackers, para mantener la seguridad con WordPress lo mejor posible.