Nedavno je Pavel Cheremushkin dKaspersky Lab je analizirao razne implementacije VNC sistema daljinskog pristupa (Računanje virtualne mreže) i identifikovao 37 ranjivosti uzrokovane problemima s memorijom.
Ranjivosti otkrivene u implementacijama VNC poslužitelja može iskoristiti samo ovjereni korisnik a napadi na ranjivosti u klijentskom kodu mogući su kada se korisnik poveže na poslužitelj koji kontrolira napadač.
Na blogu Kaspersky to komentirajuOve ranjivosti se mogu iskoristiti na sljedeći način:
VNC aplikacije sastoje se od dva dijela: servera instaliranog na računaru s kojim se zaposlenik povezuje na daljinu i klijenta koji radi na uređaju s kojeg se povezuju. Ranjivosti su mnogo rjeđe na strani servera, što je uvijek malo lakše i samim tim ima manje grešaka. Međutim, naši stručnjaci za CERT otkrili su pogreške u oba dijela aplikacija pod istragom, iako je u mnogim slučajevima napad na poslužitelj mogao biti nemoguć bez autorizacije.
O ranjivostima
Većina ranjivosti pronađena je u UltraVNC paketu, dostupno samo za Windows platformu. Ukupno u UltraVNC Utvrđene su 22 ranjivosti. 13 ranjivosti može dovesti do izvršenja koda na sistemu, 5 može procuriti sadržaj memorijskih područja, a 4 može dovesti do uskraćivanja usluge.
Sve ove ranjivosti su ispravljene u verziji 1.2.3.0.
Dok je u otvorenoj biblioteci LibVNC (LibVNCServer i LibVNCClient), koji se koristi u VirtualBoxu, Utvrđene su 10 ranjivosti. 5 ranjivosti (CVE-2018-20020, CVE-2018-20019, CVE-2018-15127, CVE-2018-15126, CVE-2018-6307) uzrokovane su preljevima međuspremnika i mogle bi dovesti do izvršenja koda. 3 ranjivosti mogu dovesti do curenja informacija; 2 do uskraćivanja usluge.
Programeri su već riješili sve probleme- Većina ispravka uključena je u izdanje LibVNCServer 0.9.12, ali zasad se svi popravci odražavaju samo u glavnoj grani i ažuriraju generirane distribucije.
U TightVNC 1.3 (testirano višestruko naslijeđenu granu), jer je trenutna verzija 2.x objavljena samo za Windows), Otkrivene su 4 ranjivosti. Tri problema (CVE-2019-15679, CVE-2019-15678, CVE-2019-8287) uzrokovana su preljevima međuspremnika u funkcijama InitialiseRFBConnection, rfbServerCutText i HandleCoRREBBP i mogla bi dovesti do izvršenja koda.
Problem (CVE-2019-15680) dovodi do uskraćivanja usluge. Uprkos činjenici da su programeri TightVNC prošle godine bili obaviješteni o problemima, ranjivosti ostaju neispravljene.
U paketu sa više platformi TurboVNC (vilica TightVNC 1.3, koja koristi libjpeg-turbo biblioteku), pronađena je samo jedna ranjivost (CVE-2019-15683), ali je opasno i ako postoji ovjereni pristup poslužitelju omogućava organiziranje izvođenja vašeg koda, tako da je kod preljeva međuspremnika moguće kontrolirati smjer povratka. Problem je riješen 23. kolovoza i ne pojavljuje se u trenutnoj verziji 2.2.3.
Ako želite znati više o tome detalje možete provjeriti u originalnom postu. Link je ovaj.
Što se tiče ažuriranja paketa može se izvršiti na sljedeći način.
libvncserver
Šifra biblioteke mogu ga preuzeti iz svog spremišta na GitHubu (link je ovaj). Da biste trenutno preuzeli najnoviju verziju, možete otvoriti terminal i u njega unijeti sljedeće:
wget https://github.com/LibVNC/libvncserver/archive/LibVNCServer-0.9.12.zip
Raspakirajte sa:
unzip libvncserver-LibVNCServer-0.9.12
U direktorij ulazite sa:
cd libvncserver-LibVNCServer-0.9.12
A paket gradite sa:
mkdir build cd build cmake .. cmake --build .
TurboVNC
Da biste se ažurirali na ovu novu verziju, samo preuzmite najnoviji stabilni paket, koji se mogu dobiti od sljedeći link.
Završeno preuzimanje paketa, sada ga možete jednostavno instalirati dvostrukim klikom na njemu i neka se softverski centar pobrine za instalaciju ili to mogu učiniti sa svojim željenim upraviteljem paketa ili s terminala.
Ovo drugo čine pozicioniranjem na mjestu na kojem se preuzet paket nalazi na njihovom terminalu i u njega moraju samo otkucati:
sudo dpkg -i turbovnc_2.2.3_amd64.deb