Joe Richards, MVP de Microsoft, tiene un interesante recopilatorio de utilidades gratuitas conocidas como "joeware" que seguro harán las delicias de cualquier administrador de Windows. Concretamente hoy vemos AdFind, una herramienta de consulta del Directorio Activo que es una mezcla de ldapsearch, search.vbs, ldp, dsquery y dsget además de incluir otras utilidades adicionales. Veréis con los ejemplo como es posible desgranar por completo la información de un dominio...
Aquí encontraras el uso de AdFind y ejemplos.
Añade los siguientes parámetros con el nombre de host/IP del controlador de dominio y las credenciales del usuario de dominio si realizas las consultas desde una máquina fuera de dominio:
AdFind -h direccion_ip -u "usuario@dominio.inet" -up password
Consulta la versión del esquema
AdFind -schema -s base objectVersion
Consulta wellKnownObjects
AdFind -default -s base wellknownObjects
Lista los objetos borrados
AdFind -default -rb "CN=Deleted Objects" -showdel
Lista los objetos en conflicto
AdFind -b -gc -f "(Name=*\0ACNF:*)" -dn
Obtiene todos los atributos
AdFind.exe -schema -f “objectClass=attributeSchema” cn lDAPDisplayName -nodn -csv >Attributes.txt
Obtiene todas las Classes
AdFind.exe -schema -f “objectclass=classSchema” cn lDAPDisplayName -nodn -csv >Classes.txt
Encuentra el nivel funcional del Dominio (por ejemplo Domain=Contoso.com)
AdFind -s Base -b "DC=Contoso,DC=com" msDS-Behavior-Version
Lista subredes
AdFind -subnets -f (objectCategory=subnet)
Lista sufijos UPN
AdFind -partitions -s base uPNSuffixes
Lista la política de contraseñas
AdFind -default -s base lockoutduration lockoutthreshold lockoutobservationwindow maxpwdage minpwdage minpwdlength pwdhistorylength pwdproperties
Comprueba el tiempo de vida de Tombstone
AdFind -config -f objectclass=ntdsservice tombstoneLifetime
Consulta el DA para todos los Grupos y Usuarios que tienen el adminCount = 1 (adminSDholder)
AdFind -default -f "(&(|(&(objectCategory=person)(objectClass=user))(objectCategory=group))(adminCount=1))" -dn
Lista todos los objetos en una OU (por ejemplo OU=NewYork, Domain=Contoso.com)
AdFind -b "OU=NewYork,DC=Contoso,DC=com" -s one -dn
Lista todas las OUs en un Dominio
AdFind -default -f "objectcategory=organizationalUnit" -dn
Encuentra las cuentas desactivadas
AdFind -default -bit -f userAccountControl:AND:=2
O
AdFind -s subtree -b DC=Contoso,DC=com -f userAccountControl:1.2.840.113556.1.4.803:=2 -dn
Lista los Usuarios con la contraseña expirada
AdFind -s subtree -b ,DC=Contoso,DC=com -f userAccountControl:1.2.840.113556.1.4.803:=8388608 -dn
Lista el Display Name de los usuarios del dominio
AdFind -b DC=Contoso,DC=com -f "objectcategory=person" displayName -sl
Encuentra el SID History de un usuario (por ejemplo User=Ed.Price)
AdFind -default -f name=Ed.Price sIDHistory
Lista los Usuarios a los que se le permite Dial-in en la OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind.exe -b "OU=IT,DC=Contoso,DC=com" -f "(&(objectCategory=person)(objectClass=user)(msNPAllowDialin=TRUE))" distinguishedName sAMAccountName
Lista los Usuarios a los que NO se le permite Dial-in en la OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind.exe -b "OU=IT,DC=Contoso,DC=com" -f "(&(objectCategory=person)(objectClass=user)(msNPAllowDialin=FALSE))" distinguishedName sAMAccountName
Lista los Usuarios que tienen acceso Dial-in con Control de Acceso a través de una Política de Acceso Remoto (por ejemplo OU=IT, Domain=Contoso.com)
AdFind.exe -b "OU=IT,DC=Contoso,DC=com" -f "(&(objectCategory=person)(objectClass=user)(!(msNPAllowDialin=*)))" distinguishedName sAMAccountName
Lista los miembros de un Grupo (por ejemplo Group=IT_Support)
AdFind -b "CN=IT_Support,CN=Users,DC=Contoso,DC=com" member
Cuenta el número de miembros de un Grupo (por ejemplo Group=IT_Support)
AdFind -f "sAMAccountName=IT_Support" member -list | AdFind -c
Lista los miembros de un grupo anidado (por ejemplo Group=Support, OU=IT, Domain=Contoso.com)
AdFind -default -bit -f "memberof:1.2.840.113556.1.4.1941:=CN=Support,OU=IT,DC=Contos,DC=com" sAMAccountName -nodn
Lista todos los grupos en uba OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -f "(objectcategory=group)"
Lista todos los grupos de distribuciíon universales en una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind –gc -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(sAMAccountType=268435457)(grouptype:OR:=8))" 1.1
Lista todos los grupos de seguridad universales en una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind –gc -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(grouptype:AND:=-2147483640))" 1.1
Lista todos los grupos universales (Distribución y Seguridad) de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -gc -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(grouptype:OR:=8))" 1.1
Lista todos los grupos globales (Distribution & Security) de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(grouptype:OR:=2))" 1.1
Lista todos los grupos de seguridad globales de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(grouptype:AND:=-2147483646))" 1.1
Lista todos los grupos de distribución globales de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(sAMAccountType=268435457)(grouptype:OR:=2))" 1.1
Lista todos los grupos locales de dominio (distribución y seguridad) de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(grouptype:OR:=4))" 1.1
Lista todos los grupos locales de dominio de seguridad de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -f "(&(objectcategory=group)(sAMAccountType=536870912))" 1.1
Lista todos los grupos locales de dominio de distribución de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -f "(&(objectcategory=group)(sAMAccountType=536870913))" 1.1
Encuentra todos los objetos Computer del dominio y muestra cn & createTimeStamp
AdFind -b dc=Contoso,dc=com -f "objectcategory=computer" cn createTimeStamp
Fuente: AdFind command examples
Aquí encontraras el uso de AdFind y ejemplos.
Añade los siguientes parámetros con el nombre de host/IP del controlador de dominio y las credenciales del usuario de dominio si realizas las consultas desde una máquina fuera de dominio:
AdFind -h direccion_ip -u "usuario@dominio.inet" -up password
Consulta la versión del esquema
AdFind -schema -s base objectVersion
Consulta wellKnownObjects
AdFind -default -s base wellknownObjects
Lista los objetos borrados
AdFind -default -rb "CN=Deleted Objects" -showdel
Lista los objetos en conflicto
AdFind -b -gc -f "(Name=*\0ACNF:*)" -dn
Obtiene todos los atributos
AdFind.exe -schema -f “objectClass=attributeSchema” cn lDAPDisplayName -nodn -csv >Attributes.txt
Obtiene todas las Classes
AdFind.exe -schema -f “objectclass=classSchema” cn lDAPDisplayName -nodn -csv >Classes.txt
Encuentra el nivel funcional del Dominio (por ejemplo Domain=Contoso.com)
AdFind -s Base -b "DC=Contoso,DC=com" msDS-Behavior-Version
Lista subredes
AdFind -subnets -f (objectCategory=subnet)
Lista sufijos UPN
AdFind -partitions -s base uPNSuffixes
Lista la política de contraseñas
AdFind -default -s base lockoutduration lockoutthreshold lockoutobservationwindow maxpwdage minpwdage minpwdlength pwdhistorylength pwdproperties
Comprueba el tiempo de vida de Tombstone
AdFind -config -f objectclass=ntdsservice tombstoneLifetime
Consulta el DA para todos los Grupos y Usuarios que tienen el adminCount = 1 (adminSDholder)
AdFind -default -f "(&(|(&(objectCategory=person)(objectClass=user))(objectCategory=group))(adminCount=1))" -dn
Lista todos los objetos en una OU (por ejemplo OU=NewYork, Domain=Contoso.com)
AdFind -b "OU=NewYork,DC=Contoso,DC=com" -s one -dn
Lista todas las OUs en un Dominio
AdFind -default -f "objectcategory=organizationalUnit" -dn
Encuentra las cuentas desactivadas
AdFind -default -bit -f userAccountControl:AND:=2
O
AdFind -s subtree -b DC=Contoso,DC=com -f userAccountControl:1.2.840.113556.1.4.803:=2 -dn
Lista los Usuarios con la contraseña expirada
AdFind -s subtree -b ,DC=Contoso,DC=com -f userAccountControl:1.2.840.113556.1.4.803:=8388608 -dn
Lista el Display Name de los usuarios del dominio
AdFind -b DC=Contoso,DC=com -f "objectcategory=person" displayName -sl
Encuentra el SID History de un usuario (por ejemplo User=Ed.Price)
AdFind -default -f name=Ed.Price sIDHistory
Lista los Usuarios a los que se le permite Dial-in en la OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind.exe -b "OU=IT,DC=Contoso,DC=com" -f "(&(objectCategory=person)(objectClass=user)(msNPAllowDialin=TRUE))" distinguishedName sAMAccountName
Lista los Usuarios a los que NO se le permite Dial-in en la OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind.exe -b "OU=IT,DC=Contoso,DC=com" -f "(&(objectCategory=person)(objectClass=user)(msNPAllowDialin=FALSE))" distinguishedName sAMAccountName
Lista los Usuarios que tienen acceso Dial-in con Control de Acceso a través de una Política de Acceso Remoto (por ejemplo OU=IT, Domain=Contoso.com)
AdFind.exe -b "OU=IT,DC=Contoso,DC=com" -f "(&(objectCategory=person)(objectClass=user)(!(msNPAllowDialin=*)))" distinguishedName sAMAccountName
Lista los miembros de un Grupo (por ejemplo Group=IT_Support)
AdFind -b "CN=IT_Support,CN=Users,DC=Contoso,DC=com" member
Cuenta el número de miembros de un Grupo (por ejemplo Group=IT_Support)
AdFind -f "sAMAccountName=IT_Support" member -list | AdFind -c
Lista los miembros de un grupo anidado (por ejemplo Group=Support, OU=IT, Domain=Contoso.com)
AdFind -default -bit -f "memberof:1.2.840.113556.1.4.1941:=CN=Support,OU=IT,DC=Contos,DC=com" sAMAccountName -nodn
Lista todos los grupos en uba OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -f "(objectcategory=group)"
Lista todos los grupos de distribuciíon universales en una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind –gc -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(sAMAccountType=268435457)(grouptype:OR:=8))" 1.1
Lista todos los grupos de seguridad universales en una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind –gc -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(grouptype:AND:=-2147483640))" 1.1
Lista todos los grupos universales (Distribución y Seguridad) de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -gc -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(grouptype:OR:=8))" 1.1
Lista todos los grupos globales (Distribution & Security) de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(grouptype:OR:=2))" 1.1
Lista todos los grupos de seguridad globales de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(grouptype:AND:=-2147483646))" 1.1
Lista todos los grupos de distribución globales de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(sAMAccountType=268435457)(grouptype:OR:=2))" 1.1
Lista todos los grupos locales de dominio (distribución y seguridad) de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -bit -f "(&(objectcategory=group)(grouptype:OR:=4))" 1.1
Lista todos los grupos locales de dominio de seguridad de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -f "(&(objectcategory=group)(sAMAccountType=536870912))" 1.1
Lista todos los grupos locales de dominio de distribución de una OU (por ejemplo OU=IT, Domain=Contoso.com)
AdFind -b "OU=IT,DC=Contoso,DC=com" -s subtree -f "(&(objectcategory=group)(sAMAccountType=536870913))" 1.1
Encuentra todos los objetos Computer del dominio y muestra cn & createTimeStamp
AdFind -b dc=Contoso,dc=com -f "objectcategory=computer" cn createTimeStamp
Fuente: AdFind command examples
Comentarios
Publicar un comentario