Actualizat 20.03.2024 - Referințe LDS adăugate
Rezumat
CVE-2021-42291 tratează o vulnerabilitate de ocolire de securitate care permite anumitor utilizatori să seteze valori arbitrare pe atributele sensibile la securitate ale unor obiecte specifice stocate în Active Directory (AD) sau Lightweight Directory Service (LDS). Pentru a exploata această vulnerabilitate, un utilizator trebuie să aibă suficiente privilegii pentru a crea un obiect derivat din computer, cum ar fi un utilizator care a acordat permisiuni CreateChild pentru obiectele computerului. Acel utilizator ar putea crea un cont de computer utilizând un apel Add Lightweight Directory Access Protocol (LDAP) care permite accesul prea permis la atributul securityDescriptor . În plus, creatorii și proprietarii pot modifica atributele sensibile la securitate după ce creează un cont. Acest lucru poate fi valorificat pentru a efectua o sporire a privilegiilor în anumite scenarii.
NotăLDS va înregistra în jurnal evenimentele 3050, 3053, 3051 și 3054 despre starea accesului implicit la obiecte, așa cum face AD.
Atenuările din CVE-2021-42291 constau din:
-
Verificare suplimentară de autorizare atunci când utilizatorii fără drepturi de administrator de domeniu sau LDS încearcă o operațiune de adăugare LDAP pentru un obiect derivat din computer. Aceasta include un mod de auditare implicit care auditează atunci când au loc astfel de încercări, fără a interfera cu solicitarea și cu un mod impunere care blochează astfel de încercări.
-
Eliminarea temporară a privilegiilor de proprietar implicit atunci când utilizatorii fără drepturi de administrator de domeniu încearcă o operațiune de modificare LDAP în atributul securityDescriptor . Are loc o verificare pentru a confirma dacă utilizatorului i s-ar permite să scrie descriptorul de securitate fără privilegii de proprietar implicit. Aceasta include, de asemenea, un mod auditare implicit care auditează atunci când au loc astfel de încercări, fără a interfera cu solicitarea și cu un mod impunere care blochează astfel de încercări.
Acționați
Pentru a vă proteja mediul și a evita întreruperile, parcurgeți următorii pași:
-
Actualizați toate dispozitivele care găzduiesc rolul de controler de domeniu Active Directory sau server LDS, instalând cele mai recente actualizări Windows. PC-urile care au actualizările din 9 noiembrie 2021 sau mai recente vor avea modificările în modul auditare în mod implicit.
-
Monitorizați jurnalul de evenimente Directory Service sau LDS pentru evenimentele 3044-3056 de pe controlerele de domeniu și serverele LDS care au actualizările Windows din 9 noiembrie 2021 sau mai recente. Evenimentele înregistrate în jurnal indică faptul că un utilizator poate avea privilegii excesive pentru a crea conturi de computer cu atribute arbitrare, sensibile la securitate. Raportați orice scenarii neașteptate la Microsoft utilizând un caz de asistență Premier sau Unified sau Centrul de feedback. (Un exemplu de astfel de evenimente poate fi găsit în secțiunea Evenimente nou adăugate.)
-
Dacă modul Auditare nu detectează privilegii neașteptate pentru o durată suficientă de timp, comutați la modul Impunere pentru a vă asigura că nu apar rezultate negative. Raportați orice scenarii neașteptate la Microsoft utilizând un caz de asistență Premier sau Unified sau Centrul de feedback.
Temporizarea actualizărilor Windows
Aceste actualizări Windows vor fi lansate în două faze:
-
Implementarea inițială - Introducerea actualizării, inclusiv modurile Auditare implicită, Impunere sau Dezactivare configurabile utilizând atributul dSHeuristics .
-
Implementare finală - Impunere implicită.
9 noiembrie 2021: Etapa inițială de implementare
Faza inițială de implementare începe cu actualizarea Windows lansată pe 9 noiembrie 2021. Această versiune adaugă auditarea permisiunilor setate de utilizatori fără drepturi de administrator de domeniu în timpul creării sau modificării unui computer sau a obiectelor derivate din computer. De asemenea, adaugă un mod Impunere și dezactivare. Puteți seta modul global pentru fiecare pădure Active Directory utilizând atributul dSHeuristics .
(Actualizat la 15.12.2023) Faza finală de implementare
Faza finală de implementare poate începe după ce ați terminat pașii listați în secțiunea Acțiune. Pentru a trece la Modul impunere, urmați instrucțiunile din secțiunea Instrucțiuni de implementare pentru a seta biții 28 și 29 pe atributul dSHeuristics . Apoi monitorizați evenimentele 3044-3046. Acestea raportează atunci când Modul impunere a blocat o operațiune de adăugare sau modificare LDAP care a fost permisă anterior în modul Auditare.
Instrucțiuni de implementare
Setarea informațiilor de configurare
După instalarea CVE-2021-42291, caracterele 28 și 29 ale atributului dSHeuristics controlează comportamentul actualizării. Atributul dSHeuristics există în fiecare pădure Active Directory și conține setări pentru întreaga pădure. Atributul dSHeuristics este un atribut al obiectului "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,<Domain>" (AD ) sau "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,<configuration set>" (LDS). Pentru mai multe informații, consultați atributul 6.1.1.2.4.1.2 dSHeuristics și DS-Heuristics .
Caracterul 28 – Verificări authZ suplimentare pentru operațiunile de adăugare LDAP
0: Modul auditare în mod implicit este activat. Un eveniment este înregistrat atunci când utilizatorii fără drepturi de administrator de domeniu setează securityDescriptor-ul sau alte atribute la valori care ar putea acorda permisiuni excesive, ceea ce ar putea permite exploatarea viitoare, pe noi obiecte AD derivate din computer.
1: Modul impunere este activat. Acest lucru împiedică utilizatorii fără drepturi de administrator de domeniu să seteze securityDescriptor sau alte atribute la valori care pot acorda permisiuni excesive obiectelor AD derivate din computer. De asemenea, un eveniment este înregistrat în jurnal atunci când se întâmplă acest lucru.
2: Dezactivează auditarea actualizată și nu impune securitatea adăugată. Nu se recomandă.
Exemplu: Dacă nu ați avut nicio altă setare dSHeuristics activată în pădure și doriți să comutați la modul Impunere pentru verificarea authz suplimentară, atributul dSHeuristics ar trebui să fie setat la:
"0000000001000000000200000001"
Caracterele setate în acest caz sunt:
Caracter10 : Trebuie setat la 1 dacă atributul dSHeuristics are cel puțin 10 caractere
Caracterul20: Trebuie setat la 2 dacă atributul dSHeuristics este de cel puțin 20 de caractere
28. caracter : Trebuie setat la 1 pentru a activa modul Impunere pentru verificarea authZ suplimentară
Caracterul 29 - Eliminarea temporară a proprietarului implicit pentru operațiunile de modificare LDAP
0: Modul auditare în mod implicit este activat. Un eveniment este înregistrat atunci când utilizatorii fără drepturi de administrator de domeniu setează securityDescriptor-ul la valori care pot acorda permisiuni excesive, ceea ce ar putea permite exploatarea viitoare, pe obiecteLE AD existente derivate din computer.
1: Modul impunere este activat. Acest lucru împiedică utilizatorii fără drepturi de administrator de domeniu să seteze Descriptorul de securitate la valori care pot acorda permisiuni excesive pentru obiectele AD existente derivate din computer. De asemenea, un eveniment este înregistrat în jurnal atunci când se întâmplă acest lucru.
2:Dezactivează auditarea actualizată și nu impune securitatea adăugată. Nu se recomandă.
Exemplu: Dacă ați avut semnalizatorul dsHeuristics pentru verificări suplimentare authZ setat în pădurea dvs. și doriți să comutați la modul Impunere pentru eliminarea temporară a proprietății implicite, atributul dSHeuristics ar trebui să fie setat la:
"00000000010000000002000000011"
Caracterele setate în acest caz sunt:
Caracter10: Trebuie setat la 1 dacă atributul dSHeuristics are cel puțin 10 caractere
Caracterul20: Trebuie setat la 2 dacă atributul dSHeuristics este de cel puțin 20 de caractere
28. caracter : Trebuie setat la 1 pentru a activa modul Impunere pentru verificarea
authZ suplimentară
29. caracter : Trebuie setat la 1 pentru a activa modul Impunere pentru eliminarea implicită temporară a proprietății
Evenimente nou adăugate
Actualizarea Windows din 9 noiembrie 2021 va adăuga, de asemenea, jurnale de evenimente noi.
Evenimente modificare mod - Verificare authZ suplimentară pentru operațiuni de adăugare LDAP
Evenimentele care apar atunci când bitul 28 al atributului dSHeuristics este modificat, ceea ce modifică modul verificărilor authZ suplimentare pentru porțiunea de operațiuni adăugare LDAP a actualizării.
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Informaţionale |
ID eveniment |
3050 |
Text eveniment |
Directorul a fost configurat pentru a impune autorizarea per atribut în timpul operațiunilor de adăugare LDAP. Aceasta este setarea cea mai sigură și nu mai sunt necesare alte acțiuni. |
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Avertisment |
ID eveniment |
3051 |
Text eveniment |
Directorul a fost configurat să nu impună autorizarea per atribut în timpul operațiunilor de adăugare LDAP. Evenimentele de avertizare vor fi înregistrate în jurnal, dar nicio solicitare nu va fi blocată. Această setare nu este sigură și ar trebui utilizată doar ca pas temporar de depanare. Revizuiți atenuările sugerate în linkul de mai jos. |
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Eroare |
ID eveniment |
3052 |
Text eveniment |
Directorul a fost configurat să nu impună autorizarea per atribut în timpul operațiunilor de adăugare LDAP. Niciun eveniment nu va fi înregistrat în jurnal și nicio solicitare nu va fi blocată. Această setare nu este sigură și ar trebui utilizată doar ca pas temporar de depanare. Revizuiți atenuările sugerate în linkul de mai jos. |
Evenimente modificare mod - eliminarea temporară a drepturilor de proprietar implicit
Evenimentele care apar atunci când bitul 29 al atributului dSHeuristics este modificat, ceea ce modifică modul de eliminare temporară a porțiunii de drepturi de proprietar implicit a actualizării.
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Informaţionale |
ID eveniment |
3053 |
Text eveniment |
Directorul a fost configurat pentru a bloca privilegiile implicite de proprietar atunci când se setează inițial sau se modifică atributul nTSecurityDescriptor în timpul operațiunilor de adăugare și modificare LDAP. Aceasta este setarea cea mai sigură și nu mai sunt necesare alte acțiuni. |
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Avertisment |
ID eveniment |
3054 |
Text eveniment |
Directorul a fost configurat pentru a permite privilegii implicite de proprietar atunci când se setează inițial sau se modifică atributul nTSecurityDescriptor în timpul operațiunilor de adăugare și modificare LDAP. Evenimentele de avertizare vor fi înregistrate în jurnal, dar nicio solicitare nu va fi blocată. Această setare nu este sigură și ar trebui utilizată doar ca pas temporar de depanare. |
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Eroare |
ID eveniment |
3055 |
Text eveniment |
Directorul a fost configurat pentru a permite privilegii implicite de proprietar atunci când se setează inițial sau se modifică atributul nTSecurityDescriptor în timpul operațiunilor de adăugare și modificare LDAP. Niciun eveniment nu va fi înregistrat în jurnal și nicio solicitare nu va fi blocată. Această setare nu este sigură și ar trebui utilizată doar ca pas temporar de depanare. |
Evenimente mod auditare
Evenimente care apar în modul auditare pentru a înregistra probleme potențiale de securitate cu o operațiune de adăugare sau modificare LDAP.
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Avertisment |
ID eveniment |
3047 |
Text eveniment |
Serviciul director a detectat o solicitare de adăugare LDAP pentru următorul obiect care în mod normal ar fi fost blocat din următoarele motive de securitate. Clientul nu a avut permisiunea de a scrie unul sau mai multe atribute incluse în solicitarea de adăugare, pe baza descriptorului de securitate îmbinat implicit. Solicitarea a fost permisă pentru a continua, deoarece directorul este configurat în prezent să fie în modul doar de auditare pentru această verificare de securitate. DN obiect: <> DN a obiectului creat Clasă obiect: <creat obiectul objectClass> Utilizator: <utilizator care a încercat> de adăugare LDAP Adresa IP a clientului: <IP-ul> solicitantului Security desc: <SD-ul care a fost încercat> |
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Avertisment |
ID eveniment |
3048 |
Text eveniment |
Serviciul director a detectat o solicitare de adăugare LDAP pentru următorul obiect care în mod normal ar fi fost blocat din următoarele motive de securitate. Clientul a inclus un atribut nTSecurityDescriptor în solicitarea de adăugare, dar nu a avut permisiunea explicită de a scrie una sau mai multe părți ale noului descriptor de securitate, pe baza descriptorului de securitate îmbinat implicit. Solicitarea a fost permisă pentru a continua, deoarece directorul este configurat în prezent să fie în modul doar de auditare pentru această verificare de securitate. DN obiect: <> DN a obiectului creat Clasă obiect: <creat obiectul objectClass> Utilizator: <utilizator care a încercat> de adăugare LDAP Adresa IP a clientului: <IP-ul> solicitantului |
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Avertisment |
ID eveniment |
3049 |
Text eveniment |
Serviciul director a detectat o solicitare de modificare LDAP pentru următorul obiect care în mod normal ar fi fost blocat din următoarele motive de securitate. Clientul a inclus un atribut nTSecurityDescriptor în solicitarea de adăugare, dar nu a avut permisiunea explicită de a scrie una sau mai multe părți ale noului descriptor de securitate, pe baza descriptorului de securitate îmbinat implicit. Solicitarea a fost permisă pentru a continua, deoarece directorul este configurat în prezent să fie în modul doar de auditare pentru această verificare de securitate. DN obiect: <> DN a obiectului creat Clasă obiect: <creat obiectul objectClass> Utilizator: <utilizator care a încercat> de adăugare LDAP Adresa IP a clientului: <IP-ul> solicitantului |
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Avertisment |
ID eveniment |
3056 |
Text eveniment |
Serviciul director a procesat o interogare pentru atributul sdRightsEffective al obiectului specificat mai jos. Masca de acces returnată includea WRITE_DAC, dar numai pentru că directorul a fost configurat pentru a permite privilegii implicite de proprietar, care nu este o setare sigură. DN obiect: <> DN a obiectului creat Utilizator: <utilizator care a încercat> de adăugare LDAP Adresa IP a clientului: <IP-ul> solicitantului |
Mod impunere - Erori adăugare LDAP
Evenimente care apar atunci când o operațiune de adăugare LDAP este refuzată.
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Avertisment |
ID eveniment |
3044 |
Text eveniment |
Serviciul director a refuzat o solicitare de adăugare LDAP pentru următorul obiect. Solicitarea a fost refuzată, deoarece clientul nu a avut permisiunea de a scrie unul sau mai multe atribute incluse în solicitarea de adăugare, pe baza descriptorului de securitate îmbinat implicit. DN obiect: <> DN a obiectului creat Clasă obiect: <creat obiectul objectClass> Utilizator: <utilizator care a încercat> de adăugare LDAP Adresa IP a clientului: <IP-ul> solicitantului Security desc: <SD-ul care a fost încercat> |
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Avertisment |
ID eveniment |
3045 |
Text eveniment |
Serviciul director a refuzat o solicitare de adăugare LDAP pentru următorul obiect. Solicitarea a fost refuzată, deoarece clientul a inclus un atribut nTSecurityDescriptor în solicitarea de adăugare, dar nu a avut permisiunea explicită de a scrie una sau mai multe părți ale noului descriptor de securitate, pe baza descriptorului de securitate îmbinat implicit. DN obiect: <> DN a obiectului creat Clasă obiect: <creat obiectul objectClass> Utilizator: <utilizator care a încercat> de adăugare LDAP Adresa IP a clientului: <IP-ul> solicitantului |
Mod impunere - Erori modificare LDAP
Evenimente care apar atunci când o operațiune de modificare LDAP este refuzată.
Jurnal de evenimente |
Servicii director |
Tip eveniment |
Avertisment |
ID eveniment |
3046 |
Text eveniment |
Serviciul director a refuzat o solicitare de modificare LDAP pentru următorul obiect. Solicitarea a fost refuzată, deoarece clientul a inclus un atribut nTSecurityDescriptor în solicitarea de modificare, dar nu a avut permisiunea explicită de a scrie una sau mai multe părți ale noului descriptor de securitate, pe baza descriptorului de securitate existent al obiectului. DN obiect: <> DN a obiectului creat Clasă obiect: <creat obiectul objectClass> Utilizator: <utilizator care a încercat> de adăugare LDAP Adresa IP a clientului: <IP-ul> solicitantului |
Întrebări frecvente
Q1 Ce se întâmplă dacă am un amestec de controlere de domeniu Active Directory care sunt actualizate și nu sunt actualizate?
A1 PC-urile care nu sunt actualizate nu vor înregistra în jurnal evenimente legate de această vulnerabilitate.
Q2 Ce trebuie să fac pentru controlerele de domeniu Read-Only (RODCs)?
A2 Nimic; Operațiunile de adăugare și modificare LDAP nu pot viza RODC-uri.
Q3 Am un produs sau un proces terț care nu reușește după activarea modului Impunere. Trebuie să acord serviciului sau drepturi de administrator de domeniu de utilizator?
A3 În general, nu recomandăm adăugarea unui serviciu sau a unui utilizator la grupul Administratori de domeniu ca primă soluție la această problemă. Examinați jurnalele de evenimente pentru a vedea ce permisiune specifică este necesară și luați în considerare delegarea de drepturi limitate corespunzător pentru acel utilizator într-o unitate organizațională separată desemnată în acest scop.
Q4 Văd evenimentele de auditare și pentru serverele LDS. De ce se întâmplă acest lucru?
A4Toate cele de mai sus se aplică și la AD LDS, deși este foarte neobișnuit să aveți obiecte de computer în LDS. Pașii de atenuare ar trebui urmați, de asemenea, pentru a activa protecția PENTRU AD LDS atunci când modul auditare nu detectează privilegii neașteptate.