Apakah menegakkan enkripsi untuk SMTP adalah ide yang bagus (belum)?

36

Saya menjalankan server email yang saat ini diatur untuk menggunakan TLS jika memungkinkan, saat mengirim dan menerima email.

Ketika Anda membaca dalam dokumentasi tentang ini, ada juga opsi untuk menegakkan TLS dan tidak menerima pengiriman email teks biasa. Ini juga memperingatkan Anda bahwa beberapa server email mungkin belum mendukung enkripsi dan penegakan enkripsi dapat memblokir server-server ini.

Tetapi apakah ini masih merupakan masalah yang harus dipikirkan atau aman untuk mengatakan bahwa menegakkan enkripsi tidak akan menjadi masalah lagi?

Apakah mungkin ada penyedia besar yang sudah melakukan ini atau apa yang Anda anggap praktik terbaik hari ini?

comfreak
sumber

Jawaban:

34

Masalah praktisnya adalah bahwa tidak setiap server yang kompatibel dengan SMTP (RFC sudah cukup tua) dapat berbicara TLS ke server Anda, jadi Anda mungkin kehilangan menerima beberapa pesan email.

Masalah filosofis dengan hal ini adalah bahwa tidak mungkin untuk mengetahui bagaimana email tersebut disampaikan setelah (atau sebelum) email itu sampai di server Anda.

Ini berarti bahwa email tersebut mungkin telah dikirim dalam bentuk teks biasa melalui relai.

Siapa pun yang serius melindungi konten email mereka harus benar-benar mengenkripsi tubuh. Dengan enkripsi dalam perjalanan yang selalu masuk akal sudah ditransmisikan dalam teks biasa.

Jadi, untuk menjawab pertanyaan Anda yang menegakkan enkripsi pada lapisan SMTP mungkin tidak ada gunanya, tingkatkan peluang Anda untuk kehilangan email dan tidak ada imbalan bermanfaat yang dijamin.

Sunting: Ini merujuk pada penegakan SMTP untuk tujuan menyampaikan, bukan mengirimkan email. Dalam pengiriman email, enkripsi harus diberlakukan karena percakapan SMTP (bukan email yang sebenarnya) mungkin berisi kredensial otentikasi.

Matthew Ife
sumber
7
Saya kira ini bukan jawaban terbaik. Itu sampai pada kesimpulan bottom-line yang tepat, tetapi untuk alasan yang salah. Ini "membiarkan yang sempurna menjadi musuh orang baik" jenis penalaran. Saya pikir jawaban yang lebih baik adalah jika Anda memerlukan enkripsi, Anda akan mencegah beberapa email yang sah untuk tidak masuk (karena beberapa server SMTP tidak dapat mengenkripsi). Jika bukan karena faktor itu, maka menegakkan enkripsi akan bermanfaat, meskipun untuk semua alasan Anda membuat daftar itu tidak sempurna - itu akan lebih baik daripada tidak sama sekali, bahkan jika itu tidak sempurna.
DW
Saya cenderung tidak setuju pada kesempurnaan dengan hanya menambahkan sub-infeksi; masih saya kirimkan edit ke jawaban untuk menekankan kemungkinan-teknis-ketidakcocokan server yang sesuai dengan RFC tetapi tidak mendukung TLS.
Alex Mazzariol
Terima kasih atas jawaban anda! Pada awalnya saya tidak memikirkan apa yang terjadi setelah server saya mengirim surat ke server berikutnya atau, seperti yang Anda katakan, di mana pesan "sudah ada" sebelum sampai ke saya. Tentu saja tidak ada gunanya menegakkan enkripsi, jika pihak penerima mengirimkannya dalam bentuk teks biasa (mungkin ke subserver dari perusahaan yang sama tetapi masih melalui internet).
comfreak
Saya memilih jawaban ini sebagai jawaban yang diterima karena menjelaskan yang terbaik bahwa menerapkan enkripsi pada server saya tidak akan menjamin transfer pesan yang aman / terenkripsi dari pengirim ke penerima tetapi hanya dari server saya ke yang berikutnya.
comfreak
Saya pikir jawaban ini baik, tetapi gagal untuk menyebutkan bahwa enkripsi masih diinginkan mengingat bahwa hanya dalam sejumlah kasus seseorang akan berusaha keras untuk mencegat pesan teks pengirim pengirim untuk menipu Anda. Jika Anda bersembunyi dari CIA / NSA yakin itu mungkin tidak membantu Anda. Tapi apa yang lebih baik, menegakkan enkripsi sehingga tidak ada yang tertarik secara eksplisit untuk membacanya / mencegat pesan pengirim dan menyembunyikannya sampai pihak ketiga memutuskan untuk mencoba mengintip Anda atau menyimpan semua pesan Anda di server NSA sehingga suatu hari, mereka tidak hanya dapat memulai ...
momomo
20

Tidak

RFC 821 berusia 33 tahun. Anda akan menemukan email yang diteruskan oleh program yang tidak mendukung STARTTLS. Terkadang mereka adalah pengirim email rintisan (mis. Skrip internal), kadang-kadang sistem lengkap penuh yang sudah tua, TLS dinonaktifkan / tidak dikompilasi, sistem tanpa cukup entropi ...

Saya saksikan belum lama ini email keluar gagal karena ujung penerima mengkonfigurasikannya untuk hanya mengizinkan SMTP melalui TLS. Itu masalah di pengirim (seharusnya tidak menggunakan konfigurasi itu), tetapi menunjukkan bahwa itu memang terjadi.

Saya hanya akan membatasi pesan masuk dari alamat IP yang dikonfigurasi secara manual. Jika prosesor kartu kredit Anda gagal memulai STARTTLS, Anda mungkin memilih untuk membatalkan koneksi (dan halaman admin lokal sehingga ia dapat memperingatkan mereka!) Lebih cepat daripada menerima bahwa (berpotensi sensitif) data tidak terenkripsi. Untuk pesan keluar, jika Anda terhubung ke host menggunakan STARTTLS sebelumnya, Anda mungkin ingin tidak melakukannya lagi dengan tidak aman, memperlakukannya sebagai kompromi yang potensial. Anda juga dapat memiliki daftar host STARTTLS yang diketahui selalu digunakan, seperti gmail atau yahoo.

Ada https://www.eff.org/starttls-everywhere proyek menyediakan daftar server smtp yang Anda dapat (harus?) Percaya diri menegakkan penggunaan starttls.

Malaikat
sumber
3
Terima kasih atas jawabannya dan untuk memposting tautan itu! Ini tampaknya merupakan pendekatan yang baik untuk menyelesaikan masalah serangan orang yang sedang merendahkan koneksi ke percakapan yang tidak terenkripsi.
comfreak
11

Sama sekali tidak ada gunanya, dan mungkin berbahaya, untuk menolak email dari rekan yang tidak mampu enkripsi.

Selama server Anda diatur untuk melakukan enkripsi oportunistik dengan rekan mana pun yang menawarkannya, Anda mendapatkan yang terbaik dari kedua dunia: enkripsi saat itu tersedia, dan email melalui plaintext ketika tidak.

Selama ada server yang tidak mendukung enkripsi, mengamanatkan itu berarti mereka tidak dapat berbicara dengan Anda; itu buruk. Setelah semua orang mendukungnya, tidak ada perbedaan antara enkripsi oportunistik dan wajib.

Dan seperti yang orang lain tunjukkan, enkripsi on-the-wire dan end-to-end enkripsi adalah dua hal yang sama sekali berbeda, menangani model ancaman yang berbeda. Jangan bingung keduanya.

MadHatter mendukung Monica
sumber
Saya berpendapat bahwa yang terbaik dari kedua dunia juga akan memungkinkan Anda untuk melihat perbedaannya, mirip dengan "kunci" dari halaman SSL di web, sehingga Anda tahu email mana yang * akan diblokir jika Anda memaksa TLS
user2813274
@ user2813274 Saya setuju, dan itu benar. Periksa tajuk Anda; mereka akan menunjukkan kepada Anda apakah langkah tertentu dari rantai transmisi dilakukan dengan, atau tanpa, enkripsi.
MadHatter mendukung Monica
@ MadHatter kecuali header itu benar-benar dipalsukan oleh hop sebelum milikmu.
cambuk
8
Ada adalah perbedaan antara enkripsi oportunistik dan wajib. Sering mungkin bagi MITM aktif untuk mengganggu enkripsi oportunistik, menyebabkan titik akhir kembali ke tidak ada enkripsi, yang dapat dipantau. Dengan enkripsi wajib, koneksi akan terputus, menyebabkan penolakan layanan tetapi bukan pelanggaran privasi.
cjm
4
@ cjm maka poin saya tentang model ancaman. Jika Anda benar-benar berusaha mempertahankan serangan MITM, hanya enkripsi ujung-ke-ujung yang dapat membantu. Mengandalkan enkripsi SMTP saja tidak ada gunanya; MITM canggih hanya akan menyamar sebagai server Anda, kemudian menyampaikan email kepada Anda setelah membacanya. Tentu, server Anda mungkin memiliki sertifikat yang ditandatangani dengan benar (yang sangat jarang terjadi), tetapi Anda tidak dapat mengontrol apakah sistem pengiriman kepada Anda mensyaratkan itu , sehingga serangan MITM seperti ini akan berhasil meskipun ada persyaratan yang Anda tempatkan pada koneksi terenkripsi .
MadHatter mendukung Monica
10

Ini masalah kebijakan.

Umumnya ketika TLS diberlakukan untuk masuk & keluar, itu dilakukan untuk set domain terbatas yang disepakati oleh pihak untuk memenuhi kebutuhan (misalnya, mitra bisnis mungkin memiliki perjanjian untuk mengenkripsi semua email antara perusahaan mereka).

Jika tidak ada perjanjian seperti itu, jangan aktifkan mode penegakan.

MikeyB
sumber
2

Tidak, itu ide yang sangat buruk.

Pada kenyataannya, ternyata, sebagian besar server / klien STARTTLS tidak mengimplementasikan segala jenis algoritma coba lagi tanpa StartTLS seandainya koneksi TLS gagal bernegosiasi.

Dengan demikian, bahkan mengiklankan STARTTLS sebagai opsi sudah mengurangi peluang Anda untuk mendapatkan (dan mengirim) email!

Cukup telusuri, dan Anda akan menemukan banyak orang tidak dapat mengirim email APA SAJA ke domain Microsoft Outlook yang ditangani oleh cluster * .protection.outlook.com:

Pesan sendmail ditolak dari Microsoft saat menggunakan TLS

alasan: Jabat tangan 403 4.7.0 TLS gagal

Untuk merangkum masalah yang disajikan dalam dua pos di atas:

  • dapat mengirim surat apa pun ke host apa pun selain yang ditangani oleh Outlook, dengan atau tanpa STARTTLS,
  • dapat mengirim email tanpa sertifikat klien dan tanpa STARTTLS ke Outlook,
  • atau dengan sertifikat klien panjang nol,
  • tetapi tidak dengan sertifikat yang tidak disukai Microsoft, dan setelah gagal, klien (well, server bertindak dalam mode klien) tidak berusaha mengirim ulang pesan tanpa STARTTLS jika server penerima mengiklankan STARTTLS!

Demikian juga, ketika host Anda bertindak sebagai server, situasi serupa dapat terjadi di luar kendali Anda jika Anda memutuskan untuk mengaktifkan STARTTLS - ketika server klien melihat bahwa server Anda dalam mode server menawarkan STARTTLS, mereka mencoba untuk menegosiasikan TLS, tetapi jika negosiasi gagal , mereka hanya menunggu, dan mencoba lagi langkah yang sama, terus gagal sampai pesan harus dipantulkan kembali ke pengirim!

Dan ini cukup sering terjadi dengan berbagai domain di tanah STARTTLS!

Sedihnya, seperti dulu saya adalah pendukung STARTTLS di masa lalu, saya sekarang sangat kehilangan haknya sehingga saya disesatkan oleh iklan bebas risiko dari apa yang saya pikir seharusnya merupakan enkripsi oportunistik.

Anda tidak hanya harus tidak memerlukan STARTTLS, tetapi bahkan mungkin lebih bijaksana untuk menonaktifkannya sepenuhnya, jika Anda ingin memastikan interoperabilitas.

cnst
sumber
2

Saya harus setuju dengan ide menggunakan TLS oportunistik. Meskipun, saya punya beberapa untuk menambah ide juga. Beberapa kemungkinan akan terganggu oleh saran tersebut, namun, karena saran saya di sini tidak dibuat enteng dan tanpa pertimbangan, sebelum memberikan penilaian, saya meminta Anda membaca diskusi lengkap dari tautan terlampir.

Menggunakan TLS oportunistik sejauh ini merupakan solusi terbaik. Sudut MITM sebagai argumen menentangnya adalah herring merah. Lagipula, seperti yang disebutkan MH dalam komentar, bahkan SMTP "sah" dengan koneksi TLS dapat menjadi MITM dan pengguna akhir menjadi lebih bijak karena sebagian besar klien email tidak repot-repot untuk memvalidasi sertifikat yang digabungkan dengan sebagian besar MTA di luar sana yang melakukan TLS menggunakan sertifikat yang ditandatangani sendiri (setidaknya jika Anda tidak menggunakan DNSSEC dan TLSA / DANE.) Sebagai akibat dari ini dan mungkin faktor-faktor lain, bahkan dapat diperdebatkan bahwa sampai Anda dan seluruh dunia telah menerapkan DANE / TLSA dan DNSSEC, bahwa ketika menjalankan TLS oportunistik, lebih baik daripada tidak juga memiliki diffie-hellman anonim (sementara juga menggunakan PFS) diaktifkan juga. Karena setidaknya sebagian jika tidak sebagian besar karena fakta bahwa itu masih akan mengenkripsi lalu lintas melindungi terhadap pengamat biasa. Untuk dukungan lebih lanjut dari konfigurasi ini (dengan penjelasan yang jauh lebih rumit daripada saya,) silakan lihat komentar oleh Viktor Dukhovni di posting ini di forum postfix:http://postfix.1071664.n5.nabble.com/Disabling-Anonymous-Diffie-Hellman-td67965.html

Mengenai mengapa seseorang dapat menerima saran Viktor daripada saran orang lain, well, ia menulis kode TLS dan juga kode DNSSEC, TLSA / DANE untuk Postfix MTA selain sebagai orang yang telah menulis draf IETF pada kedua DNSSEC. dan TLSA / DANE. Karena itu, saya akan mengatakan bahwa kata-katanya tentang masalah ini memiliki bobot yang cukup besar, mungkin lebih banyak daripada kebanyakan.

Semoga ini membantu.

Mce128
sumber
0

Dari perspektif pemasaran email, penggunaan TLS adalah praktik yang baik dan aman ketika Anda tahu bahwa itu diterapkan melalui seluruh rantai pengiriman. Namun jika keamanan adalah persyaratan utama Anda, maka mengenkripsi email itu sendiri sebelum mengirimnya adalah opsi yang paling aman (misalnya dengan PGP).

ERM
sumber