Exim gepatcht - opnieuw patchen. Nieuwe uitvoering van externe opdrachten in Exim 4.92 in één verzoek

Exim gepatcht - opnieuw patchen. Nieuwe uitvoering van externe opdrachten in Exim 4.92 in één verzoek

Meer recentelijk, aan het begin van de zomer, waren er wijdverbreide oproepen om Exim te updaten naar versie 4.92 vanwege de CVE-2019-10149-kwetsbaarheid (Update Exim dringend naar 4.92 - er is een actieve infectie / Sudo Null IT News). En onlangs bleek dat de Sustes-malware besloot misbruik te maken van deze kwetsbaarheid.

Nu kunnen allen die dringend een update hebben uitgevoerd zich weer “verheugen”: op 21 juli 2019 ontdekte onderzoeker Zerons een kritieke kwetsbaarheid in Exim Mail Transfer Agent (MTA) bij gebruik van TLS voor versies vanaf Om 4.80 4.92.1 inclusief, waardoor afstandsbediening mogelijk is voer code uit met bevoorrechte rechten (CVE-2019-15846).

Kwetsbaarheid

Het beveiligingslek is aanwezig bij het gebruik van zowel de GnuTLS- als de OpenSSL-bibliotheken bij het tot stand brengen van een veilige TLS-verbinding.

Volgens ontwikkelaar Heiko Schlittermann maakt het configuratiebestand in Exim standaard geen gebruik van TLS, maar maken veel distributies tijdens de installatie de benodigde certificaten aan en zorgen ze voor een veilige verbinding. Ook nieuwere versies van Exim installeren de optie tls_advertise_hosts=* en genereer de benodigde certificaten.

hangt af van de configuratie. De meeste distributies schakelen dit standaard in, maar Exim heeft een certificaat+sleutel nodig om als TLS-server te werken. Waarschijnlijk maakt Distros een certificaat tijdens de installatie. Nieuwere Exims hebben de optie tls_advertise_hosts standaard ingesteld op "*" en maken een zelfondertekend certificaat aan als er geen is opgegeven.

De kwetsbaarheid zelf schuilt in de onjuiste verwerking van SNI (Server Name Indication, een technologie die in 2003 in RFC 3546 werd geïntroduceerd om een ​​client het juiste certificaat voor een domeinnaam aan te laten vragen, Distributie van de TLS SNI-standaard / WEBO Group Blog / Sudo Null IT News) tijdens een TLS-handshake. Een aanvaller hoeft alleen maar een SNI te sturen die eindigt met een backslash ("") en een null-teken (" ").

Onderzoekers van Qualys hebben een bug ontdekt in de functie string_printing(tls_in.sni), waarbij het onjuiste escapen van “”. Als gevolg hiervan wordt de backslash zonder escapecodes naar het headerbestand van de printspool geschreven. Dit bestand wordt vervolgens met bevoorrechte rechten gelezen door de functie spool_read_header(), wat leidt tot heap-overflow.

Het is vermeldenswaard dat Exim-ontwikkelaars momenteel een PoC van kwetsbaarheden hebben gecreëerd met de uitvoering van opdrachten op een externe kwetsbare server, maar deze is nog niet openbaar beschikbaar. Vanwege het gemak waarmee de bug kan worden uitgebuit, is dit slechts een kwestie van tijd, en vrij kort.

Een meer gedetailleerd onderzoek van Qualys is te vinden hier.

Exim gepatcht - opnieuw patchen. Nieuwe uitvoering van externe opdrachten in Exim 4.92 in één verzoek

SNI gebruiken in TLS

Aantal potentieel kwetsbare publieke servers

Dat blijkt uit statistieken van een grote hostingprovider E-Soft Inc vanaf 1 september wordt versie 4.92 op gehuurde servers gebruikt bij meer dan 70% van de hosts.

Versie
Aantal servers
procent

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 versies
25568
5.04%

Bedrijfsstatistieken van E-Soft Inc

Als u een zoekmachine gebruikt Shodan, en vervolgens van de 5,250,000 in de serverdatabase:

  • ongeveer 3,500,000 gebruiken Exim 4.92 (ongeveer 1,380,000 gebruiken SSL/TLS);
  • meer dan 74,000 gebruiken 4.92.1 (ongeveer 25,000 gebruiken SSL/TLS).

Er zijn dus ongeveer een aantal publiek bekende en toegankelijke Exim-potentieel kwetsbare servers 1.5 miljoen.

Exim gepatcht - opnieuw patchen. Nieuwe uitvoering van externe opdrachten in Exim 4.92 in één verzoek

Zoek naar Exim-servers in Shodan

bescherming

  • De eenvoudigste, maar niet aanbevolen, optie is om TLS niet te gebruiken, waardoor e-mailberichten ongecompliceerd worden doorgestuurd.
  • Om misbruik van de kwetsbaarheid te voorkomen, zou het beter zijn om naar de versie te updaten Exim Internet Mailer 4.92.2.
  • Als het onmogelijk is om een ​​gepatchte versie bij te werken of te installeren, kunt u voor de optie een ACL instellen in de Exim-configuratie acl_smtp_mail met de volgende regels:
    # 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}}}}

Bron: www.habr.com

Voeg een reactie