Karena tidak ada yang memberikan tangkapan kawat, ini dia.
Nama Server (bagian domain dari URL) disajikan dalam ClientHello
paket, dalam teks biasa .
Berikut ini menunjukkan permintaan browser untuk:
https://i.stack.imgur.com/path/?some=parameters&go=here
Lihat jawaban ini untuk lebih lanjut tentang bidang versi TLS (ada 3 di antaranya - bukan versi, bidang yang masing-masing berisi nomor versi!)
Dari https://www.ietf.org/rfc/rfc3546.txt :
3.1. Indikasi Nama Server
[TLS] tidak menyediakan mekanisme bagi klien untuk memberi tahu server nama server yang dihubungi. Mungkin diinginkan bagi klien untuk memberikan informasi ini untuk memfasilitasi koneksi yang aman ke server yang menampung beberapa server 'virtual' pada satu alamat jaringan yang mendasarinya.
Untuk memberikan nama server, klien MUNGKIN menyertakan ekstensi tipe "nama_server" dalam halo (diperluas) klien.
Pendeknya:
FQDN (bagian domain dari URL) DAPAT dikirimkan secara jelas di dalam ClientHello
paket jika ekstensi SNI digunakan
Sisa URL ( /path/?some=parameters&go=here
) tidak memiliki bisnis di dalam ClientHello
karena URL permintaan adalah hal HTTP (OSI Layer 7), oleh karena itu tidak akan pernah muncul dalam jabat tangan TLS (Layer 4 atau 5). Yang akan datang nanti dalam GET /path/?some=parameters&go=here HTTP/1.1
permintaan HTTP, SETELAH yang aman saluran TLS didirikan.
RINGKASAN BISNIS PLAN
Nama domain DAPAT ditransmisikan dengan jelas (jika ekstensi SNI digunakan dalam jabat tangan TLS) tetapi URL (jalur dan parameter) selalu dienkripsi.
PEMBARUAN MARET 2019
Terima kasih carlin.scott untuk membawa yang ini.
Payload dalam ekstensi SNI sekarang dapat dienkripsi melalui draft proposal RFC ini . Kemampuan ini hanya ada di TLS 1.3 (sebagai opsi dan terserah kedua ujungnya untuk mengimplementasikannya) dan tidak ada kompatibilitas mundur dengan TLS 1.2 dan di bawah.
CloudFlare melakukannya dan Anda dapat membaca lebih lanjut tentang bagian dalam di sini -
Jika ayam harus ada sebelum telur, di mana Anda meletakkan ayam?
Dalam praktiknya ini berarti bahwa alih-alih mentransmisikan FQDN dalam teks biasa (seperti yang ditunjukkan oleh penangkapan Wireshark), ia sekarang dienkripsi.
CATATAN: Ini membahas aspek privasi lebih daripada keamanan karena pencarian DNS balik MUNGKIN mengungkapkan host tujuan yang dituju.