Özet
IMPERSONAT-2021-42278, olası saldırganların bilgisayar hesabı sAMAccountName kimlik sahteciliği kullanarak etki alanı denetleyicisini taklitlerine izin veren bir güvenlik atlama açığını ele almaktadır.
Bu makalede, 9 Kasım 2021'de yayınlanan Windows güncelleştirmeleri ile 2021-42278'tebelgelenmiş olarak yayınlanan Active Directory Güvenlik Hesapları Yöneticisi (SAM) güncelleştirmeleri ile ilgili ek ayrıntılar ve sık sorulan sorular bölümü açıklanmıştır.
Active Directory doğrulama denetimleri
BURSI-2021-42278'iyükledikten sonra, Active Directory makine hesapları için yönetici haklarına sahip olmayan kullanıcılar tarafından oluşturulan veya değiştirilen bilgisayar hesaplarının sAMAccountName ve UserAccountControl öznitelikleri üzerinde aşağıda listelenen doğrulama denetimlerini gerçekleştirecek.
-
Kullanıcı ve bilgisayar hesapları için sAMAccountType doğrulaması
-
ObjectClass=Computer (veya bilgisayarın alt sınıfı) hesaplarında UserAccountControl bayrakları UF_WORKSTATION_TRUST_ACCOUNT veya UF_SERVER_TRUST_ACCOUNT
-
ObjectClass=User, UAC bayrakları veya UF_NORMAL_ACCOUNT bayrakları UF_INTERDOMAIN_TRUST_ACCOUNT
-
-
bilgisayar hesapları için sAMAccountName doğrulaması
UserAccountControl özniteliği UF_WORKSTATION_TRUST_ACCOUNT bayrağını içeren bir bilgisayar hesabının sAMAccountName değeri, tek bir dolar işaretiyle ($) bit olmalıdır. Bu koşullar karşılanmazsa, Active Directory hata kodunu 0x523 ERROR_INVALID_ACCOUNTNAME. Başarısız doğrulamalar, System olay günlüğünde Dizin-Services-SAM olay kimliği 16991'e kaydedilir.
Bu koşullar karşılanmazsa, Active Directory kod için bir hata ACCESS_DENIED. Başarısız doğrulamalar, System olay günlüğünde Directory-Services-SAM olay kimliği 16990'a kaydedilir.
Olayları denetleme
Object class and UserAccountControl validation failure
Object class ve UserAccountControl doğrulaması başarısız olduğunda, aşağıdaki olay Sistem günlüğüne kaydedilir:
Olay Günlüğü |
Sistem |
Olay Türü |
Hata |
Olay Kaynağı |
Directory-Services-SAM |
Olay Kimliği |
16990 |
Olay Metni |
Güvenlik hesabı yöneticisi, yönetici olmayan bir kullanıcının bu etki alanında eşleşmeyen objectClass ve userAccountControl hesap türü bayraklarıyla Active Directory hesabı oluşturmalarını engelledi. Ayrıntılar: Hesap adı: %1%n Account objectClass: %2%n userAccountControl: %3%n Arayan adresi: %4%n Arayan SID: %5%n%n |
SAM Hesap Adı doğrulama hatası
SAM Hesap Adı doğrulaması başarısız olduğunda, Sistem günlüğüne aşağıdaki olay günlüğe kaydedilir:
Olay Günlüğü |
Sistem |
Olay Türü |
Hata |
Olay Kaynağı |
Directory-Services-SAM |
Olay Kimliği |
16991 |
Olay Metni |
Güvenlik hesabı yöneticisi, yönetici olmayan bir yöneticinin geçersiz bir sAMAccountName kullanarak bilgisayar hesabı oluşturmalarını veya yeniden adlandırlarını engelledi. Bilgisayar hesaplarda sAMAccountName tek bir sonda $ işaretiyle bit olmalıdır. sAMAccountName denendi: %1 Önerilen sAMAccountName: %1$ |
Başarılı bilgisayar hesabı oluşturma denetim olayları
Bilgisayar hesabı oluşturmak için aşağıdaki mevcut denetim olayları kullanılabilir:
-
4741(S): Bir bilgisayar hesabı oluşturulmuş
-
4742(S): Bilgisayar hesabı değiştirildi
-
4743(S): Bir bilgisayar hesabı silinmiş
Daha fazla bilgi için bkz. Bilgisayar Hesabı Yönetimi'ne Denetim.
Sık sorulan sorular
S1. Bu güncelleştirme Active Directory'de var olan nesneleri nasıl etkiler?
A1. Var olan nesnelerde, yönetici hakları olmayan kullanıcılar sAMAccountName veya UserAccountControl özniteliklerinde değişiklik yapmaları gerekir.
Ç2. sAMAccountName nedir?
A2. sAMAccountName, Active Directory'daki tüm güvenlik sorumlularının benzersiz bir özniteliğidir ve kullanıcıları, grupları ve bilgisayarları içerir. sAMAccountName için ad sınırlamaları, Kaynak Güncelleştirmeler için 3.1.1.6 Öznitelik Kısıtlamaları'nın belge belge belgesinde yer almaktadır.
Ç3. sAMAccountType nedir?
A3. Daha fazla bilgi için lütfen aşağıdaki belgeleri okuyun:
Dört olası UserAccountcontrol bayrağına karşılık gelen üç olası sAMAccountType değeri vardır:
userAccountControl |
sAMAccountType |
---|---|
UF_NORMAL_ACCOUNT |
SAM_USER_OBJECT |
UF_INTERDOMAIN_TRUST_ACCOUNT |
SAM_TRUST_ACCOUNT |
UF_WORKSTATION_TRUST_ACCOUNT |
SAM_MACHINE_ACCOUNT |
UF_SERVER_TRUST_ACCOUNT |
SAM_MACHINE_ACCOUNT |
Ç4. UserAccountControl için olası değerler nedir?
A4. Daha fazla bilgi için lütfen aşağıdaki belgeleri okuyun:
Ç5. Ortamımda zaten var olan uyumlu olmayan nesneleri nasıl bulamıyorum?
A5. Yöneticiler, aşağıdaki örnekler gibi bir PowerShell betiği kullanarak dizinlerinde var olan uyumlu olmayan hesapları arayabilir.
Uyumlu olmayan sAMAccountNameile uyumlu olmayan bilgisayar hesaplarını bulmak için:
Get-ADComputer -LDAPFilter "(samAccountName=*)" |? SamAccountName -NotLike "*$" | select DNSHostName, Name, SamAccountName |
Uyumlu olmayan UserAccountControl sAMAccountType bilgisayar hesaplarını bulmak için:
Get-ADComputer -LDAPFilter "UserAccountControl:1.2.840.113556.1.4.803:=512” |