prublemu
U codice chì chjama string_interpret_escape () attribuisce un buffer per u drenu basatu annantu à a dimensione attuale, è u punteru espostu finisce in una zona fora di i limiti di u buffer. In cunsiquenza, quandu pruvate di processà una stringa di input, una situazione si sviluppa quandu leghje dati da una zona fora di i limiti di u buffer attribuitu, è un tentativu di scrive una stringa senza scappata pò guidà à scrive oltre i limiti di u buffer.
In a cunfigurazione predeterminata, a vulnerabilità pò esse sfruttata mandendu dati apposta à SNI quandu stabilisce una cunnessione sicura à u servitore. U prublema pò ancu esse sfruttatu mudificà i valori peerdn in cunfigurazioni cunfigurate per l'autentificazione di u certificatu di u cliente o quandu importanu certificati. L'attaccu via SNI è peerdn hè pussibule partendu da a liberazione
Un prototipu di sfruttamentu hè statu preparatu per un attaccu via SNI, in esecuzione in architetture i386 è amd64 in sistemi Linux cù Glibc. U sfruttamentu utilizeghja a superposizione di dati nantu à l'area di u munzeddu, risultatu in a soprascrittura di a memoria in quale u nome di u schedariu di log hè almacenatu. U nome di u schedariu hè rimpiazzatu cù "/../../../../../../../../etc/passwd". Dopu, a variabile cù l'indirizzu di u mittente hè soprascritta, chì hè prima salvatu in u logu, chì permette di aghjunghje un novu utilizatore à u sistema.
L'aghjurnamenti di u pacchettu cù correzioni di vulnerabilità liberate da e distribuzioni
Cum'è una soluzione per bluccà a vulnerabilità, pudete disattivà u supportu TLS o aghjunghje
Sezione ACL "acl_smtp_mail":
deny condition = ${if eq{\\}{${substr{-1}{1}{$tls_in_sni}}}}
deny condition = ${if eq{\\}{${substr{-1}{1}{$tls_in_peerdn}}}}
Source: opennet.ru