Todos sabemos lo importante que es el archivo wp-config.php para nuestra instalación de WordPress. Si un extraño lograra acceder a él, tendría las claves de acceso de nuestra base de datos y prácticamente el control de todo el contenido.
Últimamente los ataques a los sitios realizados con WordPress, se han concentrado en buscar vulnerabilidades que permitan descargar el archivo wp-config.php. Y de esta manera acceder a las claves de base de datos.
Añadiendo la protección
Seguramente por aquello del SEO tienes bien configurados tus enlaces permanentes (permalinks) esto se refleja en el archivo .htaccess normalmente de esta forma:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Una manera de evitar que cualquiera de estas vulnerabilidades conocidas o por descubrir no afecte nuestra página web, es añadiendo unas líneas nuevas a nuestro archivo .htaccess:
RewriteCond %{QUERY_STRING} wp-config.php RewriteRule .* - [F]
Lo que haremos será añadir estas dos líneas justo debajo de RewriteBase / y nos debería quedar así:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{QUERY_STRING} wp-config.php RewriteRule .* - [F] RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Con estas 2 líneas le estamos bloqueando todas las solicitudes que tienen «wp-config.php» en la cadena de consulta evitando que alguien pueda descargar el archivo wp-config.php utilizando uno de los tantos métodos conocidos.