An die IT der Stadt Braunschweig in Sachen MAILSERVER

Im Gegensatz zum letzten Lokalbeitrag über Lebensmittel bei Aldi Nord, kommt heute ein weniger ekliges Thema dran … Woher weiß man, daß man mit dem Mailserver der Stadt Braunschweig spricht?

An die IT der Stadt Braunschweig in Sachen MAILSERVER

Liebe IT-Verantworlichen der Stadt Braunschweig,

wie wir Euch 2018 schon einmal mitgeteilt haben, sind Eure SSL-Zertifikate im Mailserver nichts wert. Glauben Sie nicht? Bitte schön:

$ openssl s_client --connect mailin02.braunschweig.de:25 -starttls smtp -verify_hostname mailin02.braunschweig.de
CONNECTED(00000003)
depth=0 C = DE, ST = Niedersachsen, L = Braunschweig, O = Stadt Braunschweig, OU = IuK, CN = mailin02.braunschweig.de
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 C = DE, ST = Niedersachsen, L = Braunschweig, O = Stadt Braunschweig, OU = IuK, CN = mailin02.braunschweig.de
verify error:num=21:unable to verify the first certificate
verify return:1
depth=0 C = DE, ST = Niedersachsen, L = Braunschweig, O = Stadt Braunschweig, OU = IuK, CN = mailin02.braunschweig.de
verify return:1
---
Certificate chain
0 s:C = DE, ST = Niedersachsen, L = Braunschweig, O = Stadt Braunschweig, OU = IuK, CN = mailin02.braunschweig.de
i:C = DE, ST = Niedersachsen, L = Braunschweig, O = Stadt Braunschweig, OU = IuK, CN = BSSUBCA02
---

Was bedeutet die Ausgabe?

Das jemand ein Zertifikat auf „mailin02.braunschweig.de“ ausgestellt hat und anstatt dies von einer anerkannten Autorität (CA) beglaubigen zu lassen, es mit einem anderen selbst gebauten Zertifikat und dessen Schlüssel unterschrieben worden. Das macht natürlich aus dem ersten Zertifikat mailin02.braunschweig.de auch kein anerkanntes Zertifikat, sondern nur ein weiteres Zert, dem man nicht vertrauen kann.

Das Emails bei der Stadt Braunschweig trotzdem eingehen, liegt einfach daran, daß derartige Fehler sooft vorkommen, daß wer ernsthaft die Autorität eines empfangenden Mailserver prüft, kaum noch Emails rausbekommt. Besser macht die Erkenntnis den Fall natürlich auch nicht, es bleibt ein Setupfehler.

Anders läge der Fall, wenn das Zert mit dem Kürzel BSSUBCA02 selbst von einer bekannten CA verifiziert und beglaubigt wäre. Das kann man aber nicht prüfen, weil das dafür nötige Zert nicht mitgeliefert wird. Pech.

Es bliebt also dabei, diesem Server kann man nicht glauben, daß er wirklich die Stadt Braunschweig repräsentiert.

Weiß hier A nicht, was B tut?

Wer sich mal die Webseite unter Braunschweig.de näher ansieht, findet dort ein Zert für „*.braunschweig.de“, ein sogenanntes Wildcard-Zertifikat. Dies ist für alle beliebigen Domainnamen gültig, auch für „mailin02.braunschweig.de„. Wieso man das dann nicht für den Mailserver nimmt, kann ich nicht beurteilen. Das Wildcard Zert ist nicht eingeschränkt auf das Web ( was gehen würde ), es kann also überall eingesetzt werden.

Basierend auf der Erfahrung mit der Stadt Wolfenbüttel ( gleich hier um die Ecke ), würde ich mich jetzt aus dem Fenster lehnen und behaupten, daß das IT-Managementsystem auf Windows basiert, welches die Stadt einsetzen wird um deren Firewall und Mailserver zu verwalten, den Admins nur die Innenseite des Netzes anzeigt, aber nicht, was außen wirklich los ist. Ich vermute, intern wird schon seit einiger Zeit ein korrektes Zert angezeigt und das uns gezeigte Mailserverzert ist bloß ein Fragment eines Testsetups von früher.

Das „Root CA 2“ Zert der Stadt Braunschweig, ist scheinbar von 2016 und das „mailin02.braunschweig.de“ von 2017, aber mit einer Gültigkeit von 10 Jahren. Dies ist ein typisches Testsetup, denn normale Zertifikate werden nach 1-2 Jahren getauscht.

Linux Am Dienstag – Programm für den 10.8.2021

Da das Wetter Dienstagabend in ganz Deutschland nicht besonders wird, sollten wieder reichlich Leute in der Linux am Dienstag Konferenz sein. Das wird bestimmt spannend und unterhaltsam, wenn wir uns dem LKA Niedersachsen widmen 😉

Linux am Dienstag: Programm für den 10.8.2021

Die Themen am Abend ab 19 Uhr sind u.a.

IT-Peinlichkeiten bei den Sicherheitsbehörden – Heute: Das LKA Niedersachsen
Bash – Rechnen in der Kommandozeile
Datenschutz – 746 Millionen € Strafe
Encfs – Verzeichnisverschlüsselung mit FUSE
Sicherheitslücken – Gesichtserkennung löchrig wie Schweizer Käse

Ich hoffe wir sehen uns nachher ab 19 Uhr auf meet.cloud-foo.de/Linux oder über den Link auf https://linux-am-dienstag.de

Dovecot 2.3.15: Update kickt alte Mailclienten raus

Die aktuelle Version von Dovecot für Fedora, Version 2.3.15, hebt über die internen Defaulteinstellungen das MinimalProtokoll für TLS von TLS 1.0 auf TLS 1.2 an, ganz zum Nachteil alter Mailprogramme.

Dovecot 2.3.15: Update kickt alte Mailclienten raus

Montag Morgen, Internet: Gegen 6 Uhr morgens weisen die Fedoraserver eine neue Dovecotversion aus. Wenige Sekunden später fangen die ersten Server im Cluster an, das Update einzuspielen. Gegen 8 Uhr kommen die ersten Beschwerden beim Support rein, daß einige Benutzer keine Emails mehr abholen könnten.

Eine Analyse später steht nur fest, daß die Clienten beim Abholen eine „nicht unterstützte TLS Version sprechen“, komischerweise aber noch Emails senden können. Die Zugriffe der Mailprogramme findet dabei über die seit 1994 in Betrieb befindlichen SSL-Ports 993 und 995 statt, was die Vermutung nahe legt, daß die Mailprogramme dabei auch das damals übliche SSLv3 sprechen oder zumindest nicht TLS 1.2+.

In den Adminkreisen kommt der Verdacht auf, ein Windowsupdate hätte das Problem verursacht, was sich aber als falsch herausstellt, da nach und nach auch Android und Macuser Probleme melden.

24h später steht die Ursache fest: Das Dovecot Update 2.3.15 bringt ein Securityupdate mit, in dessen Zuge die minimale Protokollversion für TLS Verbindungen von TLS 1.0 auf TLS 1.2 gesetzt wird. Eine Umstellung der Mailprogramme aus das moderne STARTTLS stellt in den Mailprogramm dann auch die verwendete Krypto von „völlig veraltet“ auf „modern“ um, so daß die Probleme mit einen Klick behoben werden können.

Im Changelog liest sich das übrigens so:

CVE-2021-29157: Dovecot does not correctly escape kid and azp fields in JWT tokens. This may be used to supply attacker controlled keys to validate tokens, if attacker has local access.
CVE-2021-33515: On-path attacker could have injected plaintext commands before STARTTLS negotiation that would be executed after STARTTLS finished with the client.
Add TSLv1.3 support to min_protocols.

Da die Sicherheitslücken nicht umgangen werden können, bleiben die alten Versionen draußen. Dies hat uch den Vorteil, daß jetzt TLS 1.2 das Mindestmaß auch bei Privatanwendern ist.

Zwei Einzelfälle möchte ich Euch allerdings nicht vorenthalten:

a) Ein Benutzer nutzte auch beim Senden noch TLS 1.0, was den Verdacht nahelegte, daß hier eine alte Version in Spiel war. Es kam raus, daß noch Thunderbird V17 von 2013 benutzt wurde und nie Updates eingespielt wurden 🙂 Ein Update wirkte Wunder 😉

b) Ein anderer Benutzer nutzte auch noch TLS 1.0, aber hier war Hopfen und Malz verloren, da es sich um einen MAC von 2006 oder 2007 handelte. Dem ist in sofern nicht mehr zu helfen, da es hier keine Updates mehr gibt, die diese HW noch mitmachen würde.

Merke: Alte Hardware ist nur charmant, wenn Sie auch noch sicher ist.