
Am efectuat teste de penetrare folosind și l-am folosit pentru a extrage informații despre utilizatori din Active Directory (AD). La vremea respectivă, am pus accent pe colectarea de informații despre apartenența la grupuri de securitate și apoi am folosit aceste informații pentru a naviga prin rețea. Oricum, AD conține date confidențiale despre angajați, iar unele dintre acestea nu ar trebui să fie accesibile tuturor în organizație. De fapt, în sistemele de fișiere Windows există o problemă echivalentă , care poate fi folosită atât de atacatori interni, cât și externi.
Dar înainte de a discuta despre problemele de confidențialitate și modul în care acestea pot fi rezolvate, să ne uităm la datele stocate în AD.
Active Directory este Facebook-ul corporativ
Dar în acest caz, ai făcut deja prietenie cu toată lumea! S-ar putea să nu afli despre filmele, cărțile și restaurantele preferate ale colegilor tăi, dar AD conține informații de contact sensibile
și alte câmpuri care pot fi utilizate de hackeri și chiar de insideri fără abilități tehnice deosebite.
Adminii de sistem sunt cu siguranță familiarizați cu captura de ecran de mai jos. Aceasta este interfața Active Directory Users and Computers (ADUC), unde aceștia setează și editează informațiile despre utilizatori și îi alocă în grupurile corespunzătoare.

AD conține câmpuri cu numele angajatului, adresa și numărul de telefon, astfel încât seamănă cu un director telefonic. Dar există mult mai mult! Pe alte tab-uri există, de asemenea, adresa de email și adresa web, managerul direct și note.
Trebuie ca toată lumea din organizație să vadă aceste informații, mai ales în epoca , când fiecare detaliu nou face căutarea de informații suplimentare și mai ușoară?
Desigur că nu! Problema se înrăutățește atunci când datele conducerii superioare a companiei sunt accesibile tuturor angajaților.
PowerView pentru toți
Aici intervine PowerView. Oferă o interfață PowerShell foarte prietenoasă pentru funcțiile Win32 de bază (și complicate) care accesează AD. Pe scurt:
acesta face obținerea câmpurilor din AD la fel de simplă ca introducerea unui comenzi foarte scurte.
Să luăm un exemplu de colectare a informațiilor despre angajata Cruella Deville, care este unul dintre liderii companiei. Pentru aceasta, vom folosi cmdlet-ul PowerView get-NetUser:

Instalarea PowerView nu este o problemă serioasă – asigurați-vă singuri pe pagina . Și, mai important, nu aveți nevoie de privilegii ridicate pentru a executa multe comenzi PowerView, cum ar fi get-NetUser. Astfel, un angajat motivat, dar nu foarte tehnic, poate începe să exploreze AD fără prea multe eforturi.
Din captura de ecran de mai sus, se poate observa că un insider poate afla rapid o mulțime de lucruri noi despre Cruella. Ați observat și că în câmpul „info” sunt dezvăluite informații despre obiceiurile personale și parola utilizatorului?
Aceasta nu este o probabilitate teoretică. Din am aflat că ei scanează AD pentru a căuta parole în format necriptat, iar adesea aceste încercări, din păcate, au succes. Ei știu că companiile tratează cu neglijență informațiile din AD și, în general, nu sunt conștienți de următoarea temă – permisiunile în AD.
În Active Directory există propriile ACL
Interfața AD Users and Computers permite stabilirea permisiunilor pentru obiectele AD. În AD există ACL, iar administratorii pot acorda sau refuza accesul prin intermediul acestora. Trebuie să faceți clic pe „Advanced” în meniul ADUC View, apoi, atunci când deschideți utilizatorul, veți vedea tab-ul „Security”, unde stabiliți ACL.
În scenariul meu cu Cruella, nu am vrut ca toți utilizatorii autentificați (Authenticated Users) să poată vedea informațiile ei personale, așa că le-am interzis accesul la citire:

Și acum un utilizator obișnuit va vedea acest lucru dacă va încerca Get-NetUser în PowerView:

Am reușit să ascund informațiile utile de privirile curioase. Pentru a menține accesul la acestea pentru utilizatorii relevanți, am creat un alt ACL, pentru a permite membrilor grupului VIP (Cruella și ceilalți colegi de rang înalt) să acceseze aceste date confidențiale. Cu alte cuvinte, am implementat permisiuni AD bazate pe un model de rol, făcând datele sensibile inaccesibile pentru majoritatea angajaților, inclusiv insideri.
Cu toate acestea, puteți face ca apartenența la grup să fie invizibilă pentru utilizatori, stabilind corespunzător ACL pentru obiectul grupului în AD. Acest lucru va ajuta din punct de vedere al confidențialității și securității.
În propria mea Am arătat cum se poate naviga în sistem, examinând apartenența la grupuri folosind PowerViews Get-NetGroupMember. În scenariul meu, am restricționat accesul la citire la apartenența la un anumit grup. Observați rezultatul execuției comenzii înainte și după modificări:

Am reușit să ascund apartenența lui Cruella și Monty Burns în grupul VIP, ceea ce a complicat misiunea hackerilor și insiderilor de a investiga infrastructura.
Această postare a fost destinată să vă motiveze să examinați mai atent câmpurile
AD și permisiunile asociate. AD este o resursă excelentă, dar gândiți-vă cum ați
dori să împărtășiți informații confidențiale și date personale, mai ales,
când vine vorba de persoanele de top din organizația dumneavoastră.
Sursa: habr.com
