Cara memfilter koneksi TLS1.1 dan di bawahnya yang tidak aman pada Load Balancer

Lihat Kategori

Cara memfilter koneksi TLS1.1 dan di bawahnya yang tidak aman pada Load Balancer

2 menit baca

Intro #

Layanan SSL semakin penting dan kami perlu memastikan bahwa kami menggunakan versi protokol TLS yang lebih baru dan sandi yang aman. Namun, dalam kehidupan nyata, ketika layanan kami memiliki jenis klien berbeda dengan jenis perangkat berbeda, kami perlu memastikan konektivitas ke layanan aman kami.

Jadi, akan sangat berguna untuk mengidentifikasi klien mana yang terhubung (atau mencoba terhubung) ke layanan SSL kita. Dalam hal ini, Anda dapat menggunakan alat tcpdump untuk load balancer atau server Linux apa pun.

Menjalankan tcpdump dengan filter SSL #

Perintah tcpdump pada load balancer atau server Linux memungkinkan untuk memfilter berdasarkan field TCP, jadi kita harus mencocokkan byte sesuai dengan nomor versi paket SSL yang ditemukan pada posisi ke-12. Selain itu, karena posisi yang berbeda dapat ditemukan untuk SSLv2, SSLv3, TLS1.0 atau TLS1.1, maka perlu digunakan kombinasi beberapa filter:

root@noid-ee-01:~$ tcpdump -i apa saja -n "(((tcp[((tcp[12] & 0xf0) >> 2)] = 0x14) || (tcp[((tcp[12] & 0xf0) >> 2)] = 0x15) || (tcp[((tcp[12] & 0xf0) >> 2)] = 0x17)) && (tcp[((tcp[12] & 0xf0) >> 2 )+1] = 0x03 && (tcp[((tcp[12] & 0xf0) >> 2)+2] < 0x03))) || (tcp[((tcp[12] & 0xf0) >> 2)] = 0x16) && (tcp[((tcp[12] & 0xf0) >> 2)+1] = 0x03) && (tcp[((tcp[12] & 0xf0) >> 2)+9] = 0x03) && (tcp[((tcp[12] & 0xf0) >> 2)+10] < 0x03) || (((tcp[((tcp[12] & 0xf0) >> 2)] < 0x14) || (tcp [((tcp[12] & 0xf0) >> 2)] > 0x18)) && (tcp[((tcp[12] & 0xf0) >> 2)+3] = 0x00) && (tcp[((tcp[ 12] & 0xf0) >> 2)+4] = 0x02))"

Perintah akan menunggu hingga pembatalan perintah secara manual dengan Crtl+C.

Menguji filter SSL #

Untuk menguji koneksi SSL terhadap server dengan protokol SSL tertentu, Anda dapat menggunakan openssl di sisi klien, seperti yang ditunjukkan di bawah ini dengan koneksi yang berhasil.

klien:~$ openssl s_client -connect 192.168.56.10:443 -tls1 CONNECTED(00000003) [...] --- Rantai sertifikat [...] --- Sertifikat server -----MULAI SERTIFIKAT---- - MIID8DCCAtigAwIBAgIJAJ22cPNVcSZYMA0GCSqGSIb3DQEBCwUAMIGMMQswCQYD VQQGEwJFUzEOMAwGA1UECAwFU3BhaW4xDjAMBgNVBAcMBVNwYWluMRMwEQYDVQQK DApaZXZlbmV0IFNMMRswGQYDVQQLDB JUZWxlY29tbXVuaWNhdGlvbnMxCjAIBgNV [...]

Anda perlu mengubah server dan port yang diinginkan. Selain itu, Anda dapat mengubah parameter -tls1 untuk protokol yang ingin digunakan.

Menafsirkan hasilnya #

Di sisi server, Anda akan melihat sesuatu seperti ini:

root@noid-ee-01:~$ tcpdump [...] tcpdump: keluaran verbose ditekan, gunakan -v atau -vv untuk mendengarkan dekode protokol lengkap pada LINUX_SLL tipe tautan apa pun (dimasak di Linux), ukuran tangkapan 262144 byte 12 :20:46.984131 IP 192.168.56.1.58286 > 192.168.56.10.444: Bendera [P.], seq 1580373103:1580373207, ack 4195613909, win 502, panjang 104 12:20:46.988648 IP 192.168.56.10.444 > 192.168.56.1.58286: Bendera [P.], seq 1:1414, ack 104, menang 29, panjang 1413 [...]

Alamat IP 192.168.56.1 terdeteksi sebagai koneksi tidak aman ke layanan 192.168.56.10.444 di server.

📄 Unduh dokumen ini dalam format PDF #

    EMAIL: *

    Didukung oleh BetterDocs