Melanjutkan pembahasan sebelumnya, artikel ini akan masih menjelaskan penyebab-penyebab kenapa Handshake SSL/TLS gagal dan bagaimana memperbaikinya untuk sertifikat SSL/TLS dengan detail teknis yang lebih jelas untuk bisa Anda temukan jawabannya.

Bagian I

kenapa handshake ssl/tls gagal dan bagaimana memperbaikinya untuk sertifikat ssl/tls

 

(SSL tidak lagi akurat secara teknis karena ini adalah protokol yang tidak digunakan lagi. Namun, kami akan tetap merujuknya seperti itu di seluruh artikel sebab orang-orang masih biasa menggunakan istilah SSL. Jadi, Anda akan melihat “Handshake SSL” dan “Handshake TLS” digunakan secara bergantian di seluruh konten, tetapi ketahuilah bahwa kita masih berbicara tentang Handshake SSL/TLS.)

 

Handshake SSL/TLS – Server Error

Sebagian besar kegagalan Handshake SSL/TLS adalah akibat dari masalah dari sisi server. Bebebrapa diantaranya mudah diperbaiki, beberapa di antaranya sedikit lebih rumit, dan beberapa mungkin tidak layak untuk diperbaiki sama sekali.

Mari kita lihat bersama.

4. Protokol Tidak Cocok

Ini sebenarnya adalah kesalahan yang dapat terjadi pada sisi klien dan sisi server, dan sebenarnya bisa menjadi satu yang tidak layak untuk diperbaiki tergantung pada konteksnya. Dalam hal protokol dan sandi pendukung, bagian terpenting dari kebijaksanaan adalah : selalu bergerak maju, tidak pernah mundur.

tls1.3 adalah protokol terbaru yang mendukung kinerja full handshake ssl/tlsTLS 1.2 keluar lebih dari satu dekade yang lalu, namun masih ada sebagian kecil situs web yang tidak mendukungnya. Pada tahun 2018, TLS 1.3 akhirnya diterbitkan sebagai RFC 8446 oleh IETF. Pada Agustus 2020, Qualys SSL Labs melakukan bahwa 98,4% dari 150.000 situs teratas Alexa mendukung TLS 1.2 dan 32,8% mendukung TLS 1.3.

Di arah lain, persyaratan PCI DSS mengamanatkan bahwa semua website yang mengumpulkan informasi kartu pembayaran mengakhiri dukungan untuk SSL 3.0 dan TLS 1.0. Dan empat pembuat browser utama–Google, Firefox, Apple & Microsoft–bersama-sama mengumumkan TLS 1.1 akan diberhentikan pada tahun 2020.

Jika Anda mendapatkan eror kegagalan Handshake SSL/TLS karena ketidakcocokan protokol, itu berarti klien dan server tidak memiliki dukungan timbal balik untuk versi TLS yang sama. Berikut contohnya:

protokol tls klien yang tidak mendukung protokol server

 Dalam skenario ini, tidak ada protokol TLS yang saling  mendukung dan server mungkin tidak mendukung pembuatan versi mundur. Dan sebelum Anda bertanya, tidak, server seharusnya tidak memperbaiki ini. Dalam contoh ini, klien lah yang harus mengupgrade browser mereka, atau jika browsernya adalah yang terkini–konfigurasikan untuk mendukung TLS versi terbaru.

Pada titik ini, Anda harus menggunakan TLS 1.2 atau TLS 1.3. Jika tidak, tambahkan dukungan untuk mereka. Tapi ingat, jangan pernah mundur.

5. Cipher Suite Mismatch

Ini sangat mirip dengan ketidakcocokan protokol–hanya sedikit lebih terperinci. SSL/TLS bukan hanya satu algoritma yang menangani semuanya (meskipun sudah mendekati ECC), sebenarnya ini adalah kumpulan algoritma yang melayani berbagai fungsi dan bekerjasama untuk membuat SSL/TLS.

Bagaimanapun, sementara cipher suite yang digunakan oleh TLS 1.3 telah disempurnakan, secara tradisional Cipher Suite memiliki algoritma yang menangani :

  • Asymmetric public key encryption
  • Symmetric session key encryption
  • Key generation
  • Signature hashing

Industri dan lembaga pemerintah yang berbeda memiliki standar enkripsi yang menyarankan cipher suite yang berbeda. Secara umum, ada banyak tumpeng tindih di sana, dan sebagian besar website mendukung beberapa cipher yang disetujui bersama. Jelas, peluang negosiasi yang berhasil akan berkurang secara substansial jika sebuah situs hanya mendukung sebuah cipher suite.

Seringkali hal ini dapat terjadi dalam jaringan jika Anda melakukan SSL bridging, di mana perangkat Edge menerima dan mendekrip lalu lintas HTTPS, kemudian mengenkripsinya kembali, lalu mengirimkan ke server aplikasi. Jika perangkat Edge dan server aplikasi tidak berbagi cipher suite yang didukung bersama, itu akan menyebabkan kesalahan.

Sama seperti versi protokol, Anda hanya boleh bergerak maju dengan cipher suite–jangan pernah mundur. Ingat, ketika versi protokol atau cipher suite tidak digunakan lagi, itu bukan karena industri berusaha keras–itu karena kerentanan telah ditemukan atau akan segera terjadi. Jadi, mundur hanya membuat koneksi Anda berpotensi menjadi kurang aman.

6. Sertifikat SSL/TLS Salah

Ada beberapa hal berbeda yang dapat membuat browser melihat dan mengidentifikasi sertifikat SSL/TLS salah dan mencegah handshake berhasil diselesaikan. Kami akan membahas masing-masing di sub-bagian berikutnya. Perlu juga dicatat bahwa, terkadang, masalah ini akan menjadi kesalahan yang berbeda di sisi klien sebagai lawan dari pesan gagal Handshake SSL/TLS. Umumnya, sesuatu di sepanjang garis situs web tidak menyediakan koneksi aman . Tetapi pada tingkat teknis kesalahan itu terjadi sebagai akibat dari handshake yang gagal.

konfigurasi sertifikat ssl/tls yang salah juga menjadi penyebab handshake ssl/tls gagal

7. Hostname Yang Salah

Ini dulunya adalah masalah dengan versi situs web WWW dan non WWW. Namun, masalah ini sebagian besar telah diatasi oleh pihak Otoritas Sertifikat (CA) yang mengizinkan salah satunya untuk didaftarkan sebagai domain SAN (subject alternative name) secara gratis. Masalah ini biasanya dapat diperbaiki dengan menerbitkan kembali sertifikat (reissue) atau terkadang dengan menggunakan sertifikat wildcard.

8. Certificate Chain yang Salah

Kami membahas lebih dalam tentang chain certificate, roots , dan intermediate certificate di artikel sebelumnya, tetapi inilah versi cepatnya. Model trust dalam SSL/TLS dan PKI secara umum bergantung pada program root yang dikurasi dengan cermat. Ini adalah kumpulan sertifikat dasar CA tepercaya yang benar-benar ada di dalam sistem komputer.

sertifikat root yang dipercaya oleh browser untuk menerima sertifikat ssl/tls dari CA terpercaya

CA Roots ini sangat berharga–sedemikian rupa sehingga alih-alih mengambil risiko langsung dari mereka, Otoritas Sertifikat (CA) memutar intermediate roots dan menandatangani sertifikat

SSL/TLS leaf (end-user) dengan intermediate. Di sinilah chain mulai masuk. Root CA Certificate digunakan untuk menandatangani intermediate roots secara digital. Intermediate tersebut digunakan untuk menandatangani intermediate  atau end-user, leaf sertifikat SSL/TLS yang lainnya.

hirarki chain certificate pada sertifikat SSL/TLS

Saat browser menerima sertifikat SSL / TLS, salah satu hal yang dilakukannya untuk memeriksa keasliannya adalah mengikuti tanda tangan (digital signature). Itu melihat tanda tangan digital (digital signature) pada sertifikat SSL / TLS dan mengikutinya kembali ke intermediate root yang menandatanganinya. Kemudian ia melihat intermediate digital signature itu dan mengikutinya kembali ke sertifikat yang menandatangani intermediate. Begitu seterusnya dan seterusnya hingga, akhirnya, mencapai salah satu root CA certificate yang dipercayainya.

Jika tidak dapat melakukan ini, chain sertifikat seringkali tidak lengkap, artinya browser tidak dapat menemukan salah satu intermediate dan Handshake SSL/TLS akan gagal. Untuk mengatasinya, Anda perlu mencari dan menginstal intermediate certificate yang hilang. Tergantung pada CA mana Anda membeli sertifikat, intermediate mereka harus tersedia di situs web mereka.

9. Sertifikat Expired Atau di Revoke

Sementara pencabutan sertifikat (revoke) dalam ekosistem SSL/TLS saat ini meninggalkan banyak hal yang diinginkan, masih ada beberapa konteks di mana browser akan melihat bahwa sertifikat telah dicabut dan gagal melakukan Handshake atas dasar itu. Lebih sering, ini karena sertifikat yang kedaluwarsa. Sertifikat SSL/ TLS hanya valid untuk jangka waktu tertentu.

Kedaluwarsa sertifikat SSL/TLS terjadi karena beberapa kemungkinan alasan (bergantung pada siapa Anda bertanya):

  • Untuk memastikan bahwa informasi validasi tetap akurat.
  • Untuk mengembangkan pembaruan protokol dan cipher lebih cepat.
  • Untuk menghilangkan Certificate Revocation Lists (CRL) .
  • Untuk memerangi kemungkinan penjahat dunia maya melanggar algoritma enkripsi standar (meskipun ini hampir tidak mungkin tanpa komputasi kuantum).

Mulai 1 September 2020, validitas maksimum untuk sertifikat SSL/TLS sekarang adalah satu tahun (tepatnya 398 hari). Itu berarti Anda perlu memperpanjang dan mengganti sertifikat lama ke sertifikat yang baru secara teratur. Jika Anda lupa sebelum salah satu kedaluwarsa, itu mungkin mengapa Handshake SSL/TLS gagal. Dapatkan saja sertifikat valid yang dikeluarkan dan menginstalnya–masalah Anda akan selesai.

10. Server Yang Mendukung SNI

Ini lebih merupakan masalah internal yang ada di antara perangkat, tetapi terkadang klien yang berkomunikasi dengan server mengindikasi nama server ketika tidak mendukung SNI dapat menjadi penyebab kegagalan Handshake TLS.

Hal pertama yang perlu Anda lakukan adalah mengidentifikasi hostname dan port number server yang dipermasalahkan dan memastikannya berkemampuan SNI serta mengomunikasikan semua yang diperlukan. Sekali lagi, ini biasanya bukan masalah yang dihadapi publik, tetapi bisa menjadi penyebab dari waktu ke waktu secara internal.

 

Pengganti Self-Signed

Di internet publik, sertifikat yang ditandatangani sendiri akan mengembalikan kesalahan sebanyak 100% jika klien belum menginstal private root Anda secara manual di penyimpanan root (root store) mereka . Namun, pada jaringan internal, sertifikat yang ditandatangani sendiri cukup umum. Dan jika Anda hanya cukup dengan menggantinya, itu bisa menimbulkan masalah.

Sebagian besar browser akan menyimpan sertifikat sehingga setelah kembali ke situs web itu membuat proses Handshake SSL berjalan lebih cepat. Tetapi jika Anda membuat sertifikat baru secara berkala, menambahkan semua sertifikat yang baru dibuat itu ke database lokal akan menyebabkan kebingungan. Akhirnya, browser akan kesulitan membangun jalur dan berakibat macet atau bahkan tidak berjalan.

Di masa lalu, Firefox telah mengalami kesulitan dengan hal ini – ke titik di mana 7-8 masalah sertifikat akan menyebabkan latensi yang signifikan, dan 10 atau lebih dapat menyebabkan Handshake SSL membutuhkan waktu hingga 30 detik.

 

Jangan Menghargai Penerapan SSL/TLS yang Buruk

Sering kali pemilik situs web tidak ingin melakukan perubahan hingga ada masalah yang tidak dapat mereka abaikan. Meskipun ada beberapa perbaikan sisi klien untuk eror gagal Handshake SSL/TLS, ini umumnya akan menjadi masalah sisi server.

Itu berarti sebagai pengguna internet biasa, pilihan Anda terbatas dalam hal mengurangi kesalahan Handshake TLS. Hal terbaik yang harus dilakukan adalah memberi tahu pemilik situs tentang masalah tersebut dan menunggu mereka memperbaikinya. Jika tidak, mungkin kebijakannya untuk berhenti menggunakan situs web.

  • Jangan drop firewall Anda – Anda biasanya dapat memasukkan situs web ke dalam white lists, tetapi jangan drop firewall Anda.  JANGAN PERNAH.
  • Jangan nonaktifkan antivirus Anda – Sekali lagi, masukkan ke white lists jika memungkinkan, tetapi tetap aktifkan dan perbarui.
  • Jangan terhubung melalui HTTP atau klik melalui peringatan interstisial – Ini buruk dalam cara Anda melihatnya dan dapat menyebabkan banyak masalah.

Jika situs web tidak dapat menawarkan pengalaman penjelajahan yang aman , Anda tidak boleh mengunjunginya. Menghilangkan eror Handshake SSL/TLS tidak berarti membahayakan keamanan Anda.

super
super

Would you like to share your thoughts?

Your email address will not be published. Required fields are marked *

nineteen − 1 =