Die Transportverschlüsselung (TLS) sichert die Verbindung zwischen einem E-Mail Client und dem Mailserver des Providers gegen unerwünschte Lauscher. Seit der Einführung des Internet wird diese diese Verschlüsselung ständig weiterentwickelt und an neue, moderne Erkenntnisse der Kryptografie angepasst. Gleichzeit werden aus Kompatibilitäsgründen alte, unsichere Versionen mitgeschleppt statt abgeschaltet.
  1. In der aktuellen zivilen Kryptoanalyse gilt nur TLS 1.3 als uneingeschränkt sicher.

    Um den Handshake zur Aushandlung einer TLS-Verschlüsselung einige Millisekunden zu beschleunigen, wurde ein Zero-Round-Trip Handshake in TLS 1.3 eingeführt. Viele Sicherheitsexperten sehen dieses Feature kritisch und als zukünftigen Angriffspunkt. In Thunderbird wurde bereits eine Option implementiert, um es abzuschalten.

  2. Bei TLS 1.2 gibt es Einschränkungen bezüglich Sicherheit, da nicht alle in diesem Standard definierten Cipher Suiten als uneingeschränkt sicher eingestuft werden. Gemäß IETF RFC 7525 und BSI TR-03116-4 nur folgende Ciphersuiten als sicher: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
    TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
    TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
    TLS_DHE_RSA_WITH_AES_128_GCM_SHA256

    Die neueren Ciphersuiten mit CHACHA20-POLY1305 von D.J. Bernstein können ebenfalls als sicher eingestuft werden. Bei DHE-Ciphersuiten ist zu beachten, dass diese Cipher nur sicher sind, wenn hinreichend große Diffie-Hellman Parameter verwendet werden (was nicht immer gegeben ist). Es tritt immer wieder der Fehler auf, dass nur 1024 Bit DH-Parameter verwendet werden, was die NSA seit 2010 on-the-fly knacken kann. Deshalb ist die Deaktivierung der DHE-Cipher empfehlenswert.

  3. TLS 1.0 und TLS 1.1 gelten als unsicher und sollten nicht mehr verwendet werden. Leider sind diese TLS Versionen nicht bei allen E-Mail Providern abgeschaltet, aber Thunderbird 78.x verwendet diese veralteten Protokolle nicht mehr.

TLS 1.3-only Konfiguration für Thunderbird

Am einfachsten aktiviert man eine sichere TLS-Verschlüsselung, wenn man ausschließlich TLS 1.3 verwendet. Dafür aktiviert man in den erweiterten Einstellungen folgende Option: security.tls.version.min = 4 Außerdem kann man den Zero-Round-Trip Handshake von TLS 1.3 deaktivieren: security.tls.enable_0rtt_data = false

Diese Einstellung funktioniert mit E-Mail Providern wie mailbox.org oder Posteo.de, die Wert auf hohe Sicherheit legen. Bei vielen anderen E-Mail Providern gibt es damit Probleme.

Der Server download.mozilla.com hat eine grottenschlechte TLS Konfiguration und unterstützt kein TLS 1.3. Wenn Thunderbird darauf angwiesen ist, Updates von diesem Server zu beziehen (z. B. die MacOS Version oder Portable Thunderbird), dann wird es beim Update Prozess Probleme geben. Man könnte die jeweils aktuelle Version im Browser herunter laden und installieren oder man verwendet die TLS 1.2-secured Konfiguration.

Außerdem kann es Probleme beim Abrufen von einigen RSS Feeds geben, wenn der Webserver, der den Feed bereit stellt, kein TLS 1.3 unterstützt.

TLS 1.2-secured Konfiguration für Thunderbird

Standardmäßig erlaubt Thunderbird 78.x die Nutzung von TLS 1.2 und TLS 1.3. Wenn man noch TLS 1.2 nutzen muss, weil der E-Mail Provider TLS 1.3 nicht flächendeckend auf allen Servern einsetzt, dann sollte man die schwachen Cipher Suiten des TLS 1.2 Standard deaktivieren. Folgende Einstellungen sind in diesem Fall empfehlenswert: security.tls.version.min = 3 (default ab Thunderbird 78.x)

security.ssl3.dhe_rsa_aes_128_sha = false
security.ssl3.dhe_rsa_aes_256_sha = false
security.ssl3.ecdhe_ecdsa_aes_128_sha = false
security.ssl3.ecdhe_ecdsa_aes_256_sha = false
security.ssl3.ecdhe_rsa_aes_128_sha = false
security.ssl3.ecdhe_rsa_aes_256_sha = false
security.ssl3.rsa_aes_128_sha = false
security.ssl3.rsa_aes_256_sha = false
security.ssl3.rsa_des_ede3_sha = false

Weiterer Einstellungen für die TLS Verschlüsselung

  1. Insecure Renegotiation verbieten wird seit 2009 als Sicherheits­problem eingestuft. Ein Angreifer kann die Login Credentials (Username und Passwort) abschnorcheln ohne die Verschlüsselung knacken zu müssen. Tools zum Ausnutzen der Insecure Renegotiation für einen Angriff gibt es auch als OpenSource (z.B. dsniff). Deshalb:
    security.ssl.require_safe_negotiation  = true
    security.ssl.treat_unsafe_negotiation_as_broken  = true
  2. Strenges Certifikate Pinning erzwingen (z.B. für Add-on Updates):
    security.cert_pinning.enforcement_level= 2
  3. Für RSS Feeds und die Webseiten Ansicht in Feeds kann man den HTTPS-only Mode aktivieren und das Laden von unverschlüseltem Content verbietet:
    security.mixed_content.upgrade_display_content  = true
    dom.security.https_only_mode= true
    network.ftp.enabled= flase

Verbindungsprobleme

Wenn man eine seltsame Fehlermeldung beim Abrufen/Senden von E-Mails erhält, dann gibt es Probleme bei einer sicheren Verbindung und man wechselt am besten den Provider.