Exim gepatcht — jetzt erneut patchen. Frische Remote Command Execution in Exim 4.92 in einer Anfrage

Exim gepatcht — jetzt erneut patchen. Frische Remote Command Execution in Exim 4.92 in einer Anfrage

Ganz frisch, Anfang des Sommers, gab es massenhafte Aufrufe, Exim auf Version 4.92 wegen der Schwachstelle CVE-2019-10149 zu aktualisieren (Bitte aktualisieren Sie exim dringend auf 4.92 — es findet eine aktive Infektion statt / Habr). Vor einigen Tagen stellte sich heraus, dass die Malware Sustes diese Schwachstelle ausnutzen wollte.

Nun können alle, die sich schnell aktualisiert haben, wieder „erfreut“ sein: Am 21. Juli 2019 entdeckte der Forscher Zerons eine kritische Schwachstelle in Exim Mail Transfer-Agent (MTA) bei Verwendung von TLS fĂŒr Versionen von 4.80 bis 4.92.1 einschließlich, die es ermöglichen, Code mit erhöhten Rechten auszufĂŒhren (CVE-2019-15846).

Schwachstelle

Die Schwachstelle tritt auf, wenn Bibliotheken wie GnuTLS und OpenSSL bei der Einrichtung einer gesicherten TLS-Verbindung verwendet werden.

Laut Entwickler Heiko Schlittermann verwendet die Konfigurationsdatei in Exim standardmĂ€ĂŸig kein TLS, jedoch erstellen viele Distributionen wĂ€hrend der Installation die notwendigen Zertifikate und aktivieren die gesicherte Verbindung. Zudem setzen neuere Versionen von Exim die Option tls_advertise_hosts=* und generieren die erforderlichen Zertifikate.

hĂ€ngt von der Konfiguration ab. Die meisten Distributionen aktivieren es standardmĂ€ĂŸig, aber Exim benötigt ein Zertifikat+SchlĂŒssel, um als TLS-Server zu arbeiten. Wahrscheinlich erstellen Distributionen ein Zertifikat wĂ€hrend der Einrichtung. Neuere Exims haben die Option tls_advertise_hosts, die standardmĂ€ĂŸig auf „*“ eingestellt ist, und erstellen ein selbstsigniertes Zertifikat, wenn kein Zertifikat bereitgestellt wird.

Die eigentliche Schwachstelle liegt in der fehlerhaften Verarbeitung von SNI (Server Name Indication, Technik, die 2003 in RFC 3546 eingefĂŒhrt wurde, um dem Client die Anforderung eines korrekten Zertifikats fĂŒr den Domainnamen zu ermöglichen, Verbreitung des TLS SNI-Standards / Blog der Firma WEBO Group / Habr) wĂ€hrend des TLS-Handshakes. Ein Angreifer muss nur SNI senden, das mit einem Backslash („") und einem Null-Zeichen („ “) endet.

Forscher von Qualys entdeckten einen Fehler in der Funktion string_printing(tls_in.sni), der in der fehlerhaften Escapierung von „“ besteht. Infolgedessen wird ein Backslash unescaped in die Header-Datei print spool geschrieben. Diese Datei wird dann mit erhöhten Rechten von der Funktion spool_read_header() gelesen, was zu einem Heap Overflow fĂŒhrt.

Es ist erwĂ€hnenswert, dass die Entwickler von Exim derzeit einen PoC fĂŒr die Schwachstelle zur AusfĂŒhrung von Befehlen auf einem entfernten verwundbaren Server erstellt haben, dieser jedoch bislang nicht öffentlich verfĂŒgbar ist. Aufgrund der Einfachheit der Ausnutzung des Fehlers ist es nur eine Frage der Zeit, und zwar einer recht kurzen.

Eine detaillierte Untersuchung des Unternehmens Qualys ist möglich hier.

Exim gepatcht — jetzt erneut patchen. Frische Remote Command Execution in Exim 4.92 in einer Anfrage

Verwendung von SNI in TLS

Anzahl potenziell verwundbarer öffentlicher Server

Statistisch gesehen bei einem großen Hosting-Anbieter E-Soft Inc am 1. September wird auf gemieteten Servern Version 4.92 in ĂŒber 70 % der Hosts verwendet.

Version
Anzahl der Server
Prozentsatz

4.92.1
6471
1.28%

4.92
376436
74.22%

4.91
58179
11.47%

4.9
5732
1.13%

4.89
10700
2.11%

4.87
14177
2.80%

4.84
9937
1.96%

Andere Versionen
25568
5.04%

Statistik des Unternehmens E-Soft Inc

Wenn Sie die Suchmaschine Shodandot verwenden, aus 5.250.000 in der Serverdatenbank:

  • ungefĂ€hr 3.500.000 verwenden Exim 4.92 (ungefĂ€hr 1.380.000 mit SSL/TLS);
  • ĂŒber 74.000 verwenden 4.92.1 (ungefĂ€hr 25.000 mit SSL/TLS).

Somit gibt es ungefÀhr 1,5 Millionen.

Exim gepatcht — jetzt erneut patchen. Frische Remote Command Execution in Exim 4.92 in einer Anfrage

Suche nach Exim-Servern in Shodan

Schutz

  • Die einfachste, aber nicht empfohlene Option ist, TLS nicht zu verwenden, was dazu fĂŒhren wĂŒrde, dass E-Mails im Klartext ĂŒbertragen werden.
  • Es ist vorzuziehen, die Verletzbarkeit zu vermeiden, indem auf die Version Exim Internet Mailer 4.92.2.
  • aktualisiert wird, falls eine Aktualisierung oder Installation einer gepatchten Version nicht möglich ist, kann eine ACL in der Exim-Konfiguration fĂŒr die Option acl_smtp_mail mit den folgenden Regeln festgelegt werden:
    # to be prepended to your mail acl (the ACL referenced
    # by the acl_smtp_mail main config option)
    deny    condition = ${if eq{}{${substr{-1}{1}{$tls_in_sni}}}}
    deny    condition = ${if eq{}{${substr{-1}{1}{$tls_in_peerdn}}}}

Quelle: habr.com

60GB SSD 8Gb DDR4