Apakah SSL benar-benar penting untuk sebagian besar situs web?

11

Saya sudah cukup paranoid tentang belajar untuk "melakukan keamanan yang benar" untuk situs yang saya bangun ini (situs non-sepele pertama yang saya buat), dan saya perhatikan sesuatu yang mengganggu saya: SSL.

Saya telah membaca banyak utas keamanan di sini, di StackOverflow, dan di tempat lain yang panjang lebar tentang regenerasi id sesi setelah penggunaan, dan bagaimana kata sandi Anda perlu diasinkan, hash, dan tidak pernah disimpan dalam teks biasa. Saya sudah membaca banyak tentang cara mendeteksi kapan sesi dibajak, dengan melacak alamat IP, agen pengguna, dan dengan menggunakan cookie pelacakan.

Apa yang saya tidak mengerti adalah apa salah satu dari ini penting ketika situs web login Anda melalui HTTP POST normal dan mengirimkan kata sandi Anda melalui kawat dalam teks biasa?

Saya memahami bahwa semua metode lain yang saya daftarkan diperlukan untuk mengurangi paparan Anda secara keseluruhan, dan mungkin ada beberapa situs yang tidak membutuhkan keamanan sebesar itu, tapi saya rasa yang saya tanyakan adalah:

  • Kapan boleh repot-repot dengan SSL?

Situs-situs seperti Gmail, bank Anda, dan LinkedIn, saya dapat melihat ada alasan untuk menggunakan SSL, tetapi apa yang membuatnya ok bahwa situs-situs seperti Facebook dan reddit tidak mengganggu (sih, PlentyOfFish bahkan menyimpan kata sandi Anda dalam teks biasa dan bahkan mengirim email kepada mereka untuk Anda setiap minggu sebagai pengingat!?!)?

Bagaimana saya harus khawatir dengan memastikan SSL sudah diatur (terutama karena saya akan mulai dengan host bersama, dan saya cukup murah untuk memulai)? Situs saya tidak akan menyimpan informasi pribadi yang khusus, jika itu membantu. Jika situs menjadi sukses, saya serius akan membayar ekstra untuk keamanan tambahan.

AgentConundrum
sumber

Jawaban:

7

Itu penting sama seperti Anda dan pengguna Anda menganggapnya penting. Mengirim kata sandi melalui http sebagai teks biasa tidak membuat mereka rentan terhadap paket sniffing. Sekarang apakah seseorang akan benar-benar repot mengendus paket-paket itu adalah cerita lain. Jika Anda ingin memastikan pengalaman yang paling aman bagi pengguna Anda, gunakan SSL untuk pengiriman login mereka. Jika Anda berpikir pengguna Anda akan lebih bahagia dan lebih cenderung berinteraksi dengan situs web Anda dengan cara yang positif (yaitu membeli barang, melakukan barang, dll) kemudian gunakan SSL untuk pengiriman masuk mereka. Jika Anda memiliki sesuatu yang pantas untuk dicuri (mis. Informasi pengguna) maka gunakan SSL.

Jika Anda tidak memiliki sesuatu yang pantas untuk dicuri, jangan berpikir SSL akan meningkatkan keamanan banyak atau sama sekali, atau pengguna Anda tidak akan melihatnya sebagai fitur yang berguna maka Anda mungkin ingin mempertimbangkan untuk tidak menggunakan SSL.

Untuk berapa biaya memasang sertifikat SSL, kecuali jika Anda menggunakan anggaran yang ketat, tidak pernah buruk untuk mengamankan login situs. Dan jangan biarkan apa yang dilakukan situs lain memengaruhi Anda karena banyak situs yang lebih besar tidak perlu mengikuti praktik-praktik terbaik. Itulah sebabnya tampaknya ada banyak aliran berita tentang satu situs yang dikompromikan.

John Conde
sumber
1
+1 "banyak situs yang lebih besar tidak perlu mengikuti praktik terbaik" - Saya yakin akan ada beberapa berita utama yang menggelikan ketika orang Nigeria 419 mencari cara untuk mendapatkan uang dari profil situs kencan curian :)
danlefree
"kecuali jika Anda memiliki anggaran yang ketat" - tapi saya. Saya benar-benar, sampai-sampai saya sedang mempertimbangkan m + m pada host bersama yang murah daripada membayar jauh lebih sedikit per bulan untuk membayar setahun di muka. Dengan cara ini, saya dapat menarik steker jika situs tidak mulai membayar sendiri relatif cepat. Saya pikir untuk saat ini saya condong ke arah no-ssl karena hanya mendapatkan ip statis yang dibutuhkan saja akan hampir dua kali lipat biaya bulanan saya, belum lagi biaya sertifikasi itu sendiri. Situs ini cukup dekat untuk menjadi forum, dan sebagian besar data bersifat publik, jadi tidak perlu enkripsi di luar login.
AgentConundrum
@danlefree, Itu mudah. Gunakan detail pribadi di situs kencan untuk menjawab pertanyaan pemulihan kata sandi untuk email pengguna dan situs perbankan. Atau hanya mengambil kata sandi, karena orang menggunakan kembali kata sandi mereka, jauh terlalu banyak.
Zoredache
@AgentConundrum Startssl menawarkan sertifikat SSL gratis. Jika Anda memiliki anggaran yang ketat tetapi memiliki IP statis, Anda dapat melakukannya.
Rana Prathap
@ AgentConundrum Anda tidak perlu IP khusus untuk SSL lagi, selama host Anda mendukung SNI (dan jika tidak, cari host baru karena mereka tidak tahu apa yang mereka lakukan). Anda bisa mendapatkan sertifikat secara gratis, jadi itu bukan biaya tambahan ...
Doktor J
3

Mengambil pendekatan yang berlawanan dengan jawaban John, saya pikir Anda harus secara serius mempertimbangkan SSL jika Anda menangani setiap informasi identitas pribadi - untuk menyertakan: nama dengan alamat fisik, alamat e-mail, informasi keuangan, dan komunikasi yang pengguna cukup harapkan untuk menjadi pribadi .

Kecuali jika situs Anda menyediakan sarana bagi pengguna untuk mempublikasikan informasi tentang diri mereka sendiri, Anda harus mempertimbangkan informasi pengenal pribadi yang disediakan oleh pengguna Anda untuk dipegang oleh Anda dan Anda hanya memiliki kepercayaan diri yang ketat kecuali jika kebijakan privasi situs Anda memberi tahu pengguna Anda sebaliknya.

Cegah pihak ketiga yang tidak berwenang melihat informasi pengunjung Anda dan terus beri tahu pengguna tentang bagaimana Anda menggunakan informasi mereka untuk menjaga kepercayaan pengunjung Anda.

Bahkan Facebook melakukan ini, sejauh yang saya tahu.

<form method="POST" action="https://login.facebook.com/login.php?login_attempt=1" id="login_form" onsubmit=";var d=document.documentElement;if (d.onsubmit) { return d.onsubmit(event); }else { return Event.fire(d, &quot;submit&quot;, event); }">

(Facebook.com login sumber HTML)

danlefree
sumber
Aneh. Saya tidak tahu bagaimana saya tidak memperhatikan itu untuk Facebook. Saya melihatnya dari HTTPFox dan entah bagaimana melewatkan 's' pada permintaan awal. Saya akan mengedit untuk menghapusnya. Faktanya masih banyak situs yang melakukan ini (reddit, berita hacker, TDWTF, dll.), Jadi paling buruk saya tidak akan lebih baik dari mereka. Anggaran adalah masalah besar saya, jadi untuk menghabiskan $ 5 / mo tambahan untuk IP statis (pada host $ 8 / mo ...) serta membeli sertifikat yang layak .. Saya hampir akan mempertimbangkan untuk tidak membangunnya situs
AgentConundrum
@ AgentConundrum - Sebenarnya, tidak apa-apa untuk melewatkan kata sandi yang dijalankan melalui algoritma hashing satu arah melalui HTTP jika kata sandi itu diasinkan, jadi saya tidak akan terlalu terkejut melihat implementasi hash MD5 di situs yang tidak memanfaatkan SSL: pajhome.org.uk/crypt/md5
danlefree
dan bagaimana membangun hash di sisi klien dapat membantu? Dalam hal ini, pada dasarnya hash adalah kata sandi . Saya harus dapat menangkap hash dan memutar ulang semudah saya dapat mengambil kata sandi.
Zoredache
1
@Zoredache Itulah sebabnya hash harus diasinkan . Begini cara kerjanya: Saya mengirimi Anda halaman login dengan token yang sudah diisi yang mencakup microtime()panggilan dari server. Hash yang Anda kirim adalah kombinasi kata sandi Anda + microtime()dan, setelah saya menerima hash Anda, saya membatalkan pasangan microtime()+ tantangan / respons kata sandi (tidak dapat digunakan lagi).
danlefree
3

Pada Agustus 2014 Google telah secara resmi mengindikasikan bahwa HTTPS akan digunakan sebagai sinyal peringkat.

Ini berarti bahwa meskipun situs web Anda adalah situs web yang sepenuhnya statis, jika Anda peduli tentang SEO, Anda setidaknya harus mempertimbangkan untuk menyiapkan sertifikat SSL.

Tentu saja HTTPS hanyalah satu sinyal peringkat dari ratusan, jadi mungkin ada hal-hal yang lebih penting yang dapat Anda lakukan untuk SEO.

kqw
sumber
Google juga mengumumkan bahwa karena pengaturan sertifikat SSL membutuhkan sumber daya, Anda hanya perlu melakukannya jika situs web Anda menuntutnya. Singkatnya, mereka menyebutkan bahwa peringkat Anda tidak akan terpengaruh hanya karena Anda tidak mengatur sertifikat SSL di blog pribadi Anda.
Rana Prathap
1

Berikut adalah sudut yang mungkin tidak Anda pertimbangkan: tidak menggunakan SSL / TLS dapat membuat pengguna Anda terpantau secara pasif bahkan jika situs Anda tidak memiliki login.

Seorang aktor ancaman mungkin hanya duduk di antara pengguna Anda dan seluruh Internet, menonton semua URL permintaan pengguna Anda dan membangun pola hal-hal yang dilihat pengguna Anda. Masing-masing bit informasi mungkin memang tidak signifikan dalam isolasi, tetapi menggabungkan banyak bit informasi dapat membuat gambaran yang jauh lebih besar.

Karena alasan inilah saya menawarkan HTTPS di situs saya sendiri, yang hanya menyediakan konten statis.

zigg
sumber