
Escalarea privilegiilor este utilizarea de către atacatori a drepturilor actuale ale contului pentru a obține acces suplimentar, de obicei de nivel superior în sistem. Deși escalarea privilegiilor poate rezulta din exploatarea vulnerabilităților de tip zero-day, din atacurile unor hackeri experimentați sau dintr-un malware bine camuflat, în cele mai multe cazuri aceasta apare din cauza configurării incorecte a computerului sau a contului. Continuând atacul, atacatorii utilizează o serie de vulnerabilități separate, ceea ce poate duce la o scurgere de date catastrofală.
De ce utilizatorii nu ar trebui să aibă drepturi de administrator local?
Dacă sunteți un specialist în securitate, poate părea evident că utilizatorii nu ar trebui să aibă drepturi de administrator local, deoarece aceasta:
- Îi face conturile mai vulnerabile la diferite atacuri
- Face aceste atacuri mult mai grave
Din păcate, pentru multe organizații, aceasta rămâne în continuare o problemă foarte controversată, însoțită adesea de discuții aprinse (vezi, de exemplu, ). Fără a intra în detaliile acestei discuții, considerăm că atacatorul a obținut drepturi de administrator local pe sistemul analizat: fie printr-un exploit, fie din cauza faptului că mașinile nu au fost protejate corespunzător.
Pasul 1. Rezolvarea inversă a numelui DNS prin PowerShell
Implicit, PowerShell este instalat pe multe stații de lucru locale și pe majoritatea serverelor Windows. Deși nu fără exagerare, este considerat un instrument extraordinar de util pentru automatizare și gestionare, în aceeași măsură este capabil să devină aproape invizibilă (un program de hacking care nu lasă urme ale atacului).
În cazul nostru, atacatorul începe să efectueze recunoașterea rețelei folosind un script PowerShell, iterând consecutiv prin spațiul de adrese IP ale rețelei, încercând să determine dacă un anumit IP este rezolvat la un nod și, dacă da, care este numele de rețea al acelui nod.
Există multe modalități de a îndeplini această sarcină, dar utilizarea comenzii ADComputer este o opțiune de încredere, deoarece oferă într-adevăr un set bogat de date despre fiecare nod:
import-module activedirectory Get-ADComputer -property * -filter { ipv4address -eq ‘10.10.10.10’}Dacă viteza de lucru în rețele mari cauzează probleme, se poate folosi apelul de sistem DNS invers:
[System.Net.Dns]::GetHostEntry(‘10.10.10.10’).HostName
Această metodă de enumerare a nodurilor în rețea este foarte populară, deoarece majoritatea rețelelor nu folosesc un model de securitate cu zero încredere și nu monitorizează cererile DNS interne pentru activități suspecte.
Pasul 2: Alegerea țintei
Rezultatul final al acestui pas este obținerea unei liste cu numele gazdelor serverelor și stațiilor de lucru, care poate fi folosită pentru continuarea atacului.

Judecând după nume, serverul ‘HUB-FILER’ pare o țintă potrivită, deoarece în timp serverele de fișiere acumulează în general un număr mare de foldere de rețea și acces excesiv din partea unui număr prea mare de persoane.
Vizualizarea prin Windows Explorer ne permite să determinăm dacă există un folder partajat deschis, dar contul nostru curent nu poate avea acces (probabil că avem doar drepturi de listare).
Pasul 3: Studiul ACL
Acum, pe gazda noastră HUB-FILER și pe folderul partajat țintă, putem rula un script PowerShell pentru a obține lista ACL. Putem face acest lucru de pe mașina locală, deoarece avem deja drepturi de administrator local:
(get-acl hub-filershare).access | ft IdentityReference,FileSystemRights,AccessControlType,IsInherited,InheritanceFlags –autoRezultatul execuției:

Din acest lucru vedem că grupul Utilizatori Domeniu are acces doar la listare, dar grupul Helpdesk are și drepturi de modificare.
Pasul 4: Identificarea Conturilor
Rulând , vom putea obține toți membrii acestui grup:
Get-ADGroupMember -identity Helpdesk
În această listă vedem contul de computer pe care l-am identificat deja și la care am obținut deja acces:

Pasul 5: Folosim PSExec pentru a lucra din contul de computer
de la Microsoft Sysinternals permite executarea comenzilor în contextul contului de sistem SYSTEM@HUB-SHAREPOINT, care, după cum știm, este membru al grupului țintă Helpdesk. Cu alte cuvinte, trebuie doar să executăm:
PsExec.exe -s -i cmd.exeÎnsă, mai departe, aveți acces complet la folderul țintă HUB-FILERshareHR, deoarece lucrați în contextul contului de computer HUB-SHAREPOINT. Cu acest acces, datele pot fi copiate pe un dispozitiv de stocare portabil sau extrase și transmise prin rețea.
Pasul 6: Detectarea acestei atacuri
Această vulnerabilitate specifică a configurării drepturilor conturilor (conturi de computere care accesează folderele comune de rețea în loc de conturi de utilizator sau conturi de serviciu) poate fi detectată. Cu toate acestea, fără instrumentele corecte, este foarte dificil de realizat acest lucru.
Pentru a detecta și preveni această categorie de atacuri, putem folosi pentru a identifica grupurile cu conturi de computere în ele, apoi a restricționa accesul la acestea. merge mai departe și permite crearea unei notificări special pentru un astfel de scenariu.
În captura de ecran de mai jos este prezentată o notificare personalizată, care va fi activată la fiecare acces al unui cont de computer la datele de pe serverul monitorizat.

Următorii pași cu ajutorul PowerShell
Doriți să aflați mai multe? Utilizați codul de deblocare „blog” pentru acces gratuit la întregul .
Sursa: habr.com
