Napredek pri ustvarjanju izkoriščanja za OpenSSH 9.1

Qualys je z uporabo ranljivosti v OpenSSH 9.1, za katero je bilo ugotovljeno, da ima nizko tveganje za ustvarjanje delujočega izkoriščanja, našel način, kako obiti malloc in dvojno brezplačno zaščito, da bi sprožil prenos nadzora na kodo. Hkrati pa možnost ustvarjanja delujočega izkoriščanja ostaja veliko vprašanje.

Ranljivost povzroča dvojno brezplačno predhodno preverjanje pristnosti. Če želite ustvariti pogoje za manifestacijo ranljivosti, je dovolj, da pasico odjemalca SSH spremenite v »SSH-2.0-FuTTYSH_9.1p1« (ali drugega starega odjemalca SSH), da nastavite zastavici »SSH_BUG_CURVE25519PAD« in »SSH_OLD_DHGEX«. Po nastavitvi teh zastavic se pomnilnik za medpomnilnik »options.kex_algorithms« dvakrat sprosti.

Raziskovalci iz Qualysa so med manipulacijo ranljivosti uspeli pridobiti nadzor nad registrom procesorja »%rip«, ki vsebuje kazalec na naslednje navodilo, ki ga je treba izvesti. Razvita tehnika izkoriščanja vam omogoča prenos nadzora na katero koli točko v naslovnem prostoru procesa sshd v neposodobljenem okolju OpenBSD 7.2, ki je privzeto na voljo z OpenSSH 9.1.

Opozoriti je treba, da je predlagani prototip izvedba le prve stopnje napada - za ustvarjanje delujočega izkoriščanja je potrebno zaobiti zaščitne mehanizme ASLR, NX in ROP ter se izogniti izolaciji peskovnika, kar je malo verjetno. Za rešitev problema obhoda ASLR, NX in ROP je potrebno pridobiti informacije o naslovih, kar lahko dosežemo z identifikacijo druge ranljivosti, ki vodi do uhajanja informacij. Napaka v privilegiranem nadrejenem procesu ali jedru lahko pomaga pri izhodu iz peskovnika.

Vir: opennet.ru

Dodaj komentar