Der Administrator des Jabber-Servers jabber.ru (xmpp.ru) stellte einen Angriff auf die Entschlüsselung des Nutzerverkehrs (MITM) fest, der über einen Zeitraum von 90 Tagen bis 6 Monaten in den Netzwerken der deutschen Hosting-Anbieter Hetzner und Linode durchgeführt wurde, auf denen der Projektserver und unterstützende VPS-Umgebungen gehostet werden. Der Angriff wurde durch die Umleitung des Verkehrs zu einem Transitknoten organisiert, der das TLS-Zertifikat für XMPP-Verbindungen manipuliert, die mit der Erweiterung STARTTLS verschlüsselt sind.
Der Angriff wurde aufgrund eines Fehlers seiner Organisatoren bemerkt, die es versäumt hatten, das TLS-Zertifikat, das für die Manipulation verwendet wurde, zu verlängern. Am 16. Oktober erhielt der Administrator von jabber.ru beim Versuch, sich mit dem Dienst zu verbinden, eine Fehlermeldung aufgrund eines abgelaufenen Zertifikats, jedoch war das auf dem Server gespeicherte Zertifikat nicht abgelaufen. Schließlich stellte sich heraus, dass das vom Client empfangene Zertifikat sich vom vom Server gesendeten Zertifikat unterscheidet. Das erste gefälschte TLS-Zertifikat wurde am 18. April 2023 über den Dienst Let’s Encrypt erhalten, wobei der Angreifer, der in der Lage war, den Verkehr abzufangen, den Zugang zu den Webseiten jabber.ru und xmpp.ru bestätigen konnte.
Zunächst gab es die Vermutung einer Kompromittierung des Projektservers und einer Manipulation von dessen Seite. Doch die durchgeführte Prüfung ergab keine Hinweise auf einen Hack. Gleichzeitig wurde im Protokoll des Servers ein zeitweises Aus- und Einschalten des Netzwerkinterfaces (NIC Link is Down/NIC Link is Up) festgestellt, das am 18. Juli um 12:58 durchgeführt wurde und möglicherweise auf Manipulationen mit der Verbindung des Servers zum Switch hindeutete. Bemerkenswert ist, dass zwei gefälschte TLS-Zertifikate einige Minuten zuvor generiert wurden - am 18. Juli um 12:49 und 12:38.
Darüber hinaus fand die Manipulation nicht nur im Netzwerk des Anbieters Hetzner statt, auf dem der Hauptserver gehostet wird, sondern auch im Netzwerk des Anbieters Linode, in dem die VPS-Umgebungen mit unterstützenden Proxy-Servern gehostet wurden, die den Verkehr von anderen Adressen umleiten. Indirekt wurde festgestellt, dass der Verkehr auf den Netzwerkport 5222 (XMPP STARTTLS) in den Netzwerken beider Anbieter über einen zusätzlichen Host umgeleitet wird, was den Verdacht nährte, dass der Angriff von jemandem durchgeführt wurde, der Zugang zur Infrastruktur der Anbieter hat.
Theoretisch konnte die Umstellung ab dem 18. April (Datum der Erstellung des ersten gefälschten Zertifikats für jabber.ru) erfolgen, aber bestätigte Fälle von Zertifikatsänderungen wurden nur zwischen dem 21. Juli und dem 19. Oktober festgestellt. Während dieser gesamten Zeit kann der verschlüsselte Datenverkehr mit jabber.ru und xmpp.ru als kompromittiert betrachtet werden. Die Umstellungen wurden nach Beginn der Ermittlungen, Durchführung von Tests und der Anfrage am 18. Oktober an den Support der Anbieter Hetzner und Linode eingestellt. Ein zusätzlicher Übergang bei der Paketweiterleitung, die an Port 5222 eines der Server in Linode gesendet wird, ist auch heute noch zu beobachten, aber das Zertifikat wird jetzt nicht mehr ersetzt.
Es wird vermutet, dass der Angriff mit Wissen der Anbieter auf Anforderung der Strafverfolgungsbehörden, aufgrund eines Hacks der Infrastruktur beider Anbieter oder durch einen Mitarbeiter, der Zugang zu beiden Anbietern hatte, durchgeführt wurde. Mit der Möglichkeit, XMPP-Traffic abzufangen und zu modifizieren, hätte der Angreifer Zugang zu allen mit den Konten verbundenen Daten erhalten können, wie z. B. der auf dem Server gespeicherten Nachrichtenhistorie, und hätte Nachrichten im Namen anderer senden und Änderungen an fremden Nachrichten vornehmen können. Nachrichten, die mit End-to-End-Verschlüsselung (OMEMO, OTR oder PGP) gesendet werden, gelten als nicht kompromittiert, wenn die Verschlüsselungsschlüssel von den Benutzern auf beiden Seiten der Verbindung bestätigt werden. Benutzern von jabber.ru wird empfohlen, ihre Zugangspasswörter zu ändern und die Schlüssel OMEMO und PGP in ihren PEP-Speichern auf mögliche Manipulationen zu überprüfen.
Quelle: opennet.ru
