Edusammud OpenSSH 9.1 kasutusvõimaluse loomisel

Qualys leidis võimaluse mallocist ja topeltvabast kaitsest mööda minna, et algatada kontrolli üleandmine koodile, kasutades OpenSSH 9.1 haavatavust, mille puhul leiti, et töötava ärakasutamise oht on madal. Samal ajal jääb suureks küsimuseks töötava ärakasutamise võimalus.

Haavatavuse põhjustab topeltvaba eelautentimine. Haavatavuse avaldumiseks tingimuste loomiseks piisab, kui muuta SSH-kliendi bänner SSH-2.0-FuTTYSH_9.1p1-ks (või mõneks muuks vanaks SSH-kliendiks), et määrata lipud “SSH_BUG_CURVE25519PAD” ja “SSH_OLD_DHGEX”. Pärast nende lippude seadistamist vabastatakse puhvri “options.kex_algorithms” mälu kaks korda.

Qualysi teadlased suutsid haavatavusega manipuleerides saada kontrolli "%rip" protsessoriregistri üle, mis sisaldab viidat järgmisele käivitatavale juhisele. Väljatöötatud kasutustehnika võimaldab teil üle kanda kontrolli sshd protsessi aadressiruumi mis tahes punkti uuendamata OpenBSD 7.2 keskkonnas, mis on vaikimisi koos OpenSSH 9.1-ga.

Märgitakse, et väljapakutud prototüüp on vaid rünnaku esimese etapi teostus – toimiva ärakasutamise loomiseks on vaja mööda minna ASLR, NX ja ROP kaitsemehhanismidest ning pääseda liivakasti isolatsioonist, mis on ebatõenäoline. ASLR-i, NX-i ja ROP-i möödahiilimise probleemi lahendamiseks on vaja hankida teavet aadresside kohta, mida on võimalik saavutada, tuvastades teise haavatavuse, mis põhjustab teabe lekkimist. Privilegeeritud vanemprotsessi või kerneli viga võib aidata liivakastist väljuda.

Allikas: opennet.ru

Lisa kommentaar