Fjärrskrivbord genom en angripares ögon

1. Introduktion

Företag som inte hade fjärråtkomstsystem på plats implementerade dem brådskande för ett par månader sedan. Alla administratörer var inte förberedda på en sådan "hetta", vilket resulterade i säkerhetsbortfall: felaktig konfiguration av tjänster eller till och med installation av föråldrade versioner av programvara med tidigare upptäckta sårbarheter. För vissa har dessa utelämnanden redan ökat, andra var mer lyckligt lottade, men alla borde definitivt dra slutsatser. Lojaliteten till distansarbete har ökat exponentiellt och allt fler företag accepterar distansarbete som ett acceptabelt format löpande.

Så det finns många alternativ för att tillhandahålla fjärråtkomst: olika VPN, RDS och VNC, TeamViewer och andra. Administratörer har mycket att välja mellan, baserat på detaljerna för att bygga ett företagsnätverk och enheter i det. VPN-lösningar är fortfarande de mest populära, men många små företag väljer RDS (Remote Desktop Services), de är enklare och snabbare att implementera.

I den här artikeln kommer vi att prata mer om RDS-säkerhet. Låt oss göra en kort översikt över kända sårbarheter, och även överväga flera scenarier för att starta en attack mot en nätverksinfrastruktur baserad på Active Directory. Vi hoppas att vår artikel kommer att hjälpa någon att arbeta med buggar och förbättra säkerheten.

2. Senaste RDS/RDP-sårbarheter

All programvara innehåller fel och sårbarheter som kan utnyttjas av angripare, och RDS är inget undantag. Microsoft har ofta rapporterat nya sårbarheter på sistone, så vi bestämde oss för att ge dem en kort översikt:

Denna sårbarhet utsätter användare som ansluter till en komprometterad server i riskzonen. En angripare kan få kontroll över en användares enhet eller få fotfäste i systemet för att få permanent fjärråtkomst.

Denna grupp av sårbarheter gör det möjligt för en oautentiserad angripare att på distans exekvera godtycklig kod på en server som kör RDS med hjälp av en specialgjord begäran. De kan också användas för att skapa maskar – skadlig programvara som på egen hand infekterar närliggande enheter i nätverket. Således kan dessa sårbarheter äventyra hela företagets nätverk, och endast snabba uppdateringar kan rädda dem.

Programvara för fjärråtkomst har fått ökad uppmärksamhet från både forskare och angripare, så vi kan snart höra om fler liknande sårbarheter.

Den goda nyheten är att inte alla sårbarheter har offentliga utnyttjande tillgängliga. Den dåliga nyheten är att det inte kommer att vara svårt för en angripare med expertis att skriva en exploatering för en sårbarhet baserat på beskrivningen, eller att använda tekniker som Patch Diffing (våra kollegor skrev om det i artikeln). Därför rekommenderar vi att du regelbundet uppdaterar programvaran och övervakar utseendet på nya meddelanden om upptäckta sårbarheter.

3. Attacker

Vi går vidare till den andra delen av artikeln, där vi kommer att visa hur attacker mot nätverksinfrastruktur baserad på Active Directory börjar.

De beskrivna metoderna är tillämpliga på följande modell av en angripare: en angripare som har ett användarkonto och har tillgång till Remote Desktop Gateway - en terminalserver (ofta är den tillgänglig, till exempel från ett externt nätverk). Genom att använda dessa metoder kommer angriparen att kunna fortsätta attacken mot infrastrukturen och konsolidera sin närvaro på nätverket.

Nätverkskonfigurationen i varje specifikt fall kan skilja sig, men de beskrivna teknikerna är ganska universella.

Exempel på att lämna en begränsad miljö och öka privilegier

När en angripare kommer åt Remote Desktop Gateway kommer sannolikt att stöta på någon form av begränsad miljö. När du ansluter till en terminalserver, startas en applikation på den: ett fönster för anslutning via Remote Desktop-protokollet för interna resurser, Explorer, office-paket eller annan programvara.

Angriparens mål kommer att vara att få tillgång till att utföra kommandon, det vill säga att starta cmd eller powershell. Flera klassiska Windows-sandlådeescape-tekniker kan hjälpa till med detta. Låt oss överväga dem ytterligare.

Alternativ 1. Angriparen har tillgång till anslutningsfönstret för fjärrskrivbord i gatewayen för fjärrskrivbord:

Fjärrskrivbord genom en angripares ögon

Menyn "Visa alternativ" öppnas. Alternativ visas för att manipulera anslutningskonfigurationsfiler:

Fjärrskrivbord genom en angripares ögon

Från det här fönstret kan du enkelt komma åt Utforskaren genom att klicka på någon av knapparna "Öppna" eller "Spara":

Fjärrskrivbord genom en angripares ögon

Utforskaren öppnas. Dess "adressfält" gör det möjligt att starta tillåtna körbara filer, samt lista filsystemet. Detta kan vara användbart för en angripare i fall där systemenheter är dolda och inte kan nås direkt:

Fjärrskrivbord genom en angripares ögon

Demo video

Ett liknande scenario kan återskapas, till exempel när du använder Excel från Microsoft Office-paketet som fjärrprogramvara.

Demo video

Dessutom, glöm inte makron som används i denna kontorssvit. Våra kollegor tittade på problemet med makrosäkerhet i detta artikeln.

Alternativ 2. Med samma ingångar som i den tidigare versionen startar angriparen flera anslutningar till fjärrskrivbordet under samma konto. När du återansluter stängs den första och ett fönster med ett felmeddelande visas på skärmen. Hjälpknappen i detta fönster kommer att anropa Internet Explorer på servern, varefter angriparen kan gå till Explorer.

Demo video

Alternativ 3. Om begränsningar för att starta körbara filer är konfigurerade kan en angripare stöta på en situation där grupppolicyer förbjuder administratören att köra cmd.exe.

Det finns ett sätt att komma runt detta genom att köra en bat-fil på fjärrskrivbordet med innehåll som cmd.exe /K . Ett fel vid start av cmd och ett lyckat exempel på att köra en bat-fil visas i figuren nedan.

Fjärrskrivbord genom en angripares ögon

Alternativ 4. Att förbjuda lansering av applikationer som använder svarta listor baserat på namnet på körbara filer är inte ett universalmedel, de kan kringgås.

Tänk på följande scenario: vi har inaktiverat åtkomst till kommandoraden, förhindrat lanseringen av Internet Explorer och PowerShell med hjälp av grupppolicyer. Angriparen försöker ropa på hjälp – inget svar. Försöker starta powershell genom snabbmenyn i ett modalt fönster, anropad med Shift-tangenten nedtryckt - ett meddelande som indikerar att start är förbjudet av administratören. Försöker starta powershell genom adressfältet - återigen inget svar. Hur går man förbi begränsningen?

Det räcker med att kopiera powershell.exe från mappen C:WindowsSystem32WindowsPowerShellv1.0 till användarmappen, ändra namnet till något annat än powershell.exe, så visas startalternativet.

Som standard, när du ansluter till ett fjärrskrivbord, tillhandahålls åtkomst till klientens lokala diskar, varifrån en angripare kan kopiera powershell.exe och köra den efter att ha bytt namn på den.

Demo video

Vi har bara gett ett fåtal sätt att kringgå begränsningarna; du kan komma på många fler scenarier, men de har alla en sak gemensamt: tillgång till Windows Explorer. Det finns många applikationer som använder vanliga Windows-filmanipuleringsverktyg, och när de placeras i en begränsad miljö kan liknande tekniker användas.

4. Rekommendationer och slutsats

Som vi kan se finns det utrymme för attackutveckling även i en begränsad miljö. Däremot kan du göra livet svårare för angriparen. Vi ger allmänna rekommendationer som kommer att vara användbara både i de alternativ vi har övervägt och i andra fall.

  • Begränsa programstarter till svart/vita listor med hjälp av grupppolicyer.
    I de flesta fall är det dock fortfarande möjligt att köra koden. Vi rekommenderar att du bekantar dig med projektet LOLBAS, för att ha en idé om odokumenterade sätt att manipulera filer och exekvera kod på systemet.
    Vi rekommenderar att du kombinerar båda typerna av begränsningar: till exempel kan du tillåta lansering av körbara filer signerade av Microsoft, men begränsa lanseringen av cmd.exe.
  • Inaktivera Internet Explorer-inställningsflikarna (kan göras lokalt i registret).
  • Inaktivera Windows inbyggd hjälp via regedit.
  • Inaktivera möjligheten att montera lokala diskar för fjärranslutningar om en sådan begränsning inte är kritisk för användarna.
  • Begränsa åtkomsten till lokala enheter på fjärrdatorn och lämna endast åtkomst till användarmappar.

Vi hoppas att du tyckte att det åtminstone var intressant, och maximalt kommer den här artikeln att hjälpa till att göra ditt företags distansarbete säkrare.

Källa: will.com

Lägg en kommentar