O WordPress envia dados sobre o seu blog para WordPress.org ou Automattic?

40

Recentemente, ouvi alguém dizer que o WordPress envia dados sobre o seu blog para voltar para casa. Isso é verdade? e se sim, que dados são esses ou onde no código posso ver o que é trocado?

romano
fonte
11
O @Otto pode fornecer a melhor avaliação de quais dados são armazenados e como são utilizados.
Brian Fegter 04/04/12

Respostas:

30

Sim. Veja o ticket # 16778 wordpress está vazando informações do usuário / blog durante o wp_version_check () . Todos os detalhes estão em /wp-includes/update.php:

if ( is_multisite( ) ) {
    $user_count = get_user_count( );
    $num_blogs = get_blog_count( );
    $wp_install = network_site_url( );
    $multisite_enabled = 1;
} else {
    $user_count = count_users( );
    $user_count = $user_count['total_users'];
    $multisite_enabled = 0;
    $num_blogs = 1;
    $wp_install = home_url( '/' );
}

$query = array(
    'version'           => $wp_version,
    'php'               => $php_version,
    'locale'            => $locale,
    'mysql'             => $mysql_version,
    'local_package'     => isset( $wp_local_package ) ? $wp_local_package : '',
    'blogs'             => $num_blogs,
    'users'             => $user_count,
    'multisite_enabled' => $multisite_enabled
);

$url = 'http://api.wordpress.org/core/version-check/1.6/?' . http_build_query( $query, null, '&' );

$options = array(
    'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3 ),
    'user-agent' => 'WordPress/' . $wp_version . '; ' . home_url( '/' ),
    'headers' => array(
        'wp_install' => $wp_install,
        'wp_blog' => home_url( '/' )
    )
);

$response = wp_remote_get($url, $options);

O agente do usuário contém o URL da sua instalação, portanto, todos esses dados não são mais anônimos. Para obter um filtro de privacidade novamente 'http_request_args'e alterar os dados que você não deseja vazar.

Aqui está um exemplo simples para anonimizar a string UA (de um artigo recente do blog ):

add_filter( 'http_request_args', 't5_anonymize_ua_string' );

/**
 * Replace the UA string.
 *
 * @param  array $args Request arguments
 * @return array
 */
function t5_anonymize_ua_string( $args )
{
    global $wp_version;
    $args['user-agent'] = 'WordPress/' . $wp_version;

    // catch data set by wp_version_check()
    if ( isset ( $args['headers']['wp_install'] ) )
    {
        $args['headers']['wp_install'] = 'http://example.com';
        $args['headers']['wp_blog']    = 'http://example.com';
    }
    return $args;
}

Você pode mudar isso para ...

add_filter( 'http_request_args', 't5_anonymize_ua_string', 10, 2 );

… E obtenha o URL da solicitação como segundo parâmetro para seu retorno de chamada. Agora você pode verificar se o URL contém http://api.wordpress.org/core/version-check/ealtere todos os valores como quisercancele a solicitação e envie uma nova. Ainda não há como alterar apenas o URL, por isso criei o patch no ticket.

fuxia
fonte
13

O WordPress envia os dados da versão de volta ao .org ao usar a API .org (instalação / pesquisa / atualização) que eu saiba. Esses dados são então agrupados nos gráficos do gráfico. Você pode ver os dados aqui . Suponho que isso também seja usado ao traçar o roteiro para requisitos de ambiente (por exemplo, PHP4> PHP5, suporte à versão MySQL, etc ...).

Aqui está uma amostra da aparência dos dados das estatísticas .org:

insira a descrição da imagem aqui

Como uma observação lateral, é sempre imperativo que você instale plugins de fontes confiáveis. Otto e os outros curadores do diretório de plug-ins fizeram um ótimo trabalho eliminando plug-ins que usam base64 + eval para enviar informações pessoais de volta a autores inescrupulosos de plugins. Eu posso garantir que há alguns que aparecem semanalmente no repositório. Isso se aplica a temas fora do repositório .org também.

Ouvi falar de criar uma equipe de revisão de plugins (semelhante à equipe de revisão de temas) que garantirá a integridade do repositório no futuro. Você pode participar da lista de discussão wp-hackers e obter mais informações lá . É aí que esse tipo de discussão realmente é desenvolvido.

Brian Fegter
fonte
7

Sim você está correto. O verificador de atualização do wordpress, o verificador de atualização do plug-in e o verificador de atualização do tema envia informações regulares sobre

  • Seu ip
  • URL do blog
  • Versão do WordPress
  • Versão do PHP
  • Configuração de localidade, se houver uma
  • Título, descrição, autor do plug-in - incluindo todos os URLs que fazem parte disso.
  • Lista completa de todos os plugins no seu site, estejam eles ativos ou não.

para o site api.wordpress.org. Esta é uma discussão antiga desde 2007. Você pode ler mais sobre isso na minha página inicial do telefone WordPress - Spyware ou Justified post.

Sarath
fonte
Lendo o código, não pude ver nenhum código que incluísse informações sobre o plug-in. Eu acho que essa parte pode não ser verdadeira.
Roman