AnvÀndning av PowerShell för att höja privilegierna för lokala konton.

AnvÀndning av PowerShell för att höja privilegierna för lokala konton.

Privilegiumshöjning Ă€r en process dĂ€r en angripare utnyttjar sina nuvarande kontorĂ€ttigheter för att fĂ„ ytterligare, vanligtvis högre, Ă„tkomstnivĂ„er i systemet. Även om privilegiumshöjning kan vara resultatet av utnyttjande av zero-day sĂ„rbarheter, eller av skickliga hackers som genomför riktade attacker, eller av vĂ€lmaskerad skadlig programvara, sker det oftast pĂ„ grund av felkonfiguration av datorn eller kontot. Genom att vidareutveckla attacken anvĂ€nder angripare en rad separata sĂ„rbarheter, vilket sammantaget kan leda till en katastrofal datalĂ€ckage.

Varför ska anvÀndare inte ha lokala administratörsrÀttigheter?

Som sÀkerhetsspecialist kan det tyckas uppenbart att anvÀndare inte bör ha lokala administratörsrÀttigheter, eftersom detta:

  • Gör deras konton mer sĂ„rbara för olika attacker
  • Gör dessa attacker mycket mer allvarliga

TyvÀrr Àr detta fortfarande en mycket kontroversiell frÄga för mÄnga organisationer och Ätföljs ibland av livliga diskussioner (se till exempel min chef sÀger att alla anvÀndare borde vara lokala administratörer). Utan att gÄ in pÄ detaljer i denna diskussion anser vi att en angripare har fÄtt lokala administratörsrÀttigheter pÄ det system som undersöks: antingen genom en exploatering eller dÀrför att maskinerna inte var korrekt skyddade.

Steg 1. OmvÀnd DNS-namnupplösning via PowerShell

Som standard Ă€r PowerShell installerat pĂ„ mĂ„nga lokala arbetsstationer och pĂ„ de flesta Windows-servrar. Även om det ibland överdrivet beskrivs som ett otroligt anvĂ€ndbart verktyg för automatisering och hantering, kan det pĂ„ samma sĂ€tt bli nĂ€stan osynligt fileless-malware (ett hackningsprogram som inte lĂ€mnar nĂ„gra attackeringsspĂ„r).

I vÄrt fall börjar angriparen genomföra nÀtverksrekognosering med hjÀlp av ett PowerShell-skript, som systematiskt gÄr igenom nÀtets IP-adressutrymme för att försöka avgöra om den aktuella IP-adressen kan lösas till en nod, och om sÄ Àr fallet, vad nodens nÀtverksnamn Àr.
Det finns mĂ„nga sĂ€tt att utföra denna uppgift, men anvĂ€ndning av cmdlet Get-ADComputer — ett pĂ„litligt alternativ, eftersom det ger en verkligt rik uppsĂ€ttning data om varje nod:

 import-module activedirectory Get-ADComputer -property * -filter { ipv4address -eq '10.10.10.10'}

Om hastigheten i stora nÀtverk orsakar problem kan en omvÀnd DNS-anrop anvÀndas:

[System.Net.Dns]::GetHostEntry('10.10.10.10').HostName

AnvÀndning av PowerShell för att höja privilegierna för lokala konton.

Denna metod för att lista noder i nÀtverket Àr mycket populÀr, eftersom de flesta nÀtverk inte anvÀnder en sÀkerhetsmodell med noll förtroende och inte spÄrar interna DNS-frÄgor för misstÀnkta aktivitetstoppar.

Steg 2: VÀlj mÄl

Slutresultatet av detta steg Àr att fÄ en lista över vÀrdnamn för servrar och arbetsstationer som kan anvÀndas för att fortsÀtta attacken.

AnvÀndning av PowerShell för att höja privilegierna för lokala konton.

Med tanke pÄ namnet verkar servern 'HUB-FILER' vara ett vÀrt mÄl, eftersom filservrar vanligtvis ackumulerar en stor mÀngd nÀtverksmappar och överflödigt Ätkomst frÄn en stor krets av anvÀndare över tid.

Genom att titta med Windows Utforskaren kan vi avgöra om det finns en öppen delad mapp, men vÄrt nuvarande konto kan inte fÄ tillgÄng till den (antagligen har vi rÀttigheter endast för listning).

Steg 3: Granska ACL

Nu kan vi pÄ vÄr vÀrd HUB-FILER och den mÄlade delade mappen share köra ett PowerShell-skript för att fÄ en lista över ACL. Vi kan göra detta frÄn den lokala maskinen, eftersom vi redan har rÀttigheter som lokal administratör:

(get-acl hub-filershare).access | ft IdentityReference,FileSystemRights,AccessControlType,IsInherited,InheritanceFlags –auto

Resultat av utförande:

AnvÀndning av PowerShell för att höja privilegierna för lokala konton.

Av detta ser vi att gruppen DomÀnanvÀndare har tillgÄng endast för listning, men gruppen Helpdesk har Àven rÀtt att Àndra.

Steg 4: Identifiering av Konton

Kör Get-ADGroupMember, sÄ kan vi fÄ alla medlemmar i denna grupp:

Get-ADGroupMember -identity Helpdesk

AnvÀndning av PowerShell för att höja privilegierna för lokala konton.

I denna lista ser vi datorkontot som vi redan har identifierat och fÄtt Ätkomst till:

AnvÀndning av PowerShell för att höja privilegierna för lokala konton.

Steg 5: AnvÀnd PSExec för att arbeta frÄn datorns konto

PsExec frÄn Microsoft Sysinternals gör det möjligt att utföra kommandon i kontexten av systemkontot SYSTEM@HUB-SHAREPOINT, som vi vet Àr medlem i den mÄlgrupp Helpdesk. Det vill sÀga, vi behöver bara köra:

PsExec.exe -s -i cmd.exe

Men nu har du full tillgÄng till mÄlmappen HUB-FILERshareHR, eftersom du arbetar i kontexten av datorkontot HUB-SHAREPOINT. Med denna Ätkomst kan data kopieras till en bÀrbar lagringsenhet eller pÄ annat sÀtt extraheras och överföras över nÀtverket.

Steg 6: UpptÀckten av denna attack

Den specifika sÄrbarheten i rÀttighetsinstÀllningar för konton (datorer som fÄr Ätkomst till delade nÀtverksmappar istÀllet för anvÀndarkonton eller tjÀnstekonton) kan upptÀckas. Dock Àr det mycket svÄrt att göra utan rÀtt verktyg.

För att upptÀcka och förhindra denna typ av attacker kan vi anvÀnda DatAdvantage för att identifiera grupper med datoranvÀndarkonton i dem, och sedan stÀnga Ätkomsten till dem. DatAlert gÄr ett steg lÀngre och möjliggör att skapa en avisering specifikt för ett sÄdant scenario.

PÄ skÀrmdumpen nedan visas en anvÀndaravisering som kommer att aktiveras vid varje Ätkomst av ett datoranvÀndarkonto till data pÄ den övervakade servern.

AnvÀndning av PowerShell för att höja privilegierna för lokala konton.

Följande steg med hjÀlp av PowerShell

Vill du veta mer? AnvÀnd avkodningen "blog" för gratis tillgÄng till hela videokursen PowerShell och Grunderna i Active Directory.

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster