Vulnerabilidad en W3 Total Cache permite obtener datos privados de sitios WordPress

WordPress es, a día de hoy, uno de los gestores de contenidos más conocido y usado por millones de usuarios de todo el mundo. Permite a usuarios con diferentes niveles de conocimiento configurar y gestionar un blog  de forma sencilla, con la posibilidad de añadir complementos que realizan funciones adicionales. Uno de los complementos de WordPress más usados es W3 Total Cache, utilizado para optimizar el rendimiento.

Es precisamente este complemento, o más concretamente su implementación, lo que permite aprovecharse de un fallo en la forma en que W3TC almacena la caché de la base de datos en un directorio de acceso público que podría ser usado para obtener los hash de las contraseñas y otra información de la base de datos. Esta información fue publicada el pasado día 24 en la lista de correo Full Disclosure de Seclists.org.

Esta información es almacenada por defecto dentro del directorio /wp-content/w3tc/dbcache/ lo que permitiría que cualquiera navegase hasta esa ruta y la descargase si tenemos activado el listado de directorios. De esta forma, haciendo una búsqueda en Google podemos obtener algunos ejemplos de sitios que no tienen el acceso restringido a este apartado.

eset_nod32_antivirus_dbcache

Aun  sin tener este listado habilitado, es posible averiguar los directorios/archivos y así poder extraer las búsquedas en la base de datos y sus resultados, obteniendo incluso el hash de las contraseñas de los administradores. El problema es que hay una cantidad importante de sitios  web con esta vulnerabilidad y muchos de ellos incluso desconocen su existencia.

De momento, la manera más sencilla para proteger nuestros sitios web consiste en desactivar la caché de la base de datos o crear un fichero .htaccess dentro del directorio /wp-content/w3tc/ con la línea “deny from all” para así denegar el acceso directo, tal y como vemos en la imagen a continuación:

eset_nod32_antivirus_htaccess

En caso de no usar un servidor Apache, deberemos usar entrada en el fichero de configuración similar a la que hemos usado para evitar accesos directos a la carpeta /w3tc/.

Es importante que los administradores de este tipo de sitios y servidores web estén al corriente de las vulnerabilidades más recientes que puedan afectarles, puesto que esto les evitará más de un incidente de seguridad con nefastas consecuencias. Por nuestra parte, desde este blog intentaremos aportar nuestro granito de arena proporcionando la información necesaria para tratar de mitigar estas incidencias.

Josep Albors

Cálicos y gatetes. ¡Ay, los gatetes!