Bisakah URL dibaca oleh pihak ketiga saat menjelajah melalui HTTPS?

32

Kita semua tahu bahwa HTTPS mengenkripsi koneksi antara komputer dan server sehingga tidak dapat dilihat oleh pihak ketiga. Namun, dapatkah ISP atau pihak ketiga melihat tautan persis halaman yang diakses pengguna?

Misalnya, saya berkunjung

https://www.website.com/data/abc.html

Akankah ISP tahu bahwa saya mengakses * / data / abc.html atau hanya tahu bahwa saya mengunjungi IP www.website.com?

Jika mereka tahu, lalu mengapa Wikipedia dan Google memiliki HTTPS ketika seseorang hanya bisa membaca log internet dan mencari tahu konten yang tepat dilihat pengguna?

Anonim
sumber
7
Petunjuk: Jika Anda tidak mendaftarkan akun Anda, kunjungi tempat ini dari berbagai IP, dan jangan simpan cookie Anda, partisipasi dalam Super User akan sedikit ... terpecah-pecah, yang berarti Anda bahkan tidak dapat menerima jawaban pada posting Anda sendiri , atau tambahkan komentar. Saya sangat menyarankan Anda mendaftarkan akun di sini.
slhck

Jawaban:

48

Dari kiri ke kanan:

The skema https: ini, jelas, ditafsirkan oleh browser.

Nama domain www.website.com diselesaikan ke alamat IP menggunakan DNS. ISP Anda akan melihat permintaan DNS untuk domain ini, dan responsnya.

The path /data/abc.html dikirim dalam permintaan HTTP. Jika Anda menggunakan HTTPS, itu akan dienkripsi bersama dengan seluruh permintaan dan respons HTTP.

The string ?this=that , jika ada di URL, dikirim dalam permintaan HTTP - bersama-sama dengan jalan. Jadi itu juga terenkripsi.

The fragmen #there , jika ada, tidak dikirim di mana saja - itu ditafsirkan oleh browser (kadang-kadang dengan JavaScript di halaman kembali).

grawity
sumber
3
Anda lupa bahwa browser modern yang mendukung SNI mengumumkan nama host dalam teks biasa bahkan untuk permintaan HTTPS.
Monstieur
9
@Kurian: Yang penting, karena nama host sudah "diumumkan" oleh DNS.
grawity
2
@Kurian: alamat IP dapat diperoleh dengan cara lain, tetapi dalam praktiknya jarang. Dan melihat protokol tunggal dalam isolasi tanpa mempertimbangkan bagaimana itu sebenarnya digunakan cenderung kehilangan bagian-bagian penting.
Joachim Sauer
Saya tidak tahu apakah Tor menggunakan node keluar yang sama untuk menyelesaikan nama dan membangun koneksi HTTPS yang sebenarnya, atau yang berbeda. Jika menggunakan node yang terpisah, maka itu masih satu-satunya tempat di mana SNI akan berpengaruh.
grawity
13

ISP hanya akan tahu Anda mengunjungi alamat IP yang terkait www.website.com(dan mungkin URL jika Anda menggunakan DNS mereka dan mereka secara spesifik mencari lalu lintas - jika permintaan DNS tidak melewati bahwa mereka tidak akan melihatnya).

(Beruang bersama saya sedikit di sini - saya mendapatkan jawabannya.)

Cara protokol HTTP bekerja adalah dengan menyambungkan ke port (biasanya port 80) dan kemudian browser web mengomunikasikan halaman yang diinginkannya ke server - Permintaan sederhana untuk mencari http://www.sitename.com/url/of/site.htmlakan memiliki baris berikut:

DAPATKAN /url/of/site.html HTTP / 1.1
host: www.sitename.com

HTTPS melakukan hal yang persis sama kecuali pada port 443 - dan membungkus seluruh sesi TCP (yaitu, semua yang Anda lihat dalam bit yang dikutip di atas ditambah respons) ke dalam sesi terenkripsi SSL - sehingga ISP tidak melihat lalu lintas apa pun ( tetapi mereka mungkin dapat menyimpulkan sesuatu berdasarkan ukuran situs, dan pencarian DNS untuk menyelesaikan www.sitename.comke alamat IP pada contoh pertama).

Tentu saja, jika ada "bug web" yang tertanam di halaman, ini dapat memberikan "mitra" petunjuk distributor informasi tentang apa yang Anda lihat dan siapa Anda - juga, jika rantai kepercayaan Anda rusak, ISP dapat melakukan serangan pria di tengah. Alasan mengapa Anda dapat memiliki enkripsi end-to-end pribadi, secara teori, adalah karena sertifikat CA yang didistribusikan dengan browser Anda. Jika ISP atau pemerintah dapat menambahkan sertifikat CA atau mengkompromikan CA - dan keduanya pernah terjadi di masa lalu - Anda kehilangan keamanan Anda. Saya percaya bahwa Great Firewall of China secara efektif melakukan serangan Man-In-The-Middle untuk membaca data HTTPS, tetapi sudah lama sejak saya di sana.

Anda dapat menguji sendiri ini dengan cukup mudah dengan mendapatkan perangkat lunak yang akan mengendus lalu lintas yang masuk dan meninggalkan komputer Anda. Saya percaya perangkat lunak gratis bernama Wireshark akan melakukan ini untuk Anda.

davidgo
sumber
0

Saya tidak yakin apakah ini komentar atau jawaban yang layak, tetapi saya ingin membagikan satu tambahan.

Jawaban di sini menunjukkan apa yang harus terjadi. Pertanyaannya adalah dapatkah url dibaca. Jawabannya adalah ya, meskipun relatif tidak mungkin.

Penyerang (pihak ketiga) dapat benar-benar mencegat lalu lintas https Anda dan membaca semua permintaan Anda dalam kasus tertentu. Untuk mempelajari lebih lanjut, saya mengundang Anda untuk membaca MITM dan juga SSLStrip . Saya bisa membahas hal ini lebih lanjut jika perlu untuk memahami.

Anda seharusnya tidak mengharapkan ISP Anda melakukan ini baik karena itu adalah pemborosan bandwidth mereka tetapi juga karena mereka memiliki lebih banyak kehilangan jika Anda mencari tahu dan menuntut. Namun jawaban yang lebih tepat untuk pertanyaan Anda, bisakah ini dilakukan? Ya, meskipun tidak mungkin ada orang yang cukup peduli untuk melihat apa yang Anda googling atau wiki-ing.

tophersmith116
sumber