Vzdialená plocha očami útočníka

1. úvod

Spoločnosti, ktoré nemali zavedené systémy vzdialeného prístupu, ich pred pár mesiacmi urýchlene nasadili. Nie všetci správcovia boli pripravení na takéto „horúčavy“, ktoré viedli k bezpečnostným výpadkom: nesprávna konfigurácia služieb alebo dokonca inštalácia zastaraných verzií softvéru s predtým objavenými zraniteľnosťami. Pre niektorých sa tieto opomenutia už stali bumerangem, iní mali viac šťastia, no závery by si mal určite vyvodiť každý. Lojalita k práci na diaľku sa exponenciálne zvýšila a stále viac spoločností akceptuje prácu na diaľku ako prijateľný formát priebežne.

Existuje teda veľa možností na poskytovanie vzdialeného prístupu: rôzne siete VPN, RDS a VNC, TeamViewer a ďalšie. Správcovia majú z čoho vyberať na základe špecifík budovania podnikovej siete a zariadení v nej. Riešenia VPN zostávajú najobľúbenejšie, avšak mnohé malé spoločnosti si vyberajú služby RDS (Remote Desktop Services), sú jednoduchšie a rýchlejšie sa nasadzujú.

V tomto článku si povieme viac o zabezpečení RDS. Urobme si stručný prehľad známych zraniteľností a zvážme aj niekoľko scenárov spustenia útoku na sieťovú infraštruktúru založenú na Active Directory. Dúfame, že náš článok pomôže niekomu pracovať na chybách a zlepšiť bezpečnosť.

2. Nedávne zraniteľnosti RDS/RDP

Akýkoľvek softvér obsahuje chyby a zraniteľné miesta, ktoré môžu útočníci zneužiť, a RDS nie je výnimkou. Microsoft v poslednej dobe často hlási nové zraniteľnosti, preto sme sa rozhodli poskytnúť im stručný prehľad:

Táto zraniteľnosť vystavuje používateľov, ktorí sa pripájajú k napadnutému serveru, riziku. Útočník môže získať kontrolu nad zariadením používateľa alebo získať oporu v systéme, aby mal trvalý vzdialený prístup.

Táto skupina zraniteľností umožňuje neoverenému útočníkovi na diaľku spustiť ľubovoľný kód na serveri so systémom RDS pomocou špeciálne pripravenej požiadavky. Môžu byť tiež použité na vytváranie červov - malvéru, ktorý nezávisle infikuje susedné zariadenia v sieti. Tieto zraniteľnosti teda môžu ohroziť sieť celej spoločnosti a zachrániť ich môžu iba včasné aktualizácie.

Softvér na vzdialený prístup si získal zvýšenú pozornosť zo strany výskumníkov aj útočníkov, takže možno čoskoro budeme počuť o ďalších podobných zraniteľnostiach.

Dobrou správou je, že nie všetky zraniteľnosti majú dostupné verejné exploity. Zlou správou je, že pre útočníka s odbornými znalosťami nebude ťažké napísať exploit na zraniteľnosť na základe popisu alebo pomocou techník ako Patch Diffing (naši kolegovia o tom písali v článok). Preto odporúčame pravidelne aktualizovať softvér a sledovať výskyt nových správ o objavených zraniteľnostiach.

3. Útoky

Prechádzame k druhej časti článku, kde si ukážeme, ako začínajú útoky na sieťovú infraštruktúru založenú na Active Directory.

Popísané metódy sú použiteľné pre nasledujúci model útočníka: útočník, ktorý má používateľské konto a má prístup k bráne vzdialenej plochy – terminálovému serveru (často je prístupný napr. z externej siete). Použitím týchto metód bude útočník schopný pokračovať v útoku na infraštruktúru a upevniť svoju prítomnosť v sieti.

Konfigurácia siete v každom konkrétnom prípade sa môže líšiť, ale opísané techniky sú dosť univerzálne.

Príklady opustenia obmedzeného prostredia a zvýšenia privilégií

Pri prístupe k bráne vzdialenej pracovnej plochy sa útočník pravdepodobne stretne s nejakým druhom obmedzeného prostredia. Keď sa pripojíte k terminálovému serveru, spustí sa na ňom aplikácia: okno na pripojenie cez protokol vzdialenej pracovnej plochy pre interné zdroje, prieskumníka, kancelárske balíky alebo akýkoľvek iný softvér.

Cieľom útočníka bude získať prístup k vykonávaniu príkazov, teda spustiť cmd alebo powershell. Pomôcť s tým môže niekoľko klasických únikových techník Windows sandbox. Zvážme ich ďalej.

Možnosť 1. Útočník má prístup k oknu pripojenia vzdialenej plochy v rámci brány vzdialenej plochy:

Vzdialená plocha očami útočníka

Otvorí sa ponuka „Zobraziť možnosti“. Zobrazia sa možnosti na manipuláciu so súbormi konfigurácie pripojenia:

Vzdialená plocha očami útočníka

Z tohto okna môžete jednoducho prejsť do Prieskumníka kliknutím na ľubovoľné z tlačidiel „Otvoriť“ alebo „Uložiť“:

Vzdialená plocha očami útočníka

Otvorí sa Prieskumník. Jeho „adresný riadok“ umožňuje spúšťať povolené spustiteľné súbory, ako aj zoznam súborového systému. To môže byť užitočné pre útočníka v prípadoch, keď sú systémové jednotky skryté a nemožno k nim priamo pristupovať:

Vzdialená plocha očami útočníka

Demo video

Podobný scenár je možné reprodukovať napríklad pri použití Excelu z balíka Microsoft Office ako vzdialeného softvéru.

Demo video

Okrem toho nezabudnite na makrá použité v tomto kancelárskom balíku. Naši kolegovia sa v tomto pozreli na problém makrobezpečnosti článok.

Možnosť 2. Pomocou rovnakých vstupov ako v predchádzajúcej verzii útočník spustí niekoľko pripojení k vzdialenej ploche pod rovnakým účtom. Keď sa znova pripojíte, prvý sa zatvorí a na obrazovke sa zobrazí okno s upozornením na chybu. Tlačidlo pomocníka v tomto okne zavolá Internet Explorer na serveri, po ktorom môže útočník prejsť do Prieskumníka.

Demo video

Možnosť 3. Ak sú nakonfigurované obmedzenia na spúšťanie spustiteľných súborov, útočník sa môže dostať do situácie, keď skupinové politiky zakazujú správcovi spustiť cmd.exe.

Existuje spôsob, ako to obísť spustením súboru bat na vzdialenej ploche s obsahom ako cmd.exe /K <príkaz>. Chyba pri spustení cmd a úspešný príklad spustenia súboru bat je znázornený na obrázku nižšie.

Vzdialená plocha očami útočníka

Možnosť 4. Zákaz spúšťania aplikácií pomocou čiernych zoznamov na základe názvov spustiteľných súborov nie je všeliekom, dá sa obísť.

Uvažujme o nasledujúcom scenári: zakázali sme prístup k príkazovému riadku, zabránili spusteniu Internet Explorera a PowerShellu pomocou skupinových zásad. Útočník sa pokúša zavolať pomoc – žiadna odpoveď. Pokus o spustenie powershell cez kontextovú ponuku modálneho okna vyvolaného stlačením klávesu Shift - hlásenie oznamujúce, že spustenie je zakázané administrátorom. Pokúsi sa spustiť powershell cez panel s adresou - opäť žiadna odpoveď. Ako obísť obmedzenie?

Powershell.exe stačí skopírovať z priečinka C:WindowsSystem32WindowsPowerShellv1.0 do používateľského priečinka, zmeniť názov na iný ako powershell.exe a zobrazí sa možnosť spustenia.

Pri pripájaní k vzdialenej ploche je štandardne zabezpečený prístup k lokálnym diskom klienta, odkiaľ môže útočník skopírovať powershell.exe a spustiť ho po premenovaní.

Demo video

Uviedli sme len niekoľko spôsobov, ako obísť obmedzenia; môžete prísť s mnohými ďalšími scenármi, ale všetky majú jednu spoločnú vec: prístup k Prieskumníkovi systému Windows. Existuje mnoho aplikácií, ktoré používajú štandardné nástroje na manipuláciu so súbormi systému Windows, a keď sú umiestnené v obmedzenom prostredí, možno použiť podobné techniky.

4. Odporúčania a záver

Ako vidíme, aj v obmedzenom prostredí je priestor na rozvoj útoku. Útočníkovi však môžete skomplikovať život. Poskytujeme všeobecné odporúčania, ktoré budú užitočné v možnostiach, ktoré sme zvažovali, aj v iných prípadoch.

  • Obmedzte spúšťanie programu na čiernu/bielu listinu pomocou skupinových zásad.
    Vo väčšine prípadov však zostáva možnosť spustiť kód. Odporúčame vám oboznámiť sa s projektom LOLBAS, aby ste mali predstavu o nezdokumentovaných spôsoboch manipulácie so súbormi a spúšťania kódu v systéme.
    Odporúčame kombinovať oba typy obmedzení: môžete napríklad povoliť spustenie spustiteľných súborov podpísaných spoločnosťou Microsoft, ale obmedziť spustenie súboru cmd.exe.
  • Zakázať karty nastavení programu Internet Explorer (dá sa to urobiť lokálne v registri).
  • Zakázať vstavanú pomoc systému Windows cez regedit.
  • Zakážte možnosť pripojiť lokálne disky pre vzdialené pripojenia, ak takéto obmedzenie nie je pre používateľov kritické.
  • Obmedzte prístup k lokálnym jednotkám vzdialeného počítača a ponechajte prístup len k užívateľským priečinkom.

Dúfame, že vás to zaujalo a maximálne vám tento článok pomôže zvýšiť bezpečnosť práce na diaľku vašej spoločnosti.

Zdroj: hab.com

Pridať komentár