Otkrivene brojne ranjivosti u popularnim RDP klijentima

Istraživači iz Check Pointa su nedavno otkrili 25 ranjivosti, od kojih se 16 smatraju kritičnim. Ranjivosti su otkrivene i u open-source RDP klijentima i u Microsoftovom klijentu, a napadaču omogućavaju da promeni smer komunikacije i da se sa malicioznog servera poveže sa klijent serverom.

Remote Desktop Protocol (RDP) služi za povezivanje sa računarom sa udaljene lokacije. Uglavnom ga koriste IT administratori i tehnički korisnici kako bi se sa udaljene lokacije povezali sa uređajem u mreži. Protokol je prvobitno razvio Microsoft za Windows OS, a kasnije su se pojavili i open-source varijante za Linux, Unix itd.

Istraživači su analizirali 3 popularna i najčešće korišćena RDP klijenta – FreeRDP, rdesktop i Windows built-in RDP klijent (mstsc). U njima su pronašli 25 ranjivosti, od kojih neke omogućavaju malicioznom RDP serveru da sa udaljene lokacije preuzme kontrolu nad računarima koji imaju klijent RDP softver.

Scenario napada

Slika 1. Scenario napada za RDP protokol. Izvor slike: Check Point.

Postoji nekoliko scenarija u kojima maliciozni haker može dobiti viši nivo odobrenja putem ovog napada, odnosno mogućnost lateralne kretnje u organizaciji. Na primer:

  • Napad na člana IT tima koji se povezuje sa zaraženom radnom stanicom u korporativnoj mreži, čime napadač dobija veće privilegije i širi pristup mrežnim sistemima.
  • Napad na malver istraživača koji se povezuje sa udaljenom sandbox virtuelnom mašinom koja sadrži testirani malver. To omogućava malveru da pobegne iz sandboxa i dođe u korporativnu mrežu.

FreeRDP je najpopularniji i najkompletniji open-source RDP klijent na Githubu. Kod njega je pronađeno 6 ranjivosti, od čega su 5 kritične i imaju ozbiljne probleme sa memorijom zbog kojih napadač može da izvrši kod na klijent računaru sa udaljene lokacije.

Video demonstracija napada - FreeRDP

Najviše ranjivosti je otkriveno kod starijeg open-source RDP klijenta rdesktop, koji se se po default podešavanjima dobija u Kali Linux distribuciji. Reč je o 19 ranjivosti, od kojih 11 dozvoljava malicioznom RDP serveru da izvrši kod na klijent računaru.

U Windows built-in RDP klijentu (mstsc) nisu pronađene ranjivosti zbog kojih bi napadač sa udaljene lokacije mogao da izvrši kod, ali su istraživači otkrili nekoliko interesantnih napadačkih scenarija do kojih može doći zbog toga što klijent i server dele clipboard podatke. Radi se o tome da klijent može da pristupi i modifikuje clipboard podatke na serverskoj strani, i obrnuto.

Deljenje Clipboarda

Slika 2. Arhitektura deljenja clipboarda u Microsoft RDP klijentu. Izvor slike: Check Point.

Prvi scenario napada: Maliciozni RDP server može da “prisluškuje” clipboard klijenta. To nije propust, već ugrađena karakteristika. Na primer, ako klijent lokalno kopira admin lozinku, ona se pojavljuje i na serveru.

Drugi scenario napada: Maliciozni RDP server može da modifikuje sav clipboard sadržaj koji klijent koristi, čak i ako klijent ne zada komandu “copy” u RDP prozoru. Ukoliko kliknete “paste” dok je RDP konekcija otvorena, podložni ste ovakvoj vrsti napada.

Povrh svega, u drugom video klipu, istraživači su demonstrirali kako clipboard napad koji se izvodi preko Microsoft RDP softvera može čak da dozvoli malicioznom RDP serveru da prevari sistem klijenta da sačuva malver u Windows startup folderu, koji se onda automatski izvršava prilikom svakog podizanja sistema. Ova ranjivost je prijavljena developerima još u oktobru 2018.

Video demonstracija napada - Windows RDP

FreeRDP je nakon mesec dana od saznanja za propuste napravio patch u v2.0.0-rc4 izdanju. Rdesktop je isto to uradio u v1.8.4 sredinom januara. Microsoft je odlučio da ne uradi ništa, već je kao meru zaštite naveo da korisnici onemoguće opciju deljenja clipboarda (koja je po default podešavanjima omogućena).

Preporuke za zaštitu

  • Ako koristite FreeRDP ili rdesktop, ažurirajte na najnoviju dostupnu verziju.
  • Ako koristite Microsoft RDP klijent (mstsc), onemogućite dvosmerno deljenje clipboarda preko RDP-a.
  • Primenite sve dostupne bezbednosne mere, kako na klijente, tako i na servere uključene u RDP komunikaciju.

Izvor: The Hacker News i Check Point