Cum să blocați parolele comune (slabe) în Active Directory

Doar cele mai elementare cerințe privind lungimea, frecvența și complexitatea parolei pot fi activate pentru utilizatorii de domeniu în politica implicită de parole Active Directory. Activarea opțiunii de complexitate obligatorie a parolei, care necesită ca parolele să conțină un amestec de litere mari, minuscule, cifre și caractere speciale, nu împiedică utilizatorii să folosească parole ușor de ghicit, cum ar fiQwerty123456,P@ssw0rd,March2025, etc. Aceste parole îndeplinesc criteriile de complexitate, dar rămân vulnerabile la atac datorită predictibilității lor.

Acest ghid explică cum să creați și să impuneți liste de parole interzise într-un domeniu Active Directory local, împiedicând utilizatorii să stabilească parole slabe sau compromise și protejând conturile împotriva atacurilor de dicționar și forță brută.

Continut:

Lista de parole interzise cu filtru de parole AD (PassFiltEx)

În primul rând, să aruncăm o privire laPassFiltEx, o bibliotecă open-source ușoară care oferă o soluție simplă pentru blocarea parolelor slabe comune în Active Directory

Când un utilizator AD schimbă o parolă, procesul LSA de pe controlerul de domeniu verifică dacă parola se potrivește cu cea înregistrată.filtre de parole. Biblioteca PassFiltEx poate fi folosită transparent ca filtru suplimentar atunci când se verifică o nouă parolă.

Pentru a implementa PassFiltEx, descărcați două fișiere de pe pagina GitHub a proiectului (https://github.com/ryanries/PassFiltEx) și copiați-le în%SystemRoot%System32director pe un controler de domeniu.

  • PassFiltEx.dll – fișier de bibliotecă PassFiltEx
  • PassFiltExBlacklist.txt – un fișier text simplu care conține parolele pe care doriți să le refuzați în AD

Câteva puncte importante:

  • PassFiltEx reîncarcă fișierul blocklist la fiecare 60 de secunde
  • Modelele de parole refuzate din fișierul PassFiltExBlacklist.txt nu fac distincție între majuscule și minuscule. (MyPasswordDşimypasswordvalorile vor fi definite ca fiind egale)
  • Caracterele Unicode nu sunt acceptate în prezent

Citește și:Eliminați vechile parole de recuperare BitLocker din Active Directory

Apoi, deschideți Editorul de registry, accesațiHKLMSYSTEMCurrentControlSetControlLsatasta și adăugațiPassFiltExvaloare până la sfârșitulPachete de notificareparametru cu mai multe șiruri.

Reporniți controlerul de domeniu pentru a aplica noul filtru de parolă. Verificați dacă procesul lsass încarcă biblioteca PassFiltEx.

tasklist /m PassFiltEx.dll

Acum, dacă utilizatorul încearcă să schimbe parola cu una care se potrivește cu unul dintre modelele din lista neagră a parolelor, va apărea o eroare care afirmă că parola nu îndeplinește cerințele politicii de parole.

Dacă aveți mai multe controlere de domeniu implementate, configurați același filtru de parolă pentru fiecare dintre ele.

Utilizarea opțiunilor de registry înHKLMSOFTWAREPassFiltExreg (creată automat), puteți configura setări suplimentare de filtru de parolă PassFiltEx:

  • Lista neagrăFileName(REG_SZ) – calea către fișierul care conține parolele interzise. (implicit este%SystemRoot%System32PassFiltExBlacklist.txt). O cale UNC poate fi utilizată aici, care permite stocarea fișierului în SYSVOL (pentru a utiliza un fișier cu o singură parolă, care este replicat automat între DC-uri)
  • TokenPercentageOfPassword(REG_DWORD) – este procentul minim de parolă nouă care se potrivește cu un șablon din lista neagră care va determina respingerea parolei (în mod implicit este de 60%). De exemplu, dacă adăugați o linie cu modelul MyPasswd la lista neagră, utilizatorii nu vor putea folosi parola MyPasswd2025.
  • Depanați– Dacă este setat1, activează modul de depanare (toate acțiunile sunt înregistrate într-un fișier text).
  • BlockSequentialChars– blocați utilizarea secvențelor de caractere din parolă, cum ar fi abcd sau 1234.
  • BlockRepeatingChars— blocați secvențe de caractere identice, cum ar fi AAAA, 2222.

Informații despre alte opțiuni de registru pot fi găsite pe pagina GitHub a proiectului.

Blocați parolele slabe și compromise cu Protecția prin parolă Lithnet

Protecție cu parolă Lithnet pentru Active Directory (LPP)este o soluție de întreprindere pentru blocarea parolelor slabe și compromise în Active Directory. Funcționalitatea sa de bază permite extinderea cerințelor politicii de parole AD, blocarea parolelor folosind șabloane sau hash-uri de parole (permite importarea unei baze de date cu parole compromise din dicționare externe). Lithnet Password Protection acceptă gestionarea prin Politica de grup și PowerShell.

Agentul Lithnet Password Protection pentru Active Directory trebuie instalat pe fiecare controler de domeniu (https://github.com/lithnet/ad-password-protection).

Apoi, utilizați PowerShell pentru a adăuga parole și cuvinte cheie interzise în seiful de parole Lithnet. Importați modulul în sesiunea dvs. PowerShell:

Import-Module LithnetPasswordProtection

Adăugați un cuvânt pe care doriți să îl blocați pentru a nu fi utilizat în parolele utilizatorilor AD.

Add-BannedWord -Value "admin"

Puteți importa lista de cuvinte cheie interzise dintr-un fișier text:

Import-BannedWords -Filename "c:tempblacklistpwd.txt"

Verificați baza de date LPP pentru cuvintele interzise:

Test-IsBannedWord -value admin

Utilizați cmdletul Get-PasswordFilterResult pentru a testa dacă parola pe care ați introdus-o respectă politica privind parolele:

Get-PasswordFilterResult -Password "Admin321" -Username jsmith -Fullname "John Smith"

Compromised

Get-PasswordFilterResult -Password "Adm123n!" -Username jsmith -Fullname "John Smith"

Approved

În primul caz, parola conține potrivirea exactă a cuvântului cheie Admin, iar politica de parole interzice utilizarea acesteia.

Seiful de parole LPP este o bază de date hash de parole bazată pe fișiere (din cauza formatului binar, căutarea unei astfel de baze de date este rapidă). În mod implicit, fișierele DB sunt stocate înC:Program FilesLithnetActive Directory Password ProtectionStorev3pdirector.DFS-Reste folosit pentru a replica baza de date Lithnet Password Protection a parolelor interzise între controlerele de domeniu.

Lithnet Password Protection (LPP) permite administratorilor să importe parole compromise din „Have I Been Pwned” (HIBP pwnded) într-o bază de date locală, sporind securitatea prin împiedicarea utilizatorilor să selecteze parolele expuse în încălcarea datelor. Acest lucru va necesita aproximativ8 GBde spațiu pe disc pe DC pentru a stoca dicționarul hash.

Sync-HashesFromHibp

Pentru a sincroniza automat baza de date locală cu HIBP, executați periodic comanda Sync-HashesFromHibp PowerShell utilizând un Task Scheduler.

Sau importați hashuri dintr-un fișier text:
Import-CompromisedPasswordHashes -Filename "c:pspwned-ntlm-hashs.txt"

Verificați dacă parola specifică sau UPN-ul utilizatorului se află în baza de date a parolelor compromise.

Test-IsCompromisedPassword -value MyAdminl0veSme
Test-IsADUserPasswordCompromised -upn [email protected]

Fișierele șablon administrative (ADMX) sunt disponibile pentru a gestiona setările LPP prin GPO. În mod implicit, șabloanele ADMX pot fi găsite în%WINDIR%PolicyDefinitionsdirector pe un DC cu un agent LPP (le puteți copia în magazinul GPO central):

  • lithnet.activedirectory.passwordfilter.admx
  • lithnet.admx
  • ro-uslithnet.activedirectory.passwordfilter.adml
  • en-uslithnet.adml

Pentru ca agentul LPP să verifice parola unui utilizator cu dicționarul de parole din lista neagră atunci când utilizatorul schimbă parola, creați un GPO pentru controlerele de domeniu cu următoarele setări minime în Configurație computer -> Șabloane administrative -> Lithnet ->Protecție cu parolă pentru Active Directory -> secțiunea Politică implicită.

  • Respinge parolele găsite în depozitul de parole compromiseEnable, debifați opțiunileActivați pentru setarea paroleişiActivați pentru operațiunile de schimbare a parolei.
  • Respinge parola normalizată găsită în depozitul de parole compromise(resping parolele normalizate, de exemplu, WOSHub și woshub)

Alte opțiuni GPO pot fi activate/dezactivate în funcție de nevoile dvs. de securitate.

Reporniți controlerul de domeniu pentru a actualiza setările GPO. Acest lucru va adăuga șilithnetpwdffiltru de parolă la cheia de registry specificată mai sus.

Acum, când încercați să schimbați (resetarea) parola unui utilizator AD, se efectuează o verificare suplimentară pentru a vedea dacă parola se află în dicționarul parolelor interzise. De exemplu, Windows 11 afișează următoarea eroare:

The password on this account cannot be changed at this time

Evident, acest lucru este incomod, deoarece utilizatorului nu este clar că parola lor nu a trecut de verificarea politicii de parole.

Dacă aveți unIntrați ID P1 sau abonament P2și sincronizați cu Active Directory local, puteți crea o listă de parole interzise în cloud-ul Microsoft. Serviciul Microsoft Entra Password Protection Proxy și Microsoft Entra Password Protection DC Agent pot aplica aceste setări de securitate la conturile AD locale. Consultați politica privind parolele în Entra ID (ex-Azure AD).

Am explorat cum să îmbunătățim securitatea Active Directory prin implementarea soluțiilor open-source care împiedică utilizarea parolelor slabe, scurse de informații sau obișnuite, care nu sunt de obicei blocate prin politica de parole AD implicită.

Related Posts