Solusi 1:
Ini masalah opini, dan juga berkaitan dengan masalah regulasi (jika Anda menghadapinya).
Meskipun saat ini tidak diperlukan, saya sangat menganjurkan agar HTTPS tetap diaktifkan di antara firewall tingkat aplikasi / penyeimbang muatan / server ujung depan dan server ujung belakang. Itu satu permukaan serangan yang lebih sedikit. Saya telah mengontrak tempat-tempat yang perlu diubah karena informasi yang lebih sensitif mulai diteruskan - lebih baik mulai dari sana.
Apa yang biasanya saya sarankan adalah menggunakan CA internal (jika tersedia) atau tanda tangan sendiri (jika tidak ada CA internal) server back end. Kami telah menetapkan tanggal kedaluwarsa yang bagus dan jauh ke depan untuk menghindari perubahan yang tidak perlu.
Solusi 2:
TL;DR Anda harus mengenkripsi lalu lintas kecuali pada host yang sama.
Anda tidak dapat mempercayai jaringan Anda. Malware di jaringan Anda sendiri dapat mencegat/memodifikasi permintaan http.
Ini bukan serangan teoretis, tetapi contoh kehidupan nyata:
-
Router (mungkin diretas) di dalam jaringan beberapa situs web yang menyuntikkan iklan:https://www.blackhat.com/docs/us-16/materials/us-16-Nakibly-TCP-Injection-Attacks-in-the-Wild- Studi-Skala-Besar-wp.pdf
-
Jaringan India mengendus antara cloudfare dan back-end:https://medium.com/@karthikb351/airtel-is-sniffing-and-censoring-cloudflares-traffic-in-india-and-they-don-t-even-know -it-90935f7f6d98#.hymc3785e
-
"SSL Ditambahkan dan dihapus di sini :-)" yang sekarang terkenal dari NSA
Solusi 3:
Apakah "banyak server lain" perlu dijalankan melalui HTTPS atau, mengingat server tersebut tidak dapat diakses secara eksternal, dapatkah mereka menjalankan HTTP dengan aman?
Ini sangat tergantung pada apa yang ingin Anda capai. Pahami bahwa tujuan penggunaan HTTPS adalah untuk melindungi data yang sedang transit di antara dua titik. Jika Anda khawatir tentang data yang diendus di dalam jaringan Anda, maka mungkin itu harus diurus terlebih dahulu. Jika Anda perlu melindungi data dalam perjalanan di dalam jaringan Anda, apa yang Anda katakan adalah bahwa Anda memiliki kekhawatiran tentang keamanan data yang melintasi sistem Anda di dalam jaringan Anda atau ada beberapa alasan terkait kepatuhan bagi Anda untuk mengenkripsi data dalam perjalanan.
Ini sebenarnya lebih merupakan pertanyaan pendapat, tetapi jawabannya tergantung. Apa yang sedang Anda coba lakukan? Jenis data apa yang Anda enkripsi? Ancaman apa yang Anda coba pertahankan? Apakah Anda memiliki persyaratan hukum (mis. PCI-DSS, HIPAA, dll.) yang menyatakan bahwa Anda perlu mengenkripsi data saat transit? Jika datanya sensitif dan Anda khawatir data tersebut dapat disalahgunakan saat dikirim di dalam jaringan Anda, maka saya sarankan untuk menghubungi manajemen untuk memperbaiki masalah tersebut. Jadi pada akhirnya, apa yang ingin Anda lindungi dan mengapa Anda mencoba melindunginya?
Solusi 4:
Dulu, orang berasumsi bahwa jaringan internal aman seperti rumah. Saya pernah berselisih dengan penyelia yang terkejut karena server internal saya menjalankan firewall bawaannya. "Jika Anda tidak dapat mempercayai jaringan internal Anda, siapa yang dapat Anda percayai?" Saya menunjukkan bahwa kami memiliki laptop siswa di jaringan internal kami, dan tidak ada firewall antara laptop siswa dan server saya. Dia, sebagai orang baru di dunia akademis, tampaknya memiliki dunianya yang compang-camping dengan informasi ini.
Jaringan internal tidak lagi dianggap aman, meskipun Anda tidak memiliki laptop siswa di jaringan Anda. Lihat jawaban Tom untuk beberapa contoh.
Yang mengatakan, ya, itu tergantung pada informasi apa yang dikirim, masalah kepatuhan hukum, dll. Anda mungkin memutuskan bahwa Anda tidak peduli jika seseorang mengendus, katakanlah, data cuaca. Meskipun demikian, mungkin saja meskipun data yang dikirim tidak sensitif sekarang , seseorang mungkin memutuskan untuk menambahkan fitur ke aplikasi Anda nanti yang adalah sensitif, jadi saya akan merekomendasikan paranoia yang lebih besar (termasuk HTTPS).
Solusi 5:
Hari ini dengan instruksi CPU khusus untuk mempercepat enkripsi, dan protokol transport baru yang tidak akan beroperasi sama sekali atau beroperasi dengan kinerja yang menurun melalui tautan yang tidak terenkripsi (HTTP/2, gRPC, dll...), mungkin pertanyaan yang lebih baik adalah:Apakah ada alasan mengapa Anda perlu menurunkan tautan jaringan ke HTTP? Jika tidak ada alasan khusus, maka jawabannya tetap dengan HTTPS.