Mengapa sertifikat SSL yang tidak ditandatangani diperlakukan lebih buruk daripada tidak ada sertifikat SSL?

19

Jika saya melihat situs yang memiliki sertifikat SSL yang ditandatangani atau ditandatangani sendiri, browser saya memberi saya peringatan. Namun browser yang sama tidak memiliki masalah yang memungkinkan kredensial untuk dikirim ke halaman yang tidak aman.

Mengapa sertifikat yang ditandatangani sendiri diperlakukan lebih buruk daripada tidak memiliki sertifikat?

Macha
sumber

Jawaban:

16

Ada banyak orang yang merasa bahwa sistem ini rusak.

Inilah logika di balik mengapa browser Anda akan memberi Anda peringatan yang mengkhawatirkan saat sertifikat SSL tidak valid:

Salah satu tujuan desain asli dari infrastruktur SSL adalah untuk menyediakan otentikasi server web. Pada dasarnya, jika Anda mengunjungi www.bank.com, SSL memungkinkan server web yang merespons untuk membuktikan bahwa server itu milik bank Anda. Ini menghentikan penipu dari memanipulasi DNS atau menggunakan metode lain untuk memiliki tanggapan server jahat.

"Kepercayaan" dalam SSL disediakan dengan meminta pihak ketiga yang tepercaya (perusahaan seperti VeriSign dan Thawte Consulting) menandatangani sertifikat, yang menunjukkan bahwa mereka telah memverifikasi bahwa itu milik siapa yang dikatakannya (secara teori dengan mengunjungi administrator TI di orang atau metode lain yang menciptakan kepercayaan langsung, meskipun bukti menunjukkan bahwa mereka sebenarnya agak longgar tentang hal itu - semua yang diperlukan untuk mendapatkan sertifikat SSL yang ditandatangani seringkali merupakan angka 800 dan sedikit keterampilan akting).

Jadi, jika Anda terhubung ke server web yang menyediakan sertifikat SSL, tetapi tidak ditandatangani oleh pihak ketiga yang tepercaya, secara teori ini bisa berarti bahwa Anda berkomunikasi dengan penipu yang berpura-pura menjadi server milik organisasi yang berbeda .


Dalam praktiknya, sertifikat yang ditandatangani sendiri umumnya hanya berarti bahwa organisasi yang menjalankan server memilih untuk tidak membayar sertifikat yang ditandatangani (mereka bisa sangat mahal, tergantung pada fitur yang Anda inginkan), atau tidak memiliki keahlian teknis untuk mengonfigurasinya ( beberapa solusi bisnis kecil menawarkan mekanisme satu klik untuk sertifikat yang ditandatangani sendiri, tetapi mendapatkan sertifikat tepercaya membutuhkan lebih banyak langkah teknis).

Saya pribadi percaya bahwa sistem ini rusak, dan bahwa berkomunikasi dengan server yang tidak menawarkan enkripsi jauh lebih berbahaya daripada berkomunikasi dengan server yang menawarkan SSL dengan sertifikat yang ditandatangani sendiri. ada tiga alasan mengapa browser tidak bertindak seperti ini:

  1. Komunikasi yang tidak terenkripsi adalah norma di internet, jadi jika browser membuat Anda mengklik peringatan untuk melihat situs web yang tidak menawarkan enkripsi, Anda akan dengan cepat merasa terganggu dan menonaktifkan peringatan itu.
  2. Karena peringatan yang mengerikan kepada klien, tidak wajar melihat sertifikat yang ditandatangani sendiri di situs web produksi. Ini menetapkan sistem yang berkelanjutan: sertifikat yang ditandatangani sendiri mencurigakan karena jarang terjadi, jarang terjadi karena mencurigakan.
  3. Ini terdengar sinis dari saya, tetapi ada perusahaan yang berdiri untuk menghasilkan banyak uang dari menandatangani sertifikat SSL ( batuk Verisign batuk ), sehingga mereka menggunakan whitepapers (istilah IT yang berarti "iklan lama dan membosankan") dan publikasi lainnya untuk menegakkan gagasan bahwa sertifikat yang tidak ditandatangani berbahaya.
jcrawfordor
sumber
5
Tanpa rantai kepercayaan, yang Anda dapatkan dengan sertifikat yang ditandatangani CA dan bukan yang ditandatangani sendiri, tidak ada cara untuk memverifikasi bahwa server yang Anda sambungkan adalah siapa yang mengatakannya. Sertifikat yang ditandatangani sendiri berbahaya karena tidak memberikan sarana apa pun bagi pengguna untuk memverifikasi bahwa data yang mereka kirimkan mencapai tujuan yang mereka katakan. Orang-orang mulai belajar mencari "https" ketika melakukan transaksi aman, sehingga memiliki peringatan besar tentang sertifikat yang tidak sah atau ditandatangani sendiri adalah 100% dijamin, karena mereka kehilangan salah satu manfaat utama SSL.
MDMarra
Saya tidak akan mengatakan 'rusak'. Saya pikir add-on Firefox Certificate Patrol jauh lebih dekat dengan implementasi sertifikat dan pengelolaan kepercayaan yang benar daripada standarnya. Namun, standarnya lebih baik daripada mengabaikan jaringan kepercayaan sepenuhnya.
Slartibartfast
4
@MarkM - Perasaan saya adalah bahwa otentikasi tidak boleh dianggap sebagai manfaat utama SSL. Saya tidak punya data untuk mendukung saya, tapi saya pikir insiden keamanan jauh lebih banyak dihasilkan dari data yang ditransfer melalui koneksi yang tidak terenkripsi (sebagai contoh, insinyur keamanan Facebook yang kata sandinya dicuri - mereka mengendus kata sandi dari jaringan wifi) , karena login facebook tidak dienkripsi) daripada melalui serangan MitM atau peniru, yang relatif lebih rumit untuk diterapkan. Fokus pada otentikasi melalui enkripsi di SSL, seperti yang saya catat, tepat apa yang menciptakan situasi ini.
jcrawfordor
1
@MarkM - walaupun pasti ada overhead, yang merupakan masalah yang sah, penggunaan sertifikat yang tidak ditandatangani tidak akan memberi tekanan pada CA, khususnya karena CA tidak akan digunakan untuk sertifikat yang ditandatangani sendiri. Juga, untuk organisasi dengan kekuatan yang memadai, ini bukan masalah - pertimbangkan bahwa Google sekarang default ke https untuk gmail dan beberapa layanan lainnya. Saya mengerti maksud Anda bahwa tanpa otentikasi, kegunaan SSL terdegradasi. Model saat ini tidak dirancang dengan baik. Yang benar-benar kita butuhkan adalah protokol terenkripsi standar, dan protokol terautentikasi untuk penggunaan yang lebih aman.
nhinkle
5
Arti penting saya, dan NRHinkle secara langsung mengatakan ini, adalah bahwa kita harus mulai mempertimbangkan enkripsi dan otentikasi sebagai tujuan terpisah, dan memungkinkan mereka untuk dicapai secara terpisah. Ini adalah kelemahan mendasar dengan sistem SSL saat ini: 1) Kami melihat enkripsi dan otentikasi melekat erat - untuk mencapai yang satu, Anda harus mencapai yang lain. Memberikan satu saja 'mencurigakan'. 2) Otentikasi harus diperoleh dari sejumlah CA yang mengutamakan keuntungan. Secara umum, CA bisa sangat mahal (Verisign dll.) Atau sangat teduh (NameCheap dll.)
jcrawfordor
6

Mengirim kredensial dari halaman ke halaman pada dasarnya adalah melakukan HTTP POST. Tidak ada yang istimewa tentang mengirim kredensial dibandingkan dengan mengirim misalnya istilah pencarian melalui POST. Jika ada posting ke halaman tidak aman akan memicu peringatan, pengguna akan dibombardir oleh peringatan tidak berguna.

Menggunakan saluran aman menunjukkan niat programmer untuk mengamankan transfer. Dalam hal ini, menggunakan peringatan sertifikat yang ditandatangani sendiri adalah hal yang sangat tepat untuk dilakukan.

Miro A.
sumber
Cukup adil bagiku.
dag729
Sebagai soal fakta, saya ingat bahwa di versi lama setidaknya dari Netscape Navigator melakukan pop up peringatan untuk setiap POST tidak terenkripsi. Tentu saja, semua orang menonaktifkannya setelah lima menit, jadi saya rasa itu sebabnya mereka mengeluarkannya ...
sleske
4

Saya tidak dapat berkomentar, jadi saya akan memposting informasi ini yang melengkapi informasi yang benar dari user40350.

Namun browser yang sama tidak memiliki masalah yang memungkinkan kredensial untuk dikirim ke halaman yang tidak aman.

Itu sebenarnya tidak benar. Sebagian besar browser akan menampilkan peringatan seolah- olah Anda akan mengirim data melalui koneksi yang tidak aman ketika Anda pertama kali mencobanya, tetapi Anda dapat mematikannya sehingga tidak pernah muncul lagi, dan saya yakin itulah yang telah Anda lakukan ...

Miro A menulis:

Mengirim kredensial dari halaman ke halaman pada dasarnya adalah melakukan HTTP POST. Tidak ada yang istimewa tentang mengirim kredensial yang dibandingkan dengan mengirim mis. Istilah pencarian melalui POST

Ini juga salah, karena bidang kata sandi adalah tag html khusus misalnya. Selain itu label seperti "nama pengguna" dan "kata sandi" juga mengkhianati banyak kepekaan mereka. Layak bagi peramban untuk mempertimbangkan jenis informasi ini.

ufotd
sumber
3

Koneksi yang diamankan oleh https: // protokol ditunjukkan oleh browser untuk "diamankan". Misalnya, sedikit Gembok ditampilkan atau sebagian URL ditandai dengan warna hijau.

Karena itu, pengguna diharapkan untuk percaya bahwa halaman yang ia kunjungi memang dari URL yang ia masukkan dan bukan dari orang lain.

Jika dia tidak menggunakan https: //, pengguna seharusnya tahu, bahwa data yang dimasukkan tidak dilindungi dan situs yang berselancar dengannya mungkin disalahgunakan.

Sertifikat yang ditandatangani sendiri tidak memastikan - melampaui harapan, bahwa halaman yang ditelusuri tidak dipalsukan, karena itu tidak memberikan keamanan ekstra.

usermac75
sumber
1

Perbedaan harus dibuat antara sertifikat tepercaya (ditandatangani oleh otoritas yang Anda percayai) dan tidak dipercaya. Kalau tidak, seseorang dapat menyamar sebagai bank Anda (misalnya) dengan menggunakan sertifikat yang ditandatangani sendiri dengan impunitas relatif.

Peringatan di muka Anda lebih baik daripada peringatan yang halus dalam hal ini karena risiko potensial relatif tinggi. Orang-orang mungkin mengklik tautan https dan bahkan tidak berpikir bahwa seseorang dapat duduk di tengah memantau koneksi. Jika indikasi bahwa sertifikat tersebut tidak dipercaya (halus, bukan ikon hijau, dll.), Maka orang dapat dengan mudah tertipu, menghapus manfaat SSL.

Slartibartfast
sumber
Bukankah mudah untuk meniru bank jika Anda memiliki akses ke komputer pengguna dan memodifikasi sertifikat mereka? Jika komputer pengguna tidak diubah, maka browser web tidak akan dapat memodifikasi URL halaman web untuk mengklaim bahwa mereka adalah bank; dan jika mereka mendapatkan URL yang sangat mirip, mereka masih bisa mendapatkan sertifikat untuk situs web itu dan pengguna tidak akan peduli dengan siapa halaman web ditandatangani, mereka hanya akan melihat bahwa itu https dan mudah-mudahan memperhatikan bahwa URL itu bukan URL bank mereka ...
Dmitry
Manfaat SSL adalah tidak percaya bahwa situs web itu sesuai dengan yang Anda pikirkan (Ini tidak mungkin karena aplikasi pihak ketiga dapat mengubah sertifikat Anda, atau bank dapat diretas); melainkan percaya bahwa komunikasi antara Anda dan siapa pun yang menurut situs itu adalah, hanya antara Anda berdua dan tidak ada orang lain yang dapat memahami komunikasi itu. Tidak memiliki sertifikat lebih buruk daripada memiliki sertifikat yang ditandatangani sendiri karena tidak masalah dengan siapa Anda berbicara, yang penting adalah bahwa tidak ada orang lain yang dapat mencegat apa yang Anda katakan.
Dmitry
Selain sebagai pengguna, apakah saya benar-benar tahu siapa Verisign dan mengapa saya harus memercayai mereka? Bukankah minat mereka menjual sertifikat lebih tinggi daripada meminta pertanggungjawaban pemilik sertifikat karena menyalahgunakan informasi yang Anda kirim kepada mereka?
Dmitry
0

Banyak alasan bagus telah dicantumkan. Ini satu lagi:

Pikirkan tentang kasus-kasus di mana satu halaman web yang aman menyematkan elemen dari yang lain. Seorang penyerang dapat mendeteksi permintaan mana untuk halaman web luar (katakanlah dengan melihat waktunya, ia harus didahulukan) dan yang untuk elemen dalam. Dia dapat menyuntikkan dirinya sebagai MITM hanya dalam elemen-elemen dalam, menggunakan sertifikat yang ditandatangani sendiri, dan mengontrol bagian-bagian halaman. Kecuali jika peringatan diberikan untuk elemen dalam menggunakan SSL tetapi tidak menggunakan sertifikat tepercaya, keamanan halaman luar akan dikompromikan.

Inilah contoh yang realistis. Katakan saya seorang vendor, dan saya memiliki tautan 'bayar dengan PayPal'. Anda klik itu, dan saya tahu. Saya mengarahkan Anda ke PayPal, dan memungkinkan Anda mendapatkan halaman PayPal yang sah dan aman. Jika saya menonton jaringan Anda, saya tahu itu akan menjadi permintaan pertama Anda dari PayPal, dan segera setelah itu Anda akan mengirimkan kata sandi Anda. Jadi saya MITM yang submitberisi alamat email dan kata sandi Anda, menggantikan sertifikat yang ditandatangani sendiri dengan saya untuk PayPal.

Anda melihat bagaimana keamanan halaman luar dikompromikan dengan tidak memperingatkan jika sertifikat halaman dalam ditandatangani sendiri? Jadi itu harus memperingatkan pada sertifikat yang ditandatangani sendiri yang berasal dari tautan.

Dan, tentu saja, jika Anda memasukkan httpssecara manual, itu harus memperingatkan Anda. Karena Anda mengharapkannya aman.

David Schwartz
sumber
-1

Ketika man in the middle attack dieksekusi di https: // situs web , peringatan itu hanya indikasi sesuatu yang salah bagi pengguna biasa. Karena itu, ini adalah bagian yang sangat penting dari keamanan HTTPS.

Pertanyaan yang bagus adalah mengapa enkripsi sebagian yang tidak aman tidak memungkinkan contoh melalui HTTP.

Cmazay
sumber