ทำไมการถ่ายโอนอีเมลระหว่างเซิร์ฟเวอร์เมลมักไม่เข้ารหัส?


19

ผู้ใช้สามารถเลือกได้หากพวกเขาต้องการเข้าถึงผู้ให้บริการอีเมล (เช่น Gmail) โดยใช้ช่องทางที่ปลอดภัย (เช่นการใช้ HTTPS)

อย่างไรก็ตามเพื่อความรู้ที่ดีที่สุดของฉันเมื่อพูดถึงการสื่อสารระหว่างเซิร์ฟเวอร์กับอีเมลเซิร์ฟเวอร์ส่วนใหญ่ยังคงถ่ายโอนเป็นข้อความธรรมดาและไม่เข้ารหัสทำให้ทุกคนในเครือข่ายสามารถอ่านเนื้อหาของพวกเขาได้

มีเทคโนโลยีใดบ้างที่ให้ผู้ใช้รับประกันว่าอีเมลของเขาจะถูกส่งอย่างปลอดภัยตั้งแต่ต้นจนจบ? ทำไมไม่ให้ผู้ใช้ทราบเมื่อไม่สนับสนุนการเข้ารหัสและให้เขาเลือกว่าเขาต้องการให้ส่งอีเมลของเขาหรือไม่

คำตอบ:


19

อย่างไรก็ตามเพื่อความรู้ที่ดีที่สุดของฉันเมื่อพูดถึงการสื่อสารระหว่างเซิร์ฟเวอร์กับอีเมลเซิร์ฟเวอร์ส่วนใหญ่ยังคงถ่ายโอนเป็นข้อความธรรมดาและไม่เข้ารหัสทำให้ทุกคนในเครือข่ายสามารถอ่านเนื้อหาของพวกเขาได้

แก้ไข. SMTP เช่น HTTP เป็นข้อความธรรมดาโดยค่าเริ่มต้น

ทุกวันนี้เซิร์ฟเวอร์อีเมลหลายแห่งรองรับTLS (ก่อนหน้านี้รู้จักกันในชื่อ SSL) สำหรับ SMTP (ซึ่งรวมถึง Gmail.) แต่ก็มีปัญหาเดียวกันกับ HTTP [S]: ใบรับรองที่ออกโดยที่รู้จักกันCAsเงินค่าใช้จ่ายและคนที่ลงนามด้วยตนเองมีค่า1สำหรับการป้องกันการโจมตี MITM หากเซิร์ฟเวอร์อีเมลของคุณทำการตรวจสอบความถูกต้องอย่างเข้มงวดของใบรับรองของผู้รับ (เช่นเว็บเบราว์เซอร์ทำ) ก็อาจล้มเหลวในการส่งข้อความไปยังเซิร์ฟเวอร์ที่ใช้ใบรับรองที่ลงชื่อด้วยตนเองหรือ CA ภายในองค์กร ถ้ามันไม่ได้แล้วมันไม่สามารถตรวจสอบว่ามีการพูดคุยกับเซิร์ฟเวอร์ที่ถูกต้องและไม่ได้นักต้มตุ๋น

นอกจากนี้ TLS เป็นส่วนเสริมล่าสุดของ SMTP ดังนั้นแม้ว่าเมล์เซิร์ฟเวอร์ของผู้รับจะรองรับ TLS ผู้ส่งอาจไม่ได้หรืออาจถูกปิดใช้งานตามค่าเริ่มต้น

1 (ยกเว้นว่าเซิร์ฟเวอร์ที่ส่งสนับสนุน DANE (TLSA) และผู้ดูแลระบบของเซิร์ฟเวอร์ที่ได้รับจะใส่ใจในการเผยแพร่ระเบียน TLSA ใน DNS ซึ่งทำได้ยากและค่อนข้างน่าเบื่อ)

มีเทคโนโลยีใดบ้างที่ให้ผู้ใช้รับประกันว่าอีเมลของเขาจะถูกส่งอย่างปลอดภัยตั้งแต่ต้นจนจบ?

มาตรฐานความปลอดภัยอีเมลที่พบมากที่สุดสองมาตรฐาน:

  • OpenPGPอ้างอิงจากเว็บที่ไว้ใจได้และใช้งานได้ฟรี การดำเนินการเปิดแหล่งที่มาเป็นGnuPG ( สำหรับ Windows , สำหรับธันเดอร์เบิร์ด ) และ PGP เดิมมีการพัฒนาในเชิงพาณิชย์PGP สก์ท็อป

    สำหรับไคลเอนต์อีเมลที่ใช้เว็บFireGPGเป็นไปได้ - ด่ามัน

  • S / MIMEอิงตามโครงสร้างพื้นฐาน X.509 ดำเนินการโดยไคลเอนต์เดสก์ท็อปส่วนใหญ่ (รวมถึง Outlook, Thunderbird, Mail.app) อย่างไรก็ตามค่อนข้างไม่เป็นที่นิยมเนื่องจากโครงสร้างตามอำนาจหน้าที่เดียวกันกับ TLS / SSL: เงินค่าใบรับรองที่ลงนามแล้วและไม่สามารถตรวจสอบความถูกต้องที่เชื่อถือได้ด้วยตนเอง

ในทั้งสองกรณีการเข้ารหัสต้องการให้ผู้รับต้องใช้ระบบอยู่แล้วและได้สร้าง / รับกุญแจคู่ (สำหรับการลงนามที่ผู้ส่ง keypair จะใช้. การปฏิบัติตามปกติคือการทั้งป้ายและข้อความที่เข้ารหัส.)

ทำไมไม่ให้ผู้ใช้ทราบเมื่อไม่สนับสนุนการเข้ารหัสและให้เขาเลือกว่าเขาต้องการให้ส่งอีเมลของเขาหรือไม่

โดยทั่วไปแล้วข้อความที่ส่งจะถูกจัดคิวและผู้ใช้หรือ MTA ไม่สามารถรู้ได้ว่า hop ต่อไปรองรับ TLS หรือไม่ - จนกว่าจะมีการส่งข้อความณ จุดนั้นไม่มีวิธีที่เชื่อถือได้ในการขอการยืนยันจากผู้ใช้ (อาจเป็น AFK ออฟไลน์นอนหลับหรือสคริปต์ / โปรแกรมหากฉันส่งข้อความฉันต้องการให้ส่งโดยเร็วที่สุด)

นอกจากนี้ด้วย SMTP คุณจะไม่มีทางรู้เลยว่าการกระโดดครั้งต่อไปเป็นครั้งสุดท้ายหรือไม่หรือจะส่งต่อจดหมายไปที่อื่น ไม่ใช่เรื่องผิดปกติที่ MX backup จะอยู่ในเครือข่ายที่ต่างออกไปโดยสิ้นเชิง

ดังนั้น. ความปลอดภัยแบบ end-to-end เป็นไปได้เฉพาะเมื่อทั้งสองฝ่ายกำลังใช้ OpenPGP หรือ S / MIME


2
หมายเหตุ: ทั้งคำถามและคำตอบของฉันเกี่ยวกับการแลกเปลี่ยนเมลระหว่างเซิร์ฟเวอร์ SMTP สองเครื่องผ่านพอร์ต 25 ไม่สำคัญว่าจะมี TLS รองรับบนพอร์ต 587 หรือ 465 หรือไม่ สิ่งเหล่านี้ล้วนเป็นการส่งข้อความโดยผู้ใช้ [ระยะไกล]
user1686

2
ฉันเข้าใจว่าบ่อยครั้งกว่าที่การเชื่อมต่อ SMTP จะไม่ถูกเข้ารหัส อย่างไรก็ตามคุณสามารถรับใบรับรองอีเมลฟรี (ซึ่งตรวจสอบความถูกต้อง) ที่นี่: instantssl.com/ssl-certificate-products/…
Andee

อัปเดต: ทุกวันนี้ UI ของ Gmail เตือนคุณเมื่อโดเมนของผู้รับไม่รองรับการเข้ารหัสและคำแนะนำแนะนำให้ระวังการส่งข้อมูลที่เป็นความลับ
Blaisorblade

4

การรับส่งอีเมลจริงมักจะถูกเข้ารหัส (TLS) แต่มีปัญหาอื่น ๆ อีกหลายประการ:

  • เว็บเมลไคลเอ็นต์บางรายที่แสดงข้อความ HTML อาจไม่ปลอดภัยแม้ว่าพวกเขาจะใช้ HTTPS แต่ก็ไม่มีการแยกระหว่างโค้ดและข้อมูลในรูปแบบ HTML อย่างยาก (องค์ประกอบภาพและจาวาสคริปต์ -> การโจมตีแบบฉีด)

    • เว็บเมลยังเก็บอีเมลไว้บนเซิร์ฟเวอร์แทนที่จะดาวน์โหลดและเก็บไว้ในคอมพิวเตอร์ในระบบ
  • คุณไม่มีทางรู้ว่า TLS / SSL ถูกใช้ระหว่างทุกขั้นตอนหรือไม่เซิร์ฟเวอร์ขนาดเล็กมากไม่มีใบรับรองที่เหมาะสม

    • อย่างน้อยผู้ส่งควรระบุได้ว่าจะยอมรับหรือล้มเหลวในการส่งอีเมลโดยใช้ช่องทางที่ไม่ปลอดภัย
  • อีเมลวางบนเซิร์ฟเวอร์ที่ไม่ได้เข้ารหัสหรือเข้ารหัสโดยเซิร์ฟเวอร์

    • คุณจะต้องไว้วางใจเซิร์ฟเวอร์ EVERY ระหว่างคุณกับผู้รับ
  • อีเมลอาจถูกถ่ายโอนโดยใช้เส้นทางใด ๆ คุณไม่สามารถระบุเซิร์ฟเวอร์ที่คุณเชื่อถือได้ (ช่วงที่อยู่ IP, ASes, ประเทศ, โดเมน .. )

  • เซิร์ฟเวอร์อีเมลขนาดใหญ่ไม่ใช้ใบรับรองที่แตกต่างกันหลายใบและอย่าเปลี่ยนบ่อยครั้งเพียงพอ (?)

    • มันอาจจะคุ้มค่าหรือเป็นไปได้ที่จะดุร้ายพวกเขา (เช่น USA / UK ฯลฯ ได้ลอง?)
  • โดยติดตามการรับส่งข้อมูลพวกเขารู้เมื่อมีการส่งอีเมลและบางสิ่งเกี่ยวกับผู้รับ (เซิร์ฟเวอร์ใดที่สื่อสารระหว่างกัน)

    • darknets ซ่อนความสัมพันธ์เหล่านี้
  • การใช้ openssl เป็น / เป็นระเบียบ

    • อาจมีข้อบกพร่อง
  • คุณต้องเชื่อถือหน่วยงานออกใบรับรองที่ลงนามในใบรับรอง


2

พวกเขาเป็น. หรือบ่อยครั้งมากนัก

ทั้งผ่าน SSL หรือTLS

--- 220 mail.ovalpowered.com ESMTP Exim 4.72 Sun, 20 Mar 2011 17:09:56 +0000
+++ EHLO test
--- 250-mail.ovalpowered.com Hello vpnhub.sqsol.co.uk [213.229.101.173]
--- 250-SIZE 52428800
--- -PIPELINING
--- -AUTH PLAIN LOGIN
--- -STARTTLS
--- HELP
+++ STARTTLS
--- 220 TLS go ahead

หรือถ้าคุณหวาดระแวงจริงๆมี PGP หรือ GPG

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.