Remover a versão do WordPress como uma prática de segurança

É comum creditarem o fato de remover a versão do WordPress como uma prática de segurança. Isso é controverso. Saiba como realmente remover a versão do WordPress e sua relação com segurança.

Seus amigos merecem saber desse conteúdo?

É comum creditarem o fato de remover a versão do WordPress como uma prática de segurança. Isso é controverso. A melhor dica de segurança é manter o WP e seus plugins e temas sempre atualizados, ou seja, fazer uso da versão estável mais recente, o que nem sempre acontece.

Estátistica de uso das versões do WordPress. A importância de remover a versão do WordPressUma das práticas mais utilizadas por hackers é explorar falhas públicas em versões de softwares desatualizados. Portanto, se você está com o WordPress, plugins e temas atualizados expor a versão do WP e seus componentes não te prejudicará muito.

Se, por alguma razão, as versões estão defasadas, aconselho em muito remover a versão do WordPress dos locais em que ele a torna pública: arquivos, comentários, marcação e parâmetros de URL. Como há novas versões sendo lançadas constantemente e hackers de plantão estudando as brechas, mantenha a prática de remover a versão do WordPress e garanta uma maior segurança para WordPres.

Os locais onde a versão do WordPress é exposta

O local mais comum e conhecido é através da meta tag nomeada como generator. Muitos ocultam essa informação e acreditam terem feito o suficiente. Mas há muito trabalho a ser feito. Vamos conhecer os locais mais comuns onde a versão do WordPress é exposta.

Meta tag generator em marcação HTML e XHTML

<meta name="generator" content="WordPress x.x.x" />

Tag generator em feed ATOM

<generator uri="http://wordpress.org/" version="4.2.2">WordPress</generator>

Tag generator em feed RSS 2 (posts e comentários)

<generator>http://wordpress.org/?v=4.2.2</generator>

Tag generator em feed RDF

<admin:generatorAgent rdf:resource="http://wordpress.org/?v=4.2.2" />

Em comentário HTML

<!-- generator="WordPress/x.x.x" -->

Em comentário no arquivo de exportação

<!-- generator="WordPress/x.x.x" created="Y-m-d H:i" -->

Em parâmetros de URL

../wp-includes/...?ver=x.x.x

Em arquivos do core

  1. /readme.html
  2. /wp-admin/install.php
  3. /wp-admin/upgrade.php
  4. /wp-links-opml.php

Observou como a lista é extensa? E mesmo trabalhando para remover a versão do WordPress em cada uma dessas situações, saiba que existem técnicas avançadas de fingerprint de arquivos que permitem detectar a versão em uso, assim como o uso de ferrramentas como o WP Scan que, na verdade, além de procurar a versão nos locais citados também faz uso de fingerprint.

Como remover a versão do WordPress das marcações de saída

add_filter( 'get_the_generator_html', '__return_false' );
add_filter( 'get_the_generator_xhtml', '__return_false' );
add_filter( 'get_the_generator_atom', '__return_false' );
add_filter( 'get_the_generator_rss2', '__return_false' );
add_filter( 'get_the_generator_rdf', '__return_false' );
add_filter( 'get_the_generator_comment', '__return_false' );
add_filter( 'get_the_generator_export', '__return_false' );

Como remover a versão do WordPress dos parâmetros de URL

/**
 * Remove a versão do WordPress dos parâmetros de URL
 *
 * @author Iniciativa #WordPressSeguro https://apiki.com/wordpress-seguro/
 * @param string $src A URL do arquivo JavaScript/CSS a ser carregado
 * @return string Retorna a URL do arquivo sem a versão do WordPress
 */
function _remove_wp_version_from_url_param( $src )
{
 global $wp_version;
 
 $src = esc_url( $src );

 if ( !$src )
 return $src;

 $src_params = explode( '?ver=', $src );
 
 if ( !isset( $src_params[1] ) )
 return $src;

 if ( $src_params[1] !== $wp_version )
 return $src;

 return $src_params[0];
}

add_filter( 'script_loader_src', '_remove_wp_version_from_url_param' );
add_filter( 'style_loader_src', '_remove_wp_version_from_url_param' );

Como remover a versão do WordPress dos arquivos do core

No core do WordPress há arquivos desnecessários e às vezes, com a frequência de atualização, obsoletos. Leia o artigo os arquivos do core do WordPress e sua relação com a segurança e saiba como remover a versão do WordPress exposta em arquivos.

Um arquivo pouco usual para localizar a versão do WordPress é o /wp-links-opml.php. Nele a versão é exposta através de comentário HTML. Por isso consideramos também a remoção da versão do WordPress das marcações de saída inclusive nos comentários.

Importante frisar que mais importante do que remover a versão do WordPress do seu ambiente é manter os softwares atualizados, sempre.

Opa! Não conseguimos encontrar o seu formulário.