Dua fakta tentang SSTP menyatu di sebagian besar penjelasan, dan penyatuan itulah yang membuat rekaman membingungkan. Paket aplikasi bertahan di dalam kanal terlindungi, dan koneksi TCP yang membawa kanal itu mempertahankan alamatnya sendiri sepanjang waktu. Yang berjalan di kabel adalah pengangkut beserta muatannya, bukan pengganti salah satunya. Telusuri tumpukan dari luar ke dalam dan beri label setiap batas saat Anda melewatinya.

Mulai dari pengangkut luar

Hal pertama di kabel adalah koneksi TCP biasa ke port 443, dengan alamat nyata yang diteruskan router. Koneksi itulah yang bertahan dari penerjemahan alamat jaringan dan yang dapat dihitung penyedia akses. Melindungi muatan tidak menghapus pengangkut, dan itu tidak menyembunyikan volume atau waktu.

Semua setelah titik ini diangkut, bukan dirutekan. Pengangkut tetap bekerja bahkan ketika pertukaran dalam gagal.

Ikuti enkapsulasi ke dalam

Di dalam kanal terlindungi terdapat pertukaran kendali SSTP, lalu sesi PPP, lalu paket jaringan yang ingin dikirim klien. Setiap lapisan punya perundingannya sendiri, pesan kesalahannya sendiri, dan mesin keadaannya sendiri. Karena itu sebuah gangguan bisa tampak seperti gangguan TLS dari satu sudut pandang dan gangguan PPP dari sudut lain. Membaca lapisan secara berurutan memberi tahu mesin keadaan mana yang berhenti.

Satu rekaman jarang memperlihatkan seluruh tumpukan. Header luar hanya terlihat di luar titik akhir, dan header dalam hanya setelah dekapsulasi. Asimetri itu berasal dari tempat Anda berdiri, bukan dari protokol.

Diagram di bawah mengelompokkan lapisan agar bisa dibicarakan sama sekali. Itu bukan tata letak bita, tidak menjanjikan satu catatan per paket, dan tidak mengatakan apa pun tentang berapa banyak operasi kriptografi yang dijalankan suatu implementasi.

outer IP header
  TCP to port 443
    TLS record layer
      SSTP control and data packets
        PPP frames
          inner IP packet
            application transport and payload

Beri label pengamat sebelum membaca rekaman

Dua rekaman dari satu sesi menjawab pertanyaan berbeda, dan antarmuka tempat keduanya diambil menentukan yang mana. Di jalur akses Anda melihat pengangkut dan catatan TLS, dan Anda dapat mengukur ukuran dan selang tanpa melihat alamat dalam. Di titik akhir, setelah dekapsulasi, paket dalam adalah lalu lintas biasa di bawah kebijakan penerusan privat.

Tuliskan antarmuka dan arah pada setiap rekaman sebelum menafsirkannya. Jejak dari adaptor fisik tidak akan pernah menampilkan alamat aplikasi dalam sebagai bidang luar biasa, dan membaca ketiadaan itu sebagai kegagalan enkripsi adalah kesalahan umum. Jejak dari dalam terowongan tidak menampilkan pengangkut sama sekali, sehingga tidak dapat menjawab pertanyaan tentang pandangan penyedia. Disiplin yang sama berlaku pada log titik akhir, yang mencatat urutan perundingan, bukan isinya.

Pertahankan pemeriksaan yang tidak dapat dibuktikan diagram

Urutan lapisan tidak membuktikan bahwa suatu penerapan memvalidasi sertifikat server, merundingkan versi TLS yang didukung, atau mengesahkan akun. Masing-masing adalah keputusan konfigurasi yang gagal secara terpisah dari enkapsulasi.

Verifikasi dengan klien yang melaporkan apa yang dirundingkannya alih-alih menyimpulkan dari gambar. Mulailah dengan jabat tangan TLS, lalu pertukaran SSTP, lalu PPP, dan berhenti pada tahap pertama yang melaporkan kesalahan. Perintah pertama mencetak rantai dan versi yang dirundingkan, dan yang kedua mendaftar jabat tangan yang ada dalam rekaman.

openssl s_client -connect vpn.corp.internal:443 -servername vpn.corp.internal
tshark -r sstp.pcap -Y "tls.handshake.type == 1"

Artikel terkait