Prugressu in a custruzione di un sfruttamentu per OpenSSH 9.1

Qualys hà truvatu un modu per passà malloc è prutezzione doppia libera per inizià un trasferimentu di cuntrollu à u codice utilizendu una vulnerabilità in OpenSSH 9.1 chì era determinata à avè pocu risicu di creà un sfruttamentu di travagliu. À u listessu tempu, a pussibilità di creà un sfruttamentu di travagliu resta una grande quistione.

A vulnerabilità hè causata da una pre-autentificazione doppia libera. Per creà e cundizioni per a vulnerabilità per manifestà, hè abbastanza per cambià u banner di u cliente SSH à "SSH-2.0-FuTTYSH_9.1p1" (o un altru cliente SSH anticu) per stabilisce e bandiere "SSH_BUG_CURVE25519PAD" è "SSH_OLD_DHGEX". Dopu avè stabilitu queste bandiere, a memoria per u buffer "options.kex_algorithms" hè liberata duie volte.

I ricercatori di Qualys, mentre manipulavanu a vulnerabilità, anu pussutu acquistà u cuntrollu di u registru di u processatore "%rip", chì cuntene un punteru à a prossima struzzione per esse eseguita. A tecnica di sfruttamentu sviluppata permette di trasfirià u cuntrollu à ogni puntu in u spaziu di indirizzu di u prucessu sshd in un ambiente OpenBSD 7.2 senza aghjurnà, furnitu per difettu cù OpenSSH 9.1.

Hè nutatu chì u prototipu prupostu hè una implementazione di solu a prima tappa di l'attaccu - per creà un sfruttamentu di travagliu, hè necessariu di scaccià i meccanismi di prutezzione ASLR, NX è ROP, è scappà l'isolamentu di sandbox, chì hè improbabile. Per risolve u prublema di bypassing ASLR, NX è ROP, hè necessariu d'ottene infurmazioni nantu à l'indirizzi, chì ponu esse ottenuti identificendu una altra vulnerabilità chì porta à a fuga di l'infurmazioni. Un bug in u prucessu parentale privilegiatu o kernel pò aiutà à esce da u sandbox.

Source: opennet.ru

Add a comment