Apakah WordPress mengirim data tentang blog Anda ke WordPress.org atau Automattic?


40

Saya baru-baru ini mendengar seseorang mengatakan WordPress tidak mengirim data tentang blog Anda ke rumah. Benarkah? dan jika demikian, data apa itu atau di mana dalam kode yang dapat saya lihat apa yang dipertukarkan?


1
@Otto dapat memberi Anda evaluasi terbaik tentang data apa yang disimpan dan bagaimana akhirnya digunakan.
Brian Fegter

Jawaban:


30

Ya, benar. Lihat Tiket # 16778 wordpress membocorkan informasi pengguna / blog selama wp_version_check () . Semua detail ada di /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);

Agen pengguna berisi URL instalasi Anda, sehingga semua data ini tidak anonim lagi. Untuk mendapatkan filter privasi kembali 'http_request_args'dan ubah data yang tidak ingin Anda bocor.

Berikut adalah contoh sederhana untuk menganonimkan string UA (dari artikel blog terbaru ):

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;
}

Anda dapat mengubahnya ke ...

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

... dan dapatkan URL permintaan sebagai parameter kedua untuk panggilan balik Anda. Sekarang Anda dapat memeriksa apakah URL berisi http://api.wordpress.org/core/version-check/danubah semua nilai sesuai keinginanbatalkan permintaan dan kirim yang baru. Masih tidak ada cara untuk mengubah hanya URL, itu sebabnya saya membuat tambalan di tiket.


13

WordPress mengirim data versi kembali ke .org saat menggunakan .org API (menginstal / mencari / memperbarui) setahu saya. Data itu kemudian disusun menjadi grafik grafik. Anda dapat melihat datanya di sini . Saya menganggap ini juga digunakan ketika merencanakan peta jalan untuk persyaratan lingkungan (mis. PHP4> PHP5, dukungan versi MySQL, dll ...).

Berikut ini contoh tampilan data statistik .org:

masukkan deskripsi gambar di sini

Sebagai catatan, selalu penting bahwa Anda menginstal plugin dari sumber tepercaya. Otto, dan kurator lain dari direktori plugin telah melakukan pekerjaan luar biasa dengan menghilangkan plugin yang menggunakan base64 + eval untuk mengirim informasi pribadi kembali ke pembuat plugin yang tidak bertanggung jawab. Saya dapat menjamin ada beberapa yang muncul setiap minggu di repositori. Ini berlaku untuk tema di luar repo .org juga.

Saya pernah mendengar pembicaraan tentang membuat tim peninjau plugin (mirip dengan tim ulasan tema) yang akan mengamankan integritas repositori di masa depan. Anda dapat bergabung dengan milis wp-hacker dan mendapatkan informasi lebih lanjut di sana . Di situlah jenis diskusi ini benar-benar disempurnakan.


7

Ya kamu benar. Pemeriksa pembaruan wordpress, pemeriksa pembaruan plugin dan pemeriksa pembaruan tema mengirimkan informasi reguler tentang

  • IP Anda
  • URL blog
  • Versi WordPress
  • Versi PHP
  • Pengaturan lokal jika ada
  • Judul plugin, deskripsi, penulis - termasuk semua URL yang merupakan bagian dari ini.
  • Daftar lengkap semua plugin di situs Anda, baik aktif atau tidak.

ke situs api.wordpress.org. Ini adalah diskusi lama sejak 2007. Anda dapat membacanya lebih banyak di posting saya di telepon rumah WordPress - Spyware atau Justified post.


Membaca kode saya tidak bisa melihat kode apa pun yang termasuk informasi plugin. Saya pikir bagian itu mungkin tidak benar.
Roman
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.