Por qué rotar los salts y las claves es la medida de seguridad de WordPress más desaprovechada

Los salts y las claves de WordPress protegen cada sesión de tu sitio. Casi nadie los cambia nunca. Aquí te explicamos por qué rotarlos con regularidad es una de las victorias de seguridad más baratas que existen.

A padlock on a laptop, representing WordPress security keys

Abre el archivo wp-config.php de cualquier sitio WordPress. Más o menos a la mitad hay un bloque de ocho definiciones con nombres como AUTH_KEY, SECURE_AUTH_KEY, LOGGED_IN_KEY, NONCE_KEY, AUTH_SALT, SECURE_AUTH_SALT, LOGGED_IN_SALT y NONCE_SALT. Cada una es una cadena aleatoria larga. Son los salts y las claves de WordPress. Protegen cada cookie de autenticación y cada nonce que emite tu sitio. Casi nadie los cambia nunca después de instalar el sitio por primera vez. Este artículo explica qué hacen realmente, por qué importa rotarlos y cómo hacerlo de forma segura.

Qué hacen los salts y las claves

Cuando inicias sesión en WordPress, el sitio establece una cookie que demuestra que tu sesión es válida. Esa cookie contiene un token. El token se firma usando una combinación de las claves y los salts de wp-config.php. Sin conocer ambos, un atacante no puede falsificar una cookie válida ni modificar una existente sin invalidarla.

WordPress usa esos mismos secretos para generar y validar los nonces, los tokens de un solo uso que protegen los envíos de formularios y las acciones de administración frente a la falsificación de petición en sitios cruzados (CSRF). Son fundamentales para buena parte de la seguridad de WordPress.

Si los secretos se filtran, cualquier token firmado con ellos sigue siendo válido hasta que los secretos cambian. Esta es la parte que importa para la rotación.

Cuándo pueden filtrarse los secretos

Quizá pienses que tu wp-config.php nunca ha quedado expuesto. Probablemente no lo ha estado de forma deliberada. Pero varios escenarios comunes pueden filtrar el contenido del archivo.

Un archivo comprimido de copia de seguridad en el directorio raíz. Si fue descargable aunque solo durante una ventana breve, cualquiera que adivinara el nombre tiene el archivo. Hemos visto copias de seguridad nombradas con marcas de tiempo predecibles que cualquier atacante puede enumerar.

Un servidor mal configurado que sirvió los archivos PHP como texto plano en lugar de ejecutarlos. Las malas configuraciones breves durante los despliegues son sorprendentemente frecuentes.

El portátil comprometido de un desarrollador o colaborador. El wp-config.php llevaba años en una copia local del sitio. Si su máquina fue vulnerada, el archivo también.

Un compromiso anterior en el propio sitio. Si un atacante tuvo acceso al sistema de archivos en algún momento del pasado, leyó wp-config.php y ahora tiene tus secretos para siempre, a menos que los rotaras.

Qué hace realmente la rotación

Rotar los salts y las claves hace dos cosas importantes. Primero, invalida cada sesión existente en el sitio. Todo usuario con sesión iniciada, incluido cualquier atacante que aún esté aprovechando una cookie capturada, tiene que volver a iniciar sesión. Segundo, invalida cada nonce pendiente. Cualquier envío de formulario que dependa de un token emitido antes de la rotación será rechazado.

El primer efecto es la victoria de seguridad. Si un atacante tenía una cookie de sesión válida antes de la rotación, ya no la tiene.

Este es el punto que convierte la rotación en una medida tan valiosa: corta el acceso persistente que un secreto filtrado concede en silencio.

El coste es pequeño

La fricción de la rotación es una ronda de volver a iniciar sesión. Eso es todo. Cada usuario, incluido tú, saldrá de la sesión la próxima vez que entre al sitio. Vuelven a iniciar sesión con sus credenciales normales y ya están dentro de nuevo.

Para un blog personal esto es invisible. Para un sitio de empresa con varios empleados, envía un correo rápido avisando de que el cambio llega y de que tendrán que volver a iniciar sesión. Cinco minutos de aviso previo evitan confusiones.

Cómo rotar

La mecánica es sencilla. Visita el generador oficial de claves secretas de WordPress en api.wordpress.org. Produce un conjunto nuevo de ocho definiciones cada vez que lo cargas. Copia el bloque entero. Abre wp-config.php en tu servidor, ya sea por SFTP o mediante el editor de archivos de tu hosting. Pega el bloque nuevo en lugar del existente. Guarda el archivo.

En la siguiente petición de página, cada sesión existente queda invalidada. La próxima vez que cargues el panel, inicias sesión de cero.

Antes de hacer esto en producción, haz una copia de seguridad de wp-config.php. El riesgo es que pegues el bloque nuevo en el sitio equivocado y rompas el archivo. La copia te da una reversión instantánea.

Con qué frecuencia rotar

Para un sitio pequeño de bajo riesgo, una rotación anual es una base razonable. Para un sitio de empresa con varios usuarios, trimestral o semestral. Para un sitio de mucho tráfico con administradores que entran y salen, tras cualquier cambio de personal.

Rota siempre después de cualquiera de estos eventos. Un compromiso confirmado o sospechado. La salida de un empleado o colaborador con acceso de administrador. La aparición de un archivo de copia de seguridad en un lugar donde no debería haber estado. Cualquier mudanza importante de servidor que implicara transferencia de archivos por un canal no seguro.

Combinada con otro endurecimiento

La rotación de salts es una de varias medidas de poco esfuerzo y gran impacto que se potencian al usarse juntas. Combínala con 2FA en cada cuenta de administrador, actualizaciones periódicas de plugins y del núcleo, una auditoría de quién tiene acceso y un wp-config.php limpio que no esté en ninguna carpeta pública.

El coste total en tiempo es una o dos horas al año. El valor es cerrar una de las categorías más duraderas de compromiso de WordPress. Barato, fácil y casi universalmente omitido.

¿Necesitas ayuda?

Si quieres que se roten los salts y las claves de tu sitio WordPress como parte de una limpieza de seguridad más amplia, Defyn puede encargarse. Es una de las pequeñas tareas que hacemos en cada incorporación.

Avatar de Claire Smith
Sponsored Loved this story? Defyn turns articles like this into the websites your competitors wish they had. Talk to us → defyn.com.au