Țineți-vă la arma, defocru

Țineți-vă la arma, defocru

Destul de des puteți vedea utilizarea KeePass în diverse companii.
Dacă luăm în considerare mediul corporativ, administratorii de sistem sunt, probabil, principalii utilizatori ai acestui utilitar.
De asemenea, puteți găsi adesea sfaturi și trucuri pentru trecerea de la stocarea parolelor în fișiere xls la KeePass - cum ar fi de exemplu
aici.

Trebuie remarcat imediat că aproape tot ceea ce este descris mai jos este posibil fără privilegii sporite.

Programul KeePass nu este vulnerabil sau împiedicat - este mult mai bine decât stocarea parolelor într-un fișier xls. Dar nu este o soluție la absolut toate problemele cu stocarea parolelor.
Dacă utilizați KeePass - nu garantează că parolele dvs. sunt 100% protejate împotriva furtului.
Dar, pe de altă parte, KeePass este destul de bun, deoarece conține inițial mecanismele de contracarare a post-operare, despre care nu știe toată lumea.

"Mai întâi vom privi în jur"

Prima acțiune va fi detectarea procesului KeePass și ce versiune utilizează pentru sistemul țintă.
Desigur, puteți vedea o listă cu procesele curente, de exemplu folosind PowerShell:

După aceea, ar fi bine să aflați exact unde sunt fișierele de programe.
În mod implicit pentru calea versiunile 1.x este C: \ Program Files (x86) \ KeePass Password Safe \, iar pentru versiunea 2.x - C: \ Program Files (x86) \ KeePass Password Safe 2 \.
Acest lucru va fi adevărat dacă OS-ul țintă este x64.
Dar nu uitați că există încă o versiune portabilă pe care o puteți rula de oriunde, fără ao instala pe disc.
Prin urmare, putem utiliza WMI funcțional prin interogarea proceselor și a valorii ExecutablePath.


Get-WmiObject win32_proces | Unde-Obiect Selectați-Object-Extindeți ExecutablePath

Dacă KeePass nu rulează în prezent, putem folosi cmdletul Get-ChildItem pentru a găsi binare sau doar bazele de date .kdb.


Get-ChildItem -path C: \ Users \ -Include @ ( "* Kee * .exe", "* .kdb *") -Recurse -ErrorAction SilentlyContinue | Selectați-Obiect-Extindeți FullName | fl

"Trecem la DB"

Mai mult, în cazul în care sarcina de a selecta o parolă pentru baza de date KeePass, aici vine în ajutorul unui mare forcer bruta HashCat versiunea 3.0, care a fost lansat recent.
Dar, la început, va fi necesar să extrageți hash-ul din baza de date folosind una dintre utilitățile speciale, care au câte două piese pentru a alege.

Unul dintre proiectele john ripper, și anume - keepass2john

Și alta scrisă de Will Schroeder pe python

Apoi, puteți utiliza deja hashcat cu opțiunea -m 13400.

- Ce-i cu cheile?

"Înțelegeți cu DPAPI"

Ca urmare, sunt necesari următorii pași pentru a restabili cheia principală compusă:

3) Notați pentru dvs. datele de conectare și domeniul utilizatorului care a creat baza de date KeePass.

4) Mutați directorul la% APPDATA% \ Microsoft \ Protect \ pe o mașină aflată sub controlul atacatorului Windows. Această mașină nu trebuie să fie membru al domeniului.

6) Rulați utilitarul de migrare C: \ Windows \ system32 \ dpapimig.exe și introduceți vechea parolă de utilizator.

7) Deschideți versiunea KeePass 2.x, selectați o bază de date extras în format .kdbx, introduceți cheia / parola, și setați «pentru Windows cont de utilizator» opțiune pentru a deschide deja cu baza de date de parole în sine.


Restore-UserDPAPI -path. \ S-1-5-21-3666375278-850114672-3647310776-1107 -username richard -UserDomain pentestit.local -ProtectedUserKey. \ ProtectedUserKey.bin

"Și dacă cheia nu este stocată pe un disc local, ci doar pe o unitate flash USB?"

În acest caz, va trebui din nou să accesați capabilitățile subsistemului WMI.
Matt Graeber a efectuat un studiu și a găsit WMI clasa «Win32_VolumeChangeEvent», care este activat de fiecare dată când conectați o unitate flash USB.
Prin urmare, nimic nu împiedică scrierea unui script mic care va interacționa cu unitatea flash USB conectată.
În același timp, există două opțiuni de alegere - menținerea funcționalității după repornire sau atât timp cât procesul powershell.exe se execută.

Dacă supraviețuirea nu este necesară după reboot, atunci puteți folosi Register-WmiEvent și Win32_VolumeChangeEvent:

Acest cod va copia fișierul în C: \ temp \ în momentul conectării unității flash USB la sistem.
Apropo, puteți monitoriza și evenimentele pe gazdele de la distanță (dacă există privilegii corespunzătoare) utilizând opțiunile -ComputerName și -Credential.

"Situația dacă cheia este pe o unitate de rețea"

În unele cazuri, administratorii pot stoca cheile undeva pe unitățile de rețea.
Pentru a căuta astfel de chei, puteți utiliza diferite instrumente, iar cel mai convenabil este probabil modulul PowerView și funcția lui Get-RegistryMountedDrive.
Această funcție va scana toate unitățile de rețea conectate pentru toți utilizatorii de pe gazdă locală sau de la distanță.

Țineți-vă la arma, defocru

"Concedierea accidentală"

Și cel mai interesant scop.
Doar câteva zile în urmă a apărut un instrument KeeThief (inclusiv PowerShell).
Ce este remarcabil?
1) KeeThief nu necesită drepturi de administrator local, are nevoie doar de drepturi asupra procesului KeePass.exe, care este atacat.
2) KeeThief.ps1 script-ul este complet auto-suficient, nu dependență, nici un fișier nu va cădea pe disc, și, în plus, susținută de PowerShell începând cu a doua versiune, și anume, rulează pe Windows 7 și mai departe.
3) Configurarea desktopului securizat nu afectează, deoarece nu necesită programe keylogger.
4) KeeThief special diferită de KeeFarce, astfel încât recupereaza parolele și cheile din memorie în schimb provoca diferite metode interne pentru exportarea conținutului DB.
5) Desigur, este necesar ca baza de date KeePass să fie deblocată pentru obținerea parolelor. Dacă baza de date nu este încă conectată, puteți rula periodic KeeThief.

Țineți-vă la arma, defocru

- Ce-i în cele din urmă?

Folosirea KeePass sau a oricărui alt manager de parole este întotdeauna mai bună decât stocarea tuturor datelor sensibile într-un fișier simplu xls.
Dar dacă un atacator reușește să obțină privilegii de utilizator (sau chiar mai mult un administrator local), atunci este aproape imposibil să-l oprească să colecteze date de la victimă.
Folosind capabilitățile PowerShell și WMI, putem găsi rapid configurații KeePass și colectăm cheile.
Desigur, cu WMI puteți extrage o mare varietate de informații, atât din sistem, cât și din dispozitivele USB atunci când sunt conectate.

"Materiale utilizate și informații suplimentare"

Articole similare