ProHoster > blog > Gweinyddiaeth > Patched Exim - darn eto. Gweithredu Gorchymyn Anghysbell Ffres yn Exim 4.92 mewn un cais
Patched Exim - darn eto. Gweithredu Gorchymyn Anghysbell Ffres yn Exim 4.92 mewn un cais
Yn fwy diweddar, yn gynnar yn yr haf, roedd galwadau eang i Exim gael ei ddiweddaru i fersiwn 4.92 oherwydd bregusrwydd CVE-2019-10149 (Diweddaru Exim ar frys i 4.92 - mae haint gweithredol / Sudo Null IT News). Ac yn ddiweddar daeth i'r amlwg bod meddalwedd maleisus Sutes wedi penderfynu manteisio ar y bregusrwydd hwn.
Nawr gall pawb a ddiweddarodd ar frys “lawenhau” eto: ar Orffennaf 21, 2019, darganfu'r ymchwilydd Zerons wendid critigol mewn Asiant Trosglwyddo Post Exim (MTA) wrth ddefnyddio TLS ar gyfer fersiynau o 4.80 4.92.1 i cynhwysol, gan ganiatáu o bell gweithredu cod gyda hawliau breintiedig (CVE-2019-15846).
Bregusrwydd
Mae'r bregusrwydd yn bresennol wrth ddefnyddio'r llyfrgelloedd GnuTLS ac OpenSSL wrth sefydlu cysylltiad TLS diogel.
Yn ôl y datblygwr Heiko Schlittermann, nid yw'r ffeil ffurfweddu yn Exim yn defnyddio TLS yn ddiofyn, ond mae llawer o ddosbarthiadau yn creu'r tystysgrifau angenrheidiol yn ystod y gosodiad ac yn galluogi cysylltiad diogel. Hefyd mae fersiynau mwy newydd o Exim yn gosod yr opsiwn tls_advertise_hosts=* a chynhyrchu'r tystysgrifau angenrheidiol.
yn dibynnu ar y cyfluniad. Mae'r rhan fwyaf o distros yn ei alluogi yn ddiofyn, ond mae angen tystysgrif + allwedd ar Exim i weithio fel gweinydd TLS. Mae'n debyg bod Distros yn creu Tystysgrif yn ystod y gosodiad. Mae gan Exims Newyddach yr opsiwn tls_advertise_hosts yn rhagosod i "*" a chreu tystysgrif hunanlofnodedig, os na ddarperir un.
Mae'r bregusrwydd ei hun yn gorwedd mewn prosesu SNI yn anghywir (Dynodiad Enw Gweinyddwr, technoleg a gyflwynwyd yn 2003 yn RFC 3546 i gleient ofyn am y dystysgrif gywir ar gyfer enw parth, Dosbarthiad safon TLS SNI / Blog Grŵp WEBO / Newyddion TG Sudo Null) yn ystod ysgwyd llaw TLS. Mae angen i ymosodwr anfon diweddglo SNI gydag adlach ("") a nod null ("").
Mae ymchwilwyr o Qualys wedi darganfod nam yn y swyddogaeth string_printing(tls_in.sni), sy'n golygu dianc anghywir o “”. O ganlyniad, mae'r slaes yn cael ei ysgrifennu heb ddianc i'r ffeil pennawd sbŵl argraffu. Yna darllenir y ffeil hon gyda hawliau breintiedig gan y swyddogaeth spool_read_header(), sy'n arwain at orlif pentwr.
Mae'n werth nodi bod datblygwyr Exim ar hyn o bryd wedi creu PoC o wendidau gyda gweithredu gorchmynion ar weinydd bregus o bell, ond nid yw ar gael yn gyhoeddus eto. Oherwydd rhwyddineb ecsbloetio'r byg, dim ond mater o amser ydyw, ac yn eithaf byr.
Os yw'n amhosibl diweddaru neu osod fersiwn glytiog, gallwch osod ACL yn y ffurfweddiad Exim ar gyfer yr opsiwn acl_smtp_mail gyda'r rheolau canlynol:
# 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}}}}