WordPress por defecto muestra la versión instalada en el código fuente de todas las páginas. Esta información puede ser utilizada por un hacker para conocer rápidamente las vulnerabilidades del WordPress instalado en esa web.
Esto sobre todo es relevante si la versión del WordPress no es una de las últimas versiones disponibles, ya que entonces habrá más probabilidades de que sea vulnerable a alguno de los agujeros de seguridad que se hayan solucionado posteriormente.
Para ver si un WordPress muestra la información de la versión, solo hay que mirar el código fuente y buscar por meta=»generator». En la versión de WordPress 3.8.1 aparece una línea similar a esta:
<meta name="generator" content="WordPress 3.8.1" />
Hay distintas opciones para eliminar esta información, pero solamente con una se elimina de todos los sitios en los que pueda aparecer.
Una opción es eliminar la línea del meta=»generator» del código fuente del archivo header.php, eliminando la línea:
<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" />
Otra opción es incluir en el archivo functions.php la siguiente función:
remove_action('wp_head', 'wp_generator');
Pero ambas son soluciones no completas, ya que WordPress no solamente muestra la versión en el encabezado del código fuente, sino también en otras partes como por ejemplo los RSS.
La forma para eliminar completamente la información de la versión de WordPress es añadiendo la siguiente función al archivo functions.php del tema que esté activo:
function eliminar_completamente_version() {
return '';
}
add_filter('the_generator', 'eliminar_completamente_version');
Solamente de esta forma se puede estar seguro que en ningún sitio del código de la web aparece la versión de WordPress.
Esto no significa que no haya que actualizar las instalaciones de WordPress y que no haya que eliminar archivos como el readme.html que también tiene la versión de WordPress (solo la principal no las subversiones).
Para proteger el acceso al archivo readme.html, se pueden añadir las siguientes líneas al archivo .htaccess del directorio raíz del blog y así dará un error de permiso y no permite acceder al mismo. Además de paso protegemos el archivo .htaccess:
# BEGIN Proteger algunos archivos
<Files .htaccess>
Order allow,deny
Deny from all
</Files>
<FilesMatch "^(readme)\.html$">
Order Allow,Deny
Deny from all
</FilesMatch>
# END Proteger algunos archivos
Espero que os haya parecido interesante. Si tenéis preguntas, dejar un comentario.