¿Cómo cambiar las contraseñas de tu web en WordPress?
Cuando hablamos de seguridad la primera cosa que se nos viene a la cabeza siempre son siempre las contraseñas.
Con las nuevas tecnologías, las mecánicas para descubrir contraseñas también han mejorado y los hackers malintencionados tienen herramientas más potentes con las que vulnerar nuestra seguridad.
¿Sospechas que tu web ha sido hackeada? Todo lo que debes hacer.
Si tu web ha sido hackeada lo primero que debes hacer es cambiar todas las contraseñas de WordPress. De éste modo los hackers dejarán de tener acceso a tu web.
El primer paso a la hora de cambiar las contraseñas es tener claro que vamos a asignar contraseñas que llamaremos seguras. Para eso deben cumplir:
– Tener más de doce caracteres
– Tener al menos una mayúscula, una minúscula, un símbolo y un número
– No ser palabras reconocibles por un diccionario
– No contener partes de tu nombre de usuario, tu correo electrónico o el dominio en el que estás trabajando
A veces es complicado utilizar contraseñas complejas con multitud de caracteres raros que somos incapaces de recordar y estamos tentados de utilizar contraseñas repetidas o palabras que signifiquen algo para nosotros. En tu casa y en tu ordenador puedes utilizar este tipo de contraseñas porque si alguien entra a tu casa ese será el menor de tus problemas, pero en Internet, donde todo es público, deberías acostumbrarte a utilizar contraseñas lo más seguras posibles. Utiliza el gestor de contraseñas de tu navegador, un un llavero de contraseñas, una aplicación que las gestione o incluso un post-it pegado en tu pantalla. Cuanta menos pistas dejes mejor, pero es preferible eso a tener una contraseña insegura de cara a Internet.
Puedes generar contraseñas seguras de mil maneras. La más sencilla es utilizar un generador de contraseñas aleatorio que puedas copiar y pegar rápidamente.
Además, una buena práctica es cambiar la contraseña habitualmente. Es el mejor método para asegurarte que nunca vulneran tus aplicaciones o páginas web.
Y una vez explicado todo esto, que ya lo sabías pero es importante recordarlo, vamos a explicar cómo cambiar las contraseñas en tu WordPress paso a paso.
1. Cambiar las contraseñas del acceso FTP
Como sabrás si has llegado hasta aquí, el FTP es la manera por la que accedes a los ficheros de tu web. Así que si tu usuario ha sido hackeado, los ciberdelincuentes tendrán acceso a todos tus ficheros y los podrán modificar. Además tendrá acceso al usuario y contraseña de tu base de datos. Cuando tu cuenta FTP es vulnerada por un usuario malintencionado o hacker éste tiene un control total sobre la web y su código.
El primer paso para protegerte es resetear las contraseñas de usuarios FTP. Una vez que no tengan acceso no podrán consultar los cambios que hagamos en los ficheros con el resto de contraseñas.
Accede a tu panel de administración donde tengas creados tus usuarios y crea nuevas contraseñas para ellos. Si son usuarios viejos o que no se usan puedes borrarlos directamente ya crearás uno nuevo cuando lo vuelvas a necesitar. Recuerda que la próxima vez que intentes utilizar tu usuario FTP la contraseña será diferente.
Si tienes tu web alojada en Programatica puedes acceder a tu panel de administración para gestionar tu hosting.
2. Cambiar la contraseña de la base de datos
Para cambiar la contraseña de la base de datos también deberás acceder al panel de administración de tu hosting, donde tendrás una sección de bases de datos.
Cuando se habla de cambiar la contraseña de una base de datos en realidad lo que se quiere decir es que debes cambiar la contraseña del usuario de la base de datos. Así que busca la sección donde tengas usuarios de bases de datos en tu hosting y cambia sus contraseñas.
Si no sabes seguro qué usuario y base de datos tiene tu web puedes acceder al fichero wp-config.php (con tu usuario FTP) y y buscar dónde está definida la base de datos. Encontrarás el nombre de la base de datos el usuario y la contraseña vieja.
Una vez que hayas cambiado la contraseña en el panel de administrador tendrás que modificarla en el fichero wp-config.php para que tu web sepa cuál es la nueva contraseña.
Tras estos dos pasos, cualquier hacker que tuviera acceso a los ficheros de tu web ya no puede seguir accediendo a ellos. Ahora hará falta asegurarnos que tampoco tiene acceso a la gestión del WordPress con un usuario administrador.
3. Cifrar contraseñas de cookies
Antes de pasar al último paso y aprovechando que estamos modificando el fichero de configuración de WordPress, podemos añadir un puntito más de seguridad en todo el tema de las contraseñas.
Cuando navegas por una página web y accedes a ella con un usuario, tanto si eres el gestor con un usuario administrador como si es un cliente (tienes cuenta en una tienda online en la que se guardan tus pedidos), tu sesión (y tu contraseña) se guardan de un día para otro en una cookie en tu ordenador. Estas cookies van encriptadas con una clave de cifrado, de tal manera que no se puedan reconocer las contraseñas a simple vista. Esta clave de cifrado debería de ser personalizada. Si utilizas la clave por defecto de WordPress, los hackers que saben lo que hacen tendrán muy fácil averiguar tu contraseña a través de tus cookies.
Haciendo un poco de scroll en el fichero wp-config.php verás una sección similar a esta:
Si todavía aparece «pon aquí tu frase aleatoria», hazle caso y reemplázala.
WordPress te ofrece esta herramienta con la que generar claves aleatorias. Cada vez que refresques la pantalla te ofercerá claves nuevas. Cópialas y pégalas en tu fichero wp-config.php.
Ten en cuenta que cada vez que cambies tus claves de cifrado, todas las sesiones de todos tus usuarios se cerrarán y tendrán volver a entrar a tu página web. No obstante es un pequeño precio a pagar por la seguridad y es recomendable hacerlo cada cierto tiempo.
4. Resetear las contraseñas de los usuarios administradores de WordPress
Hay dos maneras de cambiar las contraseñas de los administradores de WordPress.
La primera es acceder a la sección de usuarios en el backend de WordPress, buscar cada uno de los usuarios administradores y generar contraseñas nuevas aleatorias para ellos (tu usuario incluido).
No obstante yo te voy a proponer la segunda: modificarlo directamente desde la base de datos.
¿Por qué? Porque aunque sea un poquito más complejo, este método te permite borrar completamente la contraseña anterior. Un usuario sin contraseña no puede ser vulnerado y los hackers no lo podrán atacar mientras esté sin contraseña. Todos los usuarios administradores que tengas creados pero que no entren habitualmente dejarán de ser un problema para ti.
Necesitarás acceder a la base de datos de tu WordPress. Seguramente desde tu hosting tengas una sección desde la que puedas acceder a PHPmyadmin (una interfaz gráfica para gestionar la base de datos).
Una vez la hayas encontrado simplemente accede con el usuario y contraseña de la base de datos. (Recuerda que antes cambiaste esta contraseña, ¡usa la nueva!).
ATENCIÓN: Durante toda la explicación se asume que el prefijo de las tablas de tu base de datos es el genérico de WordPress. Si no es así, sustituye «wp_» por el prefijo de tu web.
Busca la tabla wp_users y lista todos los usuarios. Si tu web no utiliza sesiones de usuarios clientes será fácil porque solo tendrás uno o dos usuarios y eso serán administradores.
Si en cambio tienes muchísimos usuarios necesitas saber cuáles son los administradores para no resetear la contraseña de todos los usuarios.
Puedes buscándolo accediendo a la tabla wp_usersmeta y y haciendo la siguiente búsqueda:
meta_value LIKE %administrator%
El resultado de la búsqueda te devolverá un listado con todos los usuarios con capacidades de administrador. Apunta los valores de la columna user_id.
Ahora accede a la tabla de wp_users y haz la siguiente búsqueda:
ID IN (listado de ids separados por comas)
Ya tienes todos los usuarios administradores de tu web. Accede a cada uno de ellos y deja el campo contraseña en blanco. Ahora ya nadie podrá acceder a su usuario con una clave punto será necesario recuperar la contraseña mediante el enlace de WP.
Si quieres puedes lanzar esta consulta SQL que limpiará automáticamente las contraseñas de todos tus usuarios administradores.
UPDATE U.*
SET U.password = ‘’
FROM wp_users as U
INNER JOIN wp_usermeta as M ON ( U.ID = M.user_id )
WHERE ( ( M.meta_key = 'wp_capabilities'
AND M.meta_value LIKE '%administrator%' ) );
Recuerda que si descubres administradores con correos que no reconoces también deberás borrarlos o cambiarles el correo. No sirve de nada quitarles la contraseña si pueden seguir recuperándola.
ATENCIÓN: Si detectas algún administrador ilegítimo, antes de borrarlo recuerda apuntar su id para lanzar la siguiente instrucción y borrar todo rastro de sus configuraciones:
DELETE * FROM wp_usersmeta WHERE user_id = (la id que habías apuntado)
Si has seguido todos estos pasos tu web está a salvo. Cualquiera que hubiera hackeado el acceso de FTP, base de datos o usuarios ha perdido el acceso. Tus administradores deberán recuperar su contraseña. ¡Recuérdales que utilicen contraseñas tan seguras como la tuya!.
Ahora que has blindado tu web y ningún hacker tiene acceso a ella, deberías asegurarte de que el contenido está bien y nadie lo ha vulnerado. Sigue leyendo cómo limpiar código malicioso.