Resumen
CVE-2021-42278 aborda una vulnerabilidad de omisión de seguridad que permite a los posibles atacantes suplantar un controlador de dominio con la suplantación de identidad de la cuenta de equipo sAMAccountName.
En este artículo se proporcionan detalles adicionales y una sección de preguntas más frecuentes para el Administrador de cuentas de seguridad de Active Directory (SAM) que resaltó los cambios realizados por las actualizaciones de Windows publicadas el 9 de noviembre de 2021 y posteriores, como se documentó en CVE-2021-42278.
Comprobaciones de validación de Active Directory
Después de instalar CVE-2021-42278,Active Directory realizará las inspecciones de validación que se indican a continuación en los atributos sAMAccountName y UserAccountControl de cuentas de equipo creadas o modificadas por usuarios que no tienen derechos de administrador para cuentas de equipo.
-
validación de sAMAccountType para cuentas de usuario y equipo
-
ObjectClass=Cuentas de equipo (o subclase de equipo) deben tener marcas UserAccountControl de UF_WORKSTATION_TRUST_ACCOUNT o UF_SERVER_TRUST_ACCOUNT
-
ObjectClass=User debe tener marcas UAC de UF_NORMAL_ACCOUNT o UF_INTERDOMAIN_TRUST_ACCOUNT
-
-
validación de sAMAccountName para cuentas de equipo
El sAMAccountName de una cuenta de equipo cuyo atributo UserAccountControl contiene la marca UF_WORKSTATION_TRUST_ACCOUNT debe finalizar con un único signo de dólar ($). Cuando estas condiciones no se cumplen, Active Directory devuelve el código de error 0x523 ERROR_INVALID_ACCOUNTNAME. Las validaciones con errores se registran en el id. de evento Directory-Services-SAM 16991 en el registro de eventos del sistema.
Cuando estas condiciones no se cumplen, Active Directory devuelve un código de error de ACCESS_DENIED. Las validaciones con errores se registran en el id. de evento Directory-Services-SAM 16990 en el registro de eventos del sistema.
Eventos de auditoría
Error de validación de useraccountControl y clase de objeto
Cuando se produce un error en la validación de la clase Object y UserAccountControl, el siguiente evento se registrará en el registro del sistema:
Registro de eventos |
Sistema |
Tipo de evento |
Error |
Origen del evento |
Directory-Services-SAM |
Id. de evento |
16990 |
Texto del evento |
El administrador de cuentas de seguridad bloqueó que un no administrador creara una cuenta de Active Directory en este dominio con marcas de tipo de cuenta objectClass y userAccountControl no coincidentes. Detalles: Nombre de la cuenta: %1%n Objeto de cuentaClass: %2%n userAccountControl: %3%n Dirección del autor de la llamada: %4%n Sid de autor de la llamada: %5%n%n |
Error de validación de nombre de cuenta DE SAM
Cuando se produce un error en la validación de nombre de cuenta de SAM, el siguiente evento se registrará en el registro del sistema:
Registro de eventos |
Sistema |
Tipo de evento |
Error |
Origen del evento |
Directory-Services-SAM |
Id. de evento |
16991 |
Texto del evento |
El administrador de cuentas de seguridad bloqueó que un no administrador creara o cambiara el nombre de una cuenta de equipo con un sAMAccountName no válido. sAMAccountName en cuentas de equipo debe terminar con un único signo de $ final. Intento de sAMAccountName: %1 SAMAccountName recomendado: %1$ |
Eventos de auditoría de creación de cuentas de equipo correctamente
Los siguientes eventos de auditoría existentes están disponibles para la creación correcta de cuentas de equipo:
-
4741(S): se creó una cuenta de equipo
-
4742(S): se ha cambiado una cuenta de equipo
-
4743(S): se eliminó una cuenta de equipo
Para obtener más información, vea Audit Computer Account Management.
Preguntas frecuentes
P1. ¿Cómo afecta esta actualización a los objetos existentes en Active Directory?
A1. Para los objetos existentes, la validación se produce cuando los usuarios que no tienen derechos de administrador modifican los atributos sAMAccountName o UserAccountControl.
Q2. ¿Qué es un sAMAccountName?
A2. sAMAccountName es un atributo único en todas las entidades de seguridad de Active Directory e incluye usuarios, grupos y equipos. Las restricciones de nombre para sAMAccountName se documentan en 3.1.1.6 Restriccionesde atributo para actualizaciones de origen.
P3. ¿Qué es un sAMAccountType?
A3. Para obtener más información, lea los siguientes documentos:
Hay tres posibles valores sAMAccountType que corresponden a cuatro posibles marcas de UserAccountcontrol de la siguiente manera:
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 |
P4. ¿Cuáles son los posibles valores de UserAccountControl?
A4. Para obtener más información, lea los siguientes documentos:
Q5. ¿Cómo puedo encontrar objetos no compatibles que ya existen en mi entorno?
A5. Los administradores pueden buscar en su directorio cuentas no compatibles existentes con un script de PowerShell como los ejemplos siguientes.
Para buscar cuentas de equipo que tengan un sAMAccountNameno compatible:
Get-ADComputer -LDAPFilter "(samAccountName=*)" |? SamAccountName -NotLike "*$" | select DNSHostName, Name, SamAccountName |
Para buscar cuentas de equipo que tengan un sAMAccountType de UserAccountControl no compatible:
Get-ADComputer -LDAPFilter "UserAccountControl:1.2.840.113556.1.4.803:=512” |