Encuentre usuarios en Active Directory con contraseñas configuradas para no caducar nunca
Una verificación estándar que debe realizar al intentar mejorar la postura de seguridad de su entorno de Active Directory es asegurarse de tener un razonamiento válido para cualquier cuenta que tenga contraseñas configuradas para no caducar. También debe asegurarse de que las cuentas que utilizan los usuarios diariamente cumplan con su política de contraseñas y no estén configuradas para no caducar nunca.
En este tutorial, le mostraré cómo usar PowerShell para encontrar todas las cuentas configuradas para no caducar en Active Directory.
Encuentre todos los usuarios con contraseñas configuradas para que nunca caduquen
Si desea encontrar una lista de todas las cuentas de usuario cuya contraseña está configurada para que nunca caduque, puede ejecutar el siguiente script en PowerShell.
Comience abriendo PowerShell desde un controlador de dominio; esto garantizará que las herramientas de administración necesarias ya estén instaladas para ejecutar estos comandos.
Ejecute el siguiente comando para ver una lista de todos los usuarios de Active Directory con la contraseña configurada para que nunca caduque. Esto mostrará un resultado del nombre de los usuarios y también si la cuenta está habilitada o no, lo cual es útil saber.
Get-ADUser -Properties PasswordNeverExpires | `
where {$_.passwordNeverExpires -eq "true" } | `
Select-Object Name,Enabled
Una vez que tenga esta información, debe informar al usuario de sus intenciones antes de editar las propiedades en su objeto de cuenta y desmarcar la casilla para permitir que su contraseña caduque.
Encuentre todos los usuarios administradores con contraseñas configuradas para que nunca caduquen
En entornos más grandes, a menudo puede resultar difícil diferenciar entre qué cuentas son cuentas de usuario normales y cuáles son cuentas de administrador. Las herramientas comunes de escaneo de Active Directory como "Ping-Castle" también informarán sobre las cuentas de administrador cuyas contraseñas están configuradas para que no caduquen.
Para encontrar esta información en PowerShell, vamos a incluir 2 cláusulas de filtro en nuestro comando a la hora de buscar nuestras cuentas:
- (AdminCount -eq 1): esto indica que la cuenta es una cuenta privilegiada.
- (AccountNotDelegated -eq $false): esto indica que la cuenta no se utiliza para un servicio.
Ejecute el siguiente comando para crear una lista de cuentas de usuarios administradores con las contraseñas configuradas para que nunca caduquen.
Get-ADUser -Filter {(AdminCount -eq 1) -and (AccountNotDelegated -eq $false)} `
-Properties PasswordNeverExpires | where {$_.passwordNeverExpires -eq "true" } | `
Select-Object Name,Enabled
Hay muchos grupos de seguridad diferentes que pueden hacer que la propiedad AdminCount de una cuenta de usuario se actualice a 1. Estos incluyen:
- Operadores de cuentas
- Administradores
- Operadores de respaldo
- Administradores de dominio
- Controladores de dominio
- Administradores empresariales
- Administradores clave empresariales
- Administradores clave
- krbtgt
- Operadores de impresión
- Controladores de dominio de solo lectura
- Replicante
- Administradores de esquemas
- Operadores de servidor