A fost găsită o vulnerabilitate qmail care permite exploatarea acesteia de la distanță

Cercetătorii de securitate Qualys au arătat posibilitatea exploatării o vulnerabilitate în serverul de mail qmail, cunoscut din 2005 (CVE-2005-1513), dar necorectat, din qmail a susținut că nu este realist să creezi un exploit de lucru care ar putea fi folosit pentru a ataca sistemele în configurația implicită.

Dar se pare că dezvoltatorii qmail au greșit, deoarece Qualys a reușit să pregătească un exploit care infirmă această ipoteză și permite executarea codului la distanță pentru a începe pe server prin trimiterea unui mesaj special creat.

Problema este cauzată de o revărsare a funcției stralloc_readyplus (), care poate apărea la procesarea unui mesaj foarte mare. Pentru operație, a fost necesar un sistem pe 64 de biți cu o capacitate de memorie virtuală mai mare de 4 GB.

În analiza inițială a vulnerabilității din 2005, Daniel Bernstein a susținut că presupunerea din cod că dimensiunea matricei alocate se potrivește întotdeauna cu o valoare de 32 de biți se bazează pe faptul că nimeni nu oferă gigabytes de memorie fiecărui proces.

În ultimii 15 ani, sistemele pe 64 de biți de pe servere au înlocuit sistemele pe 32 de biți, cantitatea de memorie oferită și lățimea de bandă a rețelei au crescut dramatic.

Pachetele care însoțeau qmail au luat în considerare comentariul lui Bernstein și la pornirea procesului qmail-smtpd, acestea limitau memoria disponibilă (De exemplu, pe Debian 10, limita a fost setată la 7 MB).

Dar Inginerii Qualys au descoperit că acest lucru nu este suficient și pe lângă qmail-smtpd, poate fi efectuat un atac de la distanță asupra procesului qmail-local, care a rămas nelimitat pe toate pachetele testate.

Ca dovadă, a fost pregătit un prototip de exploatare, care este potrivit pentru a ataca pachetul furnizat de Debian cu qmail în configurația implicită. Pentru a organiza executarea codului la distanță în timpul unui atac, serverul necesită 4 GB spațiu liber pe disc și 8 GB RAM.

Exploatarea permite executarea oricărei comenzi shell cu drepturile oricărui utilizator din sistem, cu excepția utilizatorilor root și de sistem care nu au propriul lor subdirector în directorul „/ home”

Atacul este efectuat prin trimiterea unui mesaj de e-mail foarte mare, care include mai multe linii în antet, de aproximativ 4 GB și 576 MB.

La procesarea liniei respective în qmail-local O depășire a numărului întreg apare atunci când se încearcă livrarea unui mesaj către un utilizator local. O depășire de număr întreg duce apoi la o depășire a tamponului la copierea datelor și posibilitatea de a suprascrie paginile de memorie cu codul libc.

De asemenea, în procesul de apelare a qmesearch () în qmail-local, fișierul „.qmail-extension” este deschis prin funcția open (), ceea ce duce la lansarea efectivă a sistemului („. Qmail-extension”). Dar întrucât o parte a fișierului „extensie” este format pe baza adresei destinatarului (de exemplu, „localuser-extension @ localdomain”), atacatorii pot organiza începutul comenzii specificând utilizatorul „localuser-;” comanda; @localdomain »ca destinatar al mesajului.

Analiza codului a relevat, de asemenea, două vulnerabilități în patch-ul suplimentar verificarea qmail, care face parte din pachetul Debian.

  • Prima vulnerabilitate (CVE-2020-3811) permite ocolirea verificării adreselor de e-mail, iar a doua (CVE-2020-3812) duce la o scurgere locală de informații.
  • Cea de-a doua vulnerabilitate poate fi utilizată pentru a verifica prezența fișierelor și directoarelor pe sistem, inclusiv a celor disponibile doar pentru root (verificarea qmail începe cu privilegii root) printr-un apel direct către driverul local.

Un set de patch-uri a fost pregătit pentru acest pachet, eliminând vulnerabilitățile vechi din 2005 prin adăugarea de limite de memorie dură la codul funcției alloc () și noi probleme în qmail.

În plus, o versiune actualizată a patch-ului qmail a fost pregătită separat. Dezvoltatorii versiunii notqmail și-au pregătit patch-urile pentru a bloca problemele vechi și, de asemenea, au început să lucreze pentru a elimina toate posibilele revărsări întregi din cod.

Fuente: https://www.openwall.com/


Conținutul articolului respectă principiile noastre de etică editorială. Pentru a raporta o eroare, faceți clic pe aici.

Fii primul care comenteaza

Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.