Teraz sa môžu všetci tí, ktorí súrne aktualizovali, opäť „radovať“: 21. júla 2019 výskumník Zerons objavil kritickú zraniteľnosť v Exim Mail Transfer agent (MTA) pri používaní TLS pre verzie z 4.80 4.92.1 up vrátane, umožňujúce diaľkové spustiť kód s privilegovanými právami (CVE-2019 15846,).
Zraniteľnosť
Zraniteľnosť sa vyskytuje pri používaní knižníc GnuTLS aj OpenSSL pri vytváraní zabezpečeného pripojenia TLS.
Podľa vývojára Heika Schlittermanna konfiguračný súbor v Exime štandardne nepoužíva TLS, no mnohé distribúcie si pri inštalácii vytvárajú potrebné certifikáty a umožňujú zabezpečené pripojenie. Možnosť nainštalovať aj novšie verzie Exim tls_advertise_hosts=* a vygenerovať potrebné certifikáty.
závisí od konfigurácie. Väčšina distribúcií to štandardne povoľuje, ale Exim potrebuje certifikát + kľúč, aby fungoval ako server TLS. Pravdepodobne distribúcia vytvorí certifikát počas nastavenia. Novšie Eximy majú možnosť tls_advertise_hosts predvolenú na "*" a vytvoria certifikát s vlastným podpisom, ak nie je poskytnutý.
Samotná zraniteľnosť spočíva v nesprávnom spracovaní SNI (Server Name Indication, technológia zavedená v roku 2003 v RFC 3546, aby klient mohol požiadať o správny certifikát pre názov domény, Distribúcia štandardu TLS SNI / WEBO Group Blog / Sudo Null IT News) počas TLS handshake. Útočníkovi stačí poslať SNI končiace opačnou lomkou ("") a znakom null (" ").
Výskumníci z Qualys objavili chybu vo funkcii string_printing(tls_in.sni), ktorá zahŕňa nesprávne escapovanie „“. V dôsledku toho sa spätná lomka zapíše do súboru hlavičky tlačovej fronty bez kódovania. Tento súbor je potom načítaný s privilegovanými právami pomocou funkcie spool_read_header(), čo vedie k pretečeniu haldy.
Stojí za zmienku, že v súčasnosti vývojári Exim vytvorili PoC zraniteľností s vykonávaním príkazov na vzdialenom zraniteľnom serveri, ale zatiaľ nie je verejne dostupný. Vzhľadom na jednoduchosť využitia chyby je to len otázka času a pomerne krátka.
Podľa štatistík veľkého poskytovateľa hostingu Spoločnosť E-Soft Inc od 1. septembra na prenajatých serveroch používa verziu 4.92 viac ako 70 % hostiteľov.
verzia
Počet serverov
Percento
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%
Iné verzie
25568
5.04%
Štatistiky spoločnosti E-Soft Inc
Ak používate vyhľadávač Shodan, potom z 5,250,000 XNUMX XNUMX v databáze servera:
asi 3,500,000 4.92 1,380,000 používa Exim XNUMX (asi XNUMX XNUMX XNUMX používa SSL/TLS);
viac ako 74,000 4.92.1 používa 25,000 (približne XNUMX XNUMX používa SSL/TLS).
Verejne známych a prístupných Exim potenciálne zraniteľných serverov je teda okolo 1.5 milióna.
Vyhľadajte servery Exim v Shodan
ochrana
Najjednoduchšou, ale neodporúčanou možnosťou je nepoužívať TLS, čo bude mať za následok, že e-mailové správy sa budú posielať ďalej.
Aby sa predišlo zneužitiu zraniteľnosti, bolo by vhodnejšie aktualizovať verziu Exim Internet Mailer 4.92.2.
Ak nie je možné aktualizovať alebo nainštalovať opravenú verziu, môžete pre túto možnosť nastaviť ACL v konfigurácii Exim acl_smtp_mail s nasledujúcimi pravidlami:
# 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}}}}