
Kohë më parë, në fillim të verës, filluan thirrjet masive për përditësimin e Exim në versionin 4.92 për shkak të dobësisë CVE-2019-10149 (). Disa ditë më parë u zbulua se malware-i Sustes kishte vendosur të shfrytëzonte këtë dobësi.
Tani, ata që përditësuan me urgjencë mund të gëzojnë sërish: më 21 korrik 2019, studiuesi Zerons zbuloi një dobësi kritike në Exim Mail Transfer Agent (MTA) kur përdor TLS për versionet nga 4.80 deri në 4.92.1 përfshirë, e cila lejon ekzekutimin e kodit me të drejta privilegjuar ().
Vulnerabiliteti
Dobësia ka zbritur gjatë përdorimit të bibliotekave si GnuTLS ashtu edhe OpenSSL gjatë vendosjes së një lidhjeje të sigurt TLS.
Sipas zhvilluesit Heiko Schlittermann, skedari i konfigurimit në Exim për default nuk përdor TLS, megjithatë shumë distribucione gjatë instalimit krijojnë certifikatat e nevojshme dhe përfshijnë lidhjen e sigurt. Gjithashtu, versionet më të reja të Exim vendosin opsionin tls_advertise_hosts=* dhe gjenerojnë certifikatat e nevojshme.
varet nga konfigurimi. Shumica e distribucioneve e aktivizojnë atë si default, por Exim ka nevojë për një certifikatë+çelës për të funksionuar si një server TLS. Sigurisht, distribucionet krijojnë një Cert gjatë konfigurimit. Exim më të rinjtë kanë opsionin tls_advertise_hosts që defaktohet në «*» dhe krijojnë një certifikatë të vetë-nënshkruar, nëse asnjë nuk është e dhënë.
Dobësia në vetvete përfshin përpunimin e gabuar të SNI (Server Name Indication, teknologji e prezantuar në vitin 2003 në RFC 3546 për të kërkuar një certifikatë të saktë për emrin e domainit nga klienti, ) gjatë dorëzimit TLS. E keqja e mjafton të dërgojë SNI, që përfundon me një kthim prapa («”) dhe simbolin null (» «).
Kërkuesit nga kompania Qualys zbuluan një defekt në funksionin string_printing(tls_in.sni), i cili konsiston në përpunimin e gabuar të «». Si rezultat, shënohet një kthim prapa në një format të riprodhuar në skedarin e titujve të print sipas mallit. Pastaj ky skedar me të drejta privilegjuar lexon nga funksioni spool_read_header(), duke rezultuar në mbingarkesë (heap overflow).
Është e rëndësishme të theksohet se deri më tani zhvilluesit e Exim kanë krijuar një PoC të dobësisë me ekzekutimin e komandave në një server të ndjeshëm, por tani për tani ai nuk është në dispozicion publik. Për shkak të lehtësisë së shfrytëzimit të defektit, kjo është vetëm një çështje kohe, përveçse një kohe relativisht të shkurtër.
Mund të njiheni me hetimin më të detajuar nga kompania Qualys .

Përdorimi i SNI në TLS
Numri i serverëve publikisht të mundshëm të cenueshëm
Sipas statistikave të një ofruesi të madh të hostimit E-Soft Inc në 1 Shtator, në serverët e dhënë me qira, versioni 4.92 përdoret në më shumë se 70% të hosteve.
Version
Numri i Serverëve
Përqindja
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%
Versionet e tjera
25568
5.04%
Statistika e kompanisë E-Soft Inc
Nëse i drejtohemi motorit të kërkimit , nga 5,250,000 në bazën e serverëve:
- rreth 3,500,000 përdorin Exim 4.92 (rreth 1,380,000 që përdorin SSL/TLS);
- më shumë se 74,000 përdorin 4.92.1 (rreth 25,000 që përdorin SSL/TLS).
Dhe kështu, numri i serverëve potencialisht të cenueshëm Exim që janë publikisht të njohur dhe të aksesueshëm është rreth 1.5 milion.

Kërkimi i serverëve Exim në Shodan
Mbrojtja
- Mënyra më e thjeshtë, por e pa rekomanduar — mos përdorni TLS, gjë që do të çojë në dërgimin e mesazheve të postës në formë të hapur.
- Më e preferueshme për të shmangur shfrytëzimin e cenueshmërisë është azhurnimi në versionin .
- Në rast se azhurnimi ose instalimi i versionit të patch-uar nuk është i mundur, mund të vendosni ACL në konfigurimin e Exim për opsionin acl_smtp_mail me rregullat e mëposhtme:
# 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}}}}
Burimi: habr.com
