Zaktualizowano 2024-03-20 - Dodano odwołania LDS
Podsumowanie
CVE-2021-42291 usuwa lukę obejścia zabezpieczeń, która pozwala niektórym użytkownikom ustawiać dowolne wartości atrybutów wrażliwych na zabezpieczenia określonych obiektów przechowywanych w usłudze Active Directory (AD) lub lightweight directory service (LDS). Aby wykorzystać tę lukę w zabezpieczeniach, użytkownik musi mieć wystarczające uprawnienia do tworzenia obiektu pochodnego komputera, takiego jak użytkownik, któremu przyznano uprawnienia CreateChild do obiektów komputerowych. Ten użytkownik może utworzyć konto komputera przy użyciu protokołu Lightweight Directory Access Protocol (LDAP) Dodaj wywołanie, które umożliwia nadmiernie permisyjne dostęp do atrybutu securityDescriptor . Ponadto twórcy i właściciele mogą modyfikować atrybuty wrażliwe na zabezpieczenia po utworzeniu konta. Można to wykorzystać do wykonania podwyższenia uprawnień w niektórych scenariuszach.
UwagaUsługa LDS będzie rejestrować zdarzenia 3050, 3053, 3051 i 3054 dotyczące stanu niejawnego dostępu do obiektów, tak jak robi to usługa AD.
Środki zaradcze w cve-2021-42291 składają się z:
-
Dodatkowa weryfikacja autoryzacji, gdy użytkownicy bez praw administratora domeny lub usługi LDS próbują LDAP Dodać operację dla obiektu komputerowego. Obejmuje to tryb inspekcji domyślnej, który przeprowadza inspekcję, gdy takie próby mają miejsce bez zakłócania żądania, oraz tryb wymuszania, który blokuje takie próby.
-
Tymczasowe usunięcie uprawnień niejawnego właściciela, gdy użytkownicy bez praw administratora domeny próbują LDAP modyfikować operację atrybutu securityDescriptor . Następuje weryfikacja w celu potwierdzenia, czy użytkownik może napisać deskryptor zabezpieczeń bez uprawnień niejawnego właściciela. Obejmuje to również tryb inspekcji domyślnej, który przeprowadza inspekcję, gdy takie próby mają miejsce bez zakłócania żądania, oraz tryb wymuszania, który blokuje takie próby.
Podejmij działanie
Aby chronić środowisko i uniknąć przerw w dostawie prądu, wykonaj następujące czynności:
-
Zaktualizuj wszystkie urządzenia hostujące kontroler domeny usługi Active Directory lub rolę serwera LDS, instalując najnowsze aktualizacje systemu Windows. Komputery, które mają aktualizacje z 9 listopada 2021 r. lub nowsze, domyślnie będą miały zmiany w trybie inspekcji.
-
Monitoruj dziennik zdarzeń usługi katalogowej lub usługi LDS pod kątem zdarzeń 3044–3056 na kontrolerach domeny i serwerach LDS z aktualizacjami systemu Windows z 9 listopada 2021 r. lub nowszymi. Zarejestrowane zdarzenia wskazują, że użytkownik może mieć nadmierne uprawnienia do tworzenia kont komputerowych z atrybutami wrażliwymi na zabezpieczenia. Zgłoś wszelkie nieoczekiwane scenariusze firmie Microsoft za pomocą zgłoszenia Premium lub Unified Support albo Centrum opinii. (Przykład tych zdarzeń można znaleźć w sekcji Nowo dodane zdarzenia).
-
Jeśli tryb inspekcji nie wykryje żadnych nieoczekiwanych uprawnień przez wystarczająco długi czas, przełącz się na tryb wymuszania, aby upewnić się, że nie wystąpią żadne negatywne wyniki. Zgłoś wszelkie nieoczekiwane scenariusze firmie Microsoft za pomocą zgłoszenia Premium lub Unified Support albo Centrum opinii.
Chronometraż aktualizacji systemu Windows
Te aktualizacje systemu Windows zostaną wydane w dwóch fazach:
-
Wdrożenie początkowe — wprowadzenie aktualizacji, w tym inspekcja domyślna, wymuszanie lub wyłączanie trybów konfigurowalnych przy użyciu atrybutu dSHeuristics .
-
Wdrożenie końcowe — domyślne wymuszanie.
9 listopada 2021 r.: Początkowa faza wdrażania
Początkowa faza wdrażania rozpoczyna się od wydania aktualizacji systemu Windows 9 listopada 2021 r. Ta wersja dodaje inspekcję uprawnień ustawianych przez użytkowników bez praw administratora domeny podczas tworzenia lub modyfikowania komputera lub obiektów pochodzących z komputera. Powoduje również dodanie trybu Wymuszanie i Wyłącz. Możesz ustawić tryb globalnie dla każdego lasu usługi Active Directory przy użyciu atrybutu dSHeuristics .
(Aktualizacja: 15.12.2023 r.) Ostateczna faza wdrażania
Ostateczna faza wdrażania może rozpocząć się po wykonaniu kroków wymienionych w sekcji Wykonywanie akcji. Aby przejść do trybu wymuszania, postępuj zgodnie z instrukcjami w sekcji Wskazówki dotyczące wdrażania, aby ustawić 28 i 29 bity atrybutu dSHeuristics . Następnie monitoruj zdarzenia 3044-3046. Raportują, gdy tryb wymuszenia zablokował operację dodawania lub modyfikowania LDAP, która mogła być wcześniej dozwolona w trybie inspekcji.
Wskazówki dotyczące wdrażania
Ustawianie informacji o konfiguracji
Po zainstalowaniu cve-2021-42291 znaki 28 i 29 atrybutu dSHeuristics kontrolują zachowanie aktualizacji. Atrybut dSHeuristics istnieje w każdym lesie usługi Active Directory i zawiera ustawienia dla całego lasu. Atrybut dSHeuristics jest atrybutem obiektu "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,<Domain>" (AD) lub "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,<configuration set>" (LDS). Aby uzyskać więcej informacji, zobacz 6.1.1.2.4.1.2 atrybuty dSHeuristics i DS-Heuristics .
Znak 28 — dodatkowe weryfikacje uwierzytelniania dla operacji dodawania LDAP
0: Włączony jest tryb Inspekcja domyślna. Zdarzenie jest rejestrowane, gdy użytkownicy bez praw administratora domeny ustawiają atrybut securityDescriptor lub inne atrybuty na wartości, które mogą przyznawać nadmierne uprawnienia, potencjalnie zezwalając na przyszłe wykorzystanie nowych obiektów AD pochodzących z komputera.
1: Tryb wymuszania jest włączony. Uniemożliwia to użytkownikom bez praw administratora domeny ustawienie atrybutu securityDescriptor lub innych atrybutów na wartości, które mogą nadmiernie zezwalać na obiekty AD pochodzące z komputera. Zdarzenie jest również rejestrowane w takiej sytuacji.
2.Wyłącza zaktualizowaną inspekcję i nie wymusza dodatkowych zabezpieczeń. Niezalecane.
Przykład: Jeśli nie włączono żadnych innych ustawień dSHeuristics w lesie i chcesz przełączyć się do trybu wymuszania dla dodatkowej weryfikacji AuthZ, atrybut dSHeuristics powinien być ustawiony na:
"0000000001000000000200000001"
Znaki ustawione w tym przypadku to: 10znak : Musi być ustawiona wartość 1, jeśli atrybut dSHeuristics ma co najmniej 10 znaków 20znak : Musi być ustawiona wartość 2, jeśli atrybut dSHeuristics ma co najmniej 20 znaków 28znak : Musi być ustawiona wartość 1, aby włączyć tryb wymuszania dla dodatkowej weryfikacji AuthZZnak 29 — tymczasowe usunięcie niejawnego właściciela dla operacji modyfikowania LDAP
0: Włączony jest tryb Inspekcja domyślna. Zdarzenie jest rejestrowane, gdy użytkownicy bez praw administratora domeny ustawiają wartości securityDescriptor na wartości, które mogą przyznawać nadmierne uprawnienia, potencjalnie zezwalając na przyszłe wykorzystanie istniejących obiektów AD pochodzących z komputera.
1: Tryb wymuszania jest włączony. Uniemożliwia to użytkownikom bez praw administratora domeny ustawienie wartości securityDescriptor na wartości, które mogą nadmiernie zezwalać na istniejące obiekty AD pochodzące z komputera. Zdarzenie jest również rejestrowane w takiej sytuacji.
2.Wyłącza zaktualizowaną inspekcję i nie wymusza dodatkowych zabezpieczeń. Niezalecane.
Przykład: Jeśli w lesie ustawiono tylko flagę Dodatkowe weryfikacje AuthZ dsHeuristics i chcesz przełączyć się do trybu wymuszania w celu tymczasowego usunięcia własności pośredniej, atrybut dSHeuristics powinien mieć wartość:
"00000000010000000002000000011"
Znaki ustawione w tym przypadku to: 10znak : Musi być ustawiona wartość 1, jeśli atrybut dSHeuristics ma co najmniej 10 znaków 20znak : Musi być ustawiona wartość 2, jeśli atrybut dSHeuristics ma co najmniej 20 znaków 28znak : Musi być ustawiona wartość 1, aby włączyć tryb wymuszania dla dodatkowej weryfikacji AuthZ 29znak : Należy ustawić wartość 1, aby włączyć tryb wymuszania dla tymczasowego usunięcia własności pośredniejNowo dodane zdarzenia
Aktualizacja systemu Windows z 9 listopada 2021 r. doda również nowe dzienniki zdarzeń.
Zdarzenia zmiany trybu — dodatkowa weryfikacja uwierzytelniania dla operacji dodawania LDAP
Zdarzenia występujące w przypadku zmiany bitu 28 atrybutu dSHeuristics , co zmienia tryb dodatkowych weryfikacji AuthZ dla części operacji dodawania LDAP aktualizacji.
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Informacyjne |
Identyfikator zdarzenia |
3050 |
Tekst zdarzenia |
Katalog został skonfigurowany do wymuszania autoryzacji według atrybutów podczas operacji dodawania LDAP. Jest to najbezpieczniejsze ustawienie i nie są wymagane żadne dalsze działania. |
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Ostrzeżenie |
Identyfikator zdarzenia |
3051 |
Tekst zdarzenia |
Katalog został skonfigurowany tak, aby nie wymuszał autoryzacji według atrybutów podczas operacji dodawania LDAP. Zdarzenia ostrzegawcze zostaną zarejestrowane, ale żadne żądania nie zostaną zablokowane. To ustawienie nie jest bezpieczne i powinno być używane tylko jako tymczasowy krok rozwiązywania problemów. Przejrzyj sugerowane środki łagodzące w poniższym linku. |
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Błąd |
Identyfikator zdarzenia |
3052 |
Tekst zdarzenia |
Katalog został skonfigurowany tak, aby nie wymuszał autoryzacji według atrybutów podczas operacji dodawania LDAP. Żadne zdarzenia nie będą rejestrowane i żadne żądania nie zostaną zablokowane. To ustawienie nie jest bezpieczne i powinno być używane tylko jako tymczasowy krok rozwiązywania problemów. Przejrzyj sugerowane środki łagodzące w poniższym linku. |
Zdarzenia zmiany trybu — tymczasowe usunięcie niejawnego prawa właściciela
Zdarzenia występujące w przypadku zmiany bitu 29 atrybutu dSHeuristics , co zmienia tryb tymczasowego usuwania części praw niejawnego właściciela aktualizacji.
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Informacyjne |
Identyfikator zdarzenia |
3053 |
Tekst zdarzenia |
Katalog został skonfigurowany do blokowania niejawnych uprawnień właściciela podczas wstępnego ustawiania lub modyfikowania atrybutu nTSecurityDescriptor podczas operacji dodawania i modyfikowania LDAP. Jest to najbezpieczniejsze ustawienie i nie są wymagane żadne dalsze działania. |
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Ostrzeżenie |
Identyfikator zdarzenia |
3054 |
Tekst zdarzenia |
Podczas wstępnego ustawiania lub modyfikowania atrybutu nTSecurityDescriptor podczas operacji dodawania i modyfikowania usługi LDAP katalog został skonfigurowany tak, aby zezwalał na niejawne uprawnienia właściciela. Zdarzenia ostrzegawcze zostaną zarejestrowane, ale żadne żądania nie zostaną zablokowane. To ustawienie nie jest bezpieczne i powinno być używane tylko jako tymczasowy krok rozwiązywania problemów. |
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Błąd |
Identyfikator zdarzenia |
3055 |
Tekst zdarzenia |
Podczas wstępnego ustawiania lub modyfikowania atrybutu nTSecurityDescriptor podczas operacji dodawania i modyfikowania usługi LDAP katalog został skonfigurowany tak, aby zezwalał na niejawne uprawnienia właściciela. Żadne zdarzenia nie będą rejestrowane i żadne żądania nie zostaną zablokowane. To ustawienie nie jest bezpieczne i powinno być używane tylko jako tymczasowy krok rozwiązywania problemów. |
Zdarzenia trybu inspekcji
Zdarzenia występujące w trybie inspekcji w celu zarejestrowania potencjalnych problemów z zabezpieczeniami przy użyciu operacji dodawania lub modyfikowania LDAP.
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Ostrzeżenie |
Identyfikator zdarzenia |
3047 |
Tekst zdarzenia |
Usługa katalogowa wykryła żądanie dodania LDAP dla następującego obiektu, które normalnie zostałoby zablokowane z następujących względów bezpieczeństwa. Klient nie miał uprawnień do zapisu co najmniej jednego atrybutu zawartego w żądaniu dodawania na podstawie domyślnego scalonego deskryptora zabezpieczeń. Żądanie zostało dopuszczone do kontynuowania, ponieważ katalog jest obecnie skonfigurowany jako w trybie tylko inspekcji dla tego sprawdzania zabezpieczeń. Nazwa DN obiektu: <> DN obiektu utworzonego Klasa obiektu: <obiektu utworzonoKlasy> Użytkownik: <użytkownik, który próbował dodać> LDAP Adres IP klienta: <adres IP żądacza> Desc zabezpieczeń: <identyfikator SD, który został> |
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Ostrzeżenie |
Identyfikator zdarzenia |
3048 |
Tekst zdarzenia |
Usługa katalogowa wykryła żądanie dodania LDAP dla następującego obiektu, które normalnie zostałoby zablokowane z następujących względów bezpieczeństwa. Klient zawierał atrybut nTSecurityDescriptor w żądaniu dodawania, ale nie miał jawnego uprawnienia do napisania co najmniej jednej części nowego deskryptora zabezpieczeń na podstawie domyślnego scalonego deskryptora zabezpieczeń. Żądanie zostało dopuszczone do kontynuowania, ponieważ katalog jest obecnie skonfigurowany jako w trybie tylko inspekcji dla tego sprawdzania zabezpieczeń. Nazwa DN obiektu: <> DN obiektu utworzonego Klasa obiektu: <obiektu utworzonoKlasy> Użytkownik: <użytkownik, który próbował dodać> LDAP Adres IP klienta: <adres IP żądacza> |
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Ostrzeżenie |
Identyfikator zdarzenia |
3049 |
Tekst zdarzenia |
Usługa katalogowa wykryła żądanie modyfikacji LDAP dla następującego obiektu, które normalnie zostałoby zablokowane z następujących względów bezpieczeństwa. Klient zawierał atrybut nTSecurityDescriptor w żądaniu dodawania, ale nie miał jawnego uprawnienia do napisania co najmniej jednej części nowego deskryptora zabezpieczeń na podstawie domyślnego scalonego deskryptora zabezpieczeń. Żądanie zostało dopuszczone do kontynuowania, ponieważ katalog jest obecnie skonfigurowany jako w trybie tylko inspekcji dla tego sprawdzania zabezpieczeń. Nazwa DN obiektu: <> DN obiektu utworzonego Klasa obiektu: <obiektu utworzonoKlasy> Użytkownik: <użytkownik, który próbował dodać> LDAP Adres IP klienta: <adres IP żądacza> |
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Ostrzeżenie |
Identyfikator zdarzenia |
3056 |
Tekst zdarzenia |
Usługa katalogowa przetworzyła zapytanie dotyczące atrybutu sdRightsEffective dla obiektu określonego poniżej. Zwrócona maska dostępu zawierała WRITE_DAC, ale tylko dlatego, że katalog został skonfigurowany tak, aby zezwalał na niejawne uprawnienia właściciela, co nie jest bezpiecznym ustawieniem. Nazwa DN obiektu: <> DN obiektu utworzonego Użytkownik: <użytkownik, który próbował dodać> LDAP Adres IP klienta: <adres IP żądacza> |
Tryb wymuszania — dodawanie błędów w usłudze LDAP
Zdarzenia występujące w przypadku odrzucenia operacji dodawania LDAP.
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Ostrzeżenie |
Identyfikator zdarzenia |
3044 |
Tekst zdarzenia |
Usługa katalogowa odrzuciła żądanie dodania LDAP dla następującego obiektu. Żądanie zostało odrzucone, ponieważ klient nie miał uprawnień do napisania co najmniej jednego atrybutu zawartego w żądaniu dodawania na podstawie domyślnego scalonego deskryptora zabezpieczeń. Nazwa DN obiektu: <> DN obiektu utworzonego Klasa obiektu: <obiektu utworzonoKlasy> Użytkownik: <użytkownik, który próbował dodać> LDAP Adres IP klienta: <adres IP żądacza> Desc zabezpieczeń: <identyfikator SD, który został> |
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Ostrzeżenie |
Identyfikator zdarzenia |
3045 |
Tekst zdarzenia |
Usługa katalogowa odrzuciła żądanie dodania LDAP dla następującego obiektu. Żądanie zostało odrzucone, ponieważ klient zawierał atrybut nTSecurityDescriptor w żądaniu dodawania, ale nie miał jawnego uprawnienia do napisania co najmniej jednej części nowego deskryptora zabezpieczeń na podstawie domyślnego scalonego deskryptora zabezpieczeń. Nazwa DN obiektu: <> DN obiektu utworzonego Klasa obiektu: <obiektu utworzonoKlasy> Użytkownik: <użytkownik, który próbował dodać> LDAP Adres IP klienta: <adres IP żądacza> |
Tryb wymuszania — LDAP Modyfikowanie błędów
Zdarzenia występujące w przypadku odrzucenia operacji modyfikacji LDAP.
Dziennik zdarzeń |
Usługi katalogowe |
Typ zdarzenia |
Ostrzeżenie |
Identyfikator zdarzenia |
3046 |
Tekst zdarzenia |
Usługa katalogowa odrzuciła żądanie modyfikacji LDAP dla następującego obiektu. Żądanie zostało odrzucone, ponieważ klient zawierał atrybut nTSecurityDescriptor w żądaniu modyfikacji, ale nie miał jawnego uprawnienia do napisania jednej lub kilku części nowego deskryptora zabezpieczeń na podstawie istniejącego deskryptora zabezpieczeń obiektu. Nazwa DN obiektu: <> DN obiektu utworzonego Klasa obiektu: <obiektu utworzonoKlasy> Użytkownik: <użytkownik, który próbował dodać> LDAP Adres IP klienta: <adres IP żądacza> |
Często zadawane pytania
P1 Co się stanie, jeśli mam kombinację kontrolerów domeny usługi Active Directory, które są aktualizowane, a nie aktualizowane?
A1 Komputery, które nie są aktualizowane, nie będą rejestrować zdarzeń związanych z tą luką w zabezpieczeniach.
Q2 Co muszę zrobić w przypadku Read-Only kontrolerów domeny (RODC)?
A2 Nic; Operacje dodawania i modyfikowania protokołu LDAP nie mogą być ukierunkowane na RODC.
Q3 Mam produkt lub proces innej firmy, który kończy się niepowodzeniem po włączeniu trybu wymuszania. Czy muszę przyznać uprawnienia administratora usługi lub domeny użytkownika?
A3 Na ogół nie zalecamy dodawania usługi ani użytkownika do grupy Administratorzy domeny jako pierwszego rozwiązania tego problemu. Przejrzyj dzienniki zdarzeń, aby sprawdzić, jakie uprawnienia są wymagane, i rozważ delegowanie odpowiednich ograniczonych praw tego użytkownika do oddzielnej jednostki organizacyjnej wyznaczonej do tego celu.
Q4 Widzę zdarzenia inspekcji również dla serwerów LDS. Dlaczego tak się dzieje?
A4Wszystkie powyższe dotyczy również AD LDS, chociaż bardzo nietypowe jest mieć obiekty komputerowe w LDS. Należy również podjąć kroki łagodzenia, aby włączyć ochronę usługi AD LDS, gdy tryb inspekcji nie wykrywa żadnych nieoczekiwanych uprawnień.