Cómo restaurar los atributos de objetos de Active Directory
Apr 7, 2023
Active Directory (AD) es una base de datos y conjunto de servicios que ofrece una gestión centralizada de los recursos de infraestructura de TI. Conecta a los usuarios con los recursos que necesitan para realizar su trabajo. Por lo tanto, los técnicos deben poder verificar y recuperar rápidamente los atributos de AD que son modificados o eliminados por fallos de hardware, ciberataques, errores de scripting y otros problemas. De lo contrario, los usuarios no podrán acceder a los mismos recursos que antes, lo que resulta en pérdidas de productividad, ineficiencia, clientes insatisfechos y una imagen de marca deteriorada.
Contenido relacionado seleccionado:
Lea esta guía para aprender cómo restaurar los atributos de Active Directory a su última configuración guardada. Esta página también incluye consejos y trucos de PowerShell para revertir y recuperar atributos de AD.
¿Cuándo necesitaría revertir o recuperar atributos de AD?
You need to be able to roll back or recover AD attributes when:
- Alguien del equipo de TI comete un error que afecta los atributos de uno o más objetos de AD. Por ejemplo, supongamos que un técnico de TI usa accidentalmente el script de PowerShell incorrecto. En lugar de agregar información de dirección postal a ciertas cuentas de usuario de AD, reemplaza el valor actual del atributo de dirección de cada objeto de usuario en el dominio con un asterisco. Debes revertir estos cambios para restaurar las direcciones correctas.
- Un actor malicioso obtiene acceso a su red AD y elimina o edita atributos de objetos AD. Debe revertir o recuperar los atributos para asegurarse de que todo esté en orden.
¿Puedes usar la Papelera de reciclaje de Active Directory para recuperar atributos de AD?
En pocas palabras, no.
The Active Directory Recycle Bin is designed to retain certain deleted Active Directory objects for a short period of time. But the Active Directory Recycle Bin does not store AD attributes that have been modified, so it does not help with the attribute recovery process.
Técnicamente, podrías intentar construir un proceso con la esperanza de que seas capaz de darte cuenta de cualquier cambio indeseable rápidamente, encontrar un controlador de dominio que aún no haya recibido esos cambios a través de la replicación y hacer que sus objetos sean autoritativos. Sin embargo, hacerlo sería poco realista — es como construir tu plan de ahorros para la jubilación alrededor de una servilleta con 'ganar la lotería' garabateado en ella.
¿Cómo puede asegurarse de tener copias de seguridad de los atributos de AD?
Dado que Active Directory no mantiene un registro de los valores de los atributos de un objeto, el primer paso para asegurarse de poder recuperar o revertir los atributos cuando sea necesario es encontrar algo que sí lo haga. Afortunadamente, cuando se trata de copias de seguridad del estado del sistema de Active Directory, no hay escasez de herramientas de respaldo disponibles.
Windows Server Backup (WBAdmin)
Una opción es utilizar Microsoft Windows Server Backup (WBAdmin). Instalar la herramienta Windows Server Backup en un ordenador instalará la herramienta de línea de comandos wbadmin.exe. También proporciona acceso a los cmdlets de Windows PowerShell para Windows Server Backup y el complemento MMC de Windows Server Backup. Estas tres opciones son simplemente diferentes maneras de aprovechar una única aplicación subyacente, por lo que una copia de seguridad realizada por cualquiera de ellas es visible para todas.
Puede acceder a WBAdmin.exe abriendo una ventana de comandos elevada con permiso de administrador. Para hacer esto, haga clic en Start, haga clic derecho en Command Prompt y seleccione Run as administrator.
Hay una advertencia importante que tener en cuenta con WBAdmin: Cuando se configura para almacenar copias de seguridad en una carpeta específica, solo se conserva la copia más reciente de la copia de seguridad; las copias de seguridad posteriores sobrescriben el contenido de la copia de seguridad anterior.
Para evitar este problema, el siguiente script creará una carpeta nombrada con la fecha actual en formato YYYYMMDD y luego hará una copia de seguridad del archivo de Active Directory ntds.dit en esa carpeta utilizando el comando START BACKUP de WBAdmin:
@echo off
set backupRoot=\FILESHARENtdsBackups
set backupFolder=%date:~-4,4%%date:~-10,2%%date:~7,2%
set backupPath=%backupRoot%%backupFolder%
mkdir %backupPath%
wbadmin start backup -backuptarget:%backupPath% -include:C:WindowsNTDSntds.dit -quiet
Los resultados de esta operación incluyen una instantánea del Servicio de copia de sombra de volumen (VSS) del archivo ntds.dit.
La desventaja de este enfoque es que el archivo resultante es considerablemente más grande que el archivo ntds.dit. Por ejemplo, la captura de pantalla a continuación muestra el tamaño de la copia de seguridad para un archivo ntds.dit de 20MB. Este uso adicional de disco podría no ser un gran problema en ciertos laboratorios, pero no va a escalar bien en un entorno de producción.
Ntdsutil.exe
Otra opción disponible de Microsoft es Ntdsutil.exe, una herramienta de línea de comandos para acceder y gestionar una base de datos de Active Directory. Ntdsutil es peligrosamente potente, por lo que su entorno de producción no es el lugar para aprender a usarlo. Sin embargo, eso se debe en gran parte al hecho de que contiene un conjunto de comandos increíblemente útiles.
Por ejemplo, Ntdsutil tiene el comando SNAPSHOT, que captura el estado de Active Directory en el momento de su ejecución:
La gran desventaja de este enfoque es que las copias de seguridad de Ntdsutil se escriben en el volumen que aloja Active Directory, lo cual no es lo ideal.
¿Cómo restauro atributos utilizando WBAdmin y Ntdsutil.exe?
Ahora, vamos a seguir los pasos utilizando WBAdmin y Ntdsutil.exe. Usaremos la Active Directory Domain Services Database Mounting Tool (DSAMAIN) para montar los archivos ntds.dit que se ocultan en nuestras copias de seguridad para que podamos explorarlos utilizando LDAP.
1. Primero, necesitamos encontrar una de las imágenes VHD creadas por WBAdmin, montarla y asignar una letra de unidad a su partición primaria.
2. A continuación, encontramos la ruta al archivo ntds.dit en nuestra copia de seguridad montada, abrimos una línea de comandos como administrador y usamos el siguiente comando para montar el archivo ntds.dit:
dsamain -dbpath “E:WindowsNTDSntds.dit” -ldapport 10389
Cerrar el símbolo del sistema detendrá DSAMAIN, así que asegúrate de mantenerlo abierto hasta que termines de restaurar el estado del sistema.
3. Ahora que la copia de seguridad de WBAdmin está montada, montaremos la instantánea tomada por Ntdsutil. Para hacer esto, abriremos una nueva línea de comandos como administrador, usaremos el comando snapshot para listar nuestras copias de seguridad, elegiremos una para montar y copiaremos la ubicación de la ruta del disco que es asignada por Ntdsutil:
4. A continuación, encontramos la ruta al archivo ntds.dit que se encuentra debajo de la ruta asignada por Ntdsutil, abrimos otra ventana de comandos como administrador y usamos el siguiente comando para montar el archivo ntds.dit:
dsamain -dbpath “C:\$SNAP_201903261110_VOLUMEC$\Windows\NTDS\ntds.dit” -ldapport 20389
5. Después de eso, cambiamos el atributo Descripción de nuestro confiable usuario de prueba Delete Q. Me.
6. Ahora podemos abrir PowerShell y usar el cmdlet Get-ADUser para observar nuestro usuario de prueba. Active Directory escucha en el puerto 389 por defecto, y montamos nuestras copias de seguridad en los puertos 10389 y 20389. Utilizando el parámetro opcional Server nos permitirá ver cómo se ve nuestro usuario de prueba en vivo y en ambas de nuestras copias de seguridad montadas.
Como puede ver, el valor actual del atributo Description es “Oops,” y ambos respaldos contienen el valor anterior, “Demo User Account.”
7. Ahora podemos usar el cmdlet Get-ADUser de PowerShell para restaurar este atributo al valor capturado en una de nuestras copias de seguridad. Si obtenemos una copia del objeto de una de las copias montadas, podemos usar la copia del atributo de ese objeto para establecer el valor del atributo del objeto en vivo:
$UserBackup = Get-ADUser -Identity dqme -Properties Description -Server dc01:10389
Set-ADUser -Identity dqme -Description $UserBackup.Description -Server dc01:389
Tenga en cuenta que el valor del atributo Description ha sido restaurado al valor capturado en la copia de seguridad montada.
Esto parece sencillo, pero solo fue un ejercicio de laboratorio que involucraba el cambio de un atributo específico realizado en un objeto específico. También sabíamos qué copias de seguridad contenían la información que necesitábamos para nuestra operación de restauración. En un escenario de recuperación del mundo real, este proceso puede volverse desagradable, especialmente cuando te apuras para restaurar el servicio.
Recupere atributos de Active Directory con soluciones de Netwrix
Usar herramientas como WBAdmin y Ntdsutil.exe para recuperar atributos de AD puede ser agotador, especialmente si no cuentas con muchos recursos, tiempo o energía.
Afortunadamente, hay una manera rápida y fácil de restaurar los atributos de AD — Netwrix’s end-to-end Active Directory Security Solution. Potente, completa y llena de funcionalidades, esta herramienta realiza restauraciones rápidas de eliminaciones y cambios no deseados en AD. De esa manera, puedes asegurar la continuidad del negocio y la satisfacción del cliente.
FAQ
Cómo restaurar usuarios de Active Directory eliminados con todos los atributos?
Cuando necesite restaurar usuarios de AD eliminados con su conjunto completo de atributos, su enfoque dependerá de si la Papelera de reciclaje de Active Directory está habilitada. Si está habilitada, use PowerShell para restaurar al usuario con todos los atributos originales intactos:
Get-ADObject -Filter 'DisplayName -eq "Username"' -IncludeDeletedObjects | Restore-ADObject
Este método preserva las membresías de grupo, permisos y atributos personalizados sin ninguna pérdida de datos.
Cuando la Papelera de reciclaje de AD no está disponible, necesitarás una restauración autoritativa utilizando herramientas como Ntdsutil.exe combinadas con una copia de seguridad reciente del estado del sistema. Este proceso requiere desconectar un controlador de dominio y restaurar desde una copia de seguridad, lo que significa que algunos cambios recientes pueden perderse. La clave está en tener copias de seguridad regulares y entender que las restauraciones autoritativas afectan a todo el directorio, no solo a objetos individuales. Data Security That Starts with Identity significa que mantener la integridad completa de los atributos del usuario durante la restauración es crítico para preservar los controles de acceso y los límites de seguridad.
¿Qué hacer cuando Active Directory Recycle Bin no está habilitado?
Sin la Papelera de reciclaje de AD habilitada, tus opciones de restauración se vuelven más complejas pero no imposibles. Tu principal camino es realizar una restauración autoritativa usando Ntdsutil.exe con una copia de seguridad del estado del sistema tomada antes de que ocurriera la eliminación. Esto requiere iniciar un controlador de dominio en el Modo de restauración de servicios de directorio y restaurar la base de datos de AD desde la copia de seguridad.
El proceso de restauración autoritativa sobrescribe los cambios más recientes con datos de respaldo antiguos, por lo que perderá cualquier modificación del directorio realizada después de la copia de seguridad. Por eso importan las estrategias proactivas de respaldo: no se puede gestionar lo que no se ve, y no se puede restaurar lo que no se ha respaldado. Para protección futura, habilite inmediatamente la Papelera de Reciclaje de AD utilizando PowerShell:
Enable-ADOptionalFeature -Identity "Recycle Bin Feature" -Scope ForestOrConfigurationSet
Este paso transforma sus capacidades de recuperación de complejos procedimientos fuera de línea a sencillos comandos de PowerShell, reduciendo el tiempo de inactividad y preservando la continuidad del negocio.
Cómo restaurar atributos de AD utilizando comandos de PowerShell?
PowerShell proporciona el camino más eficiente para la restauración de atributos de AD cuando la Papelera de reciclaje está habilitada. Comience por identificar los objetos eliminados:
Get-ADObject -Filter * -IncludeDeletedObjects | Where-Object {$_.Name -like "*username*"}
Una vez que haya localizado el objeto objetivo, restáurelo completamente:
Restore-ADObject -Identity "ObjectGUID"
Para la restauración parcial de atributos en objetos existentes, utilice los comandos Set-ADUser o Set-ADObject para reconstruir atributos específicos a partir de documentación o exportaciones recientes. El enfoque práctico combina exportaciones regulares de AD utilizando Get-ADUser -Properties * con scripts de restauración que pueden reconstruir rápidamente conjuntos de atributos. Este método le brinda control granular sobre lo que se restaura sin afectar a otros objetos del directorio.
La fortaleza de PowerShell radica en su precisión: puedes restaurar exactamente lo que necesitas sin cambios colaterales. Crea scripts de restauración que documenten tu proceso y pruébalos primero en entornos no productivos. Una gestión efectiva de Identity Management requiere tanto visibilidad de lo que ha cambiado como control sobre cómo respondes a esos cambios.
¿Cuándo usar restauración autoritativa frente a no autoritativa para objetos de AD?
Elija la restauración autoritativa cuando necesite forzar cambios específicos de AD en todos los controladores de dominio, anulando modificaciones más recientes. Este método es más efectivo para recuperar objetos eliminados accidentalmente o revertir cambios masivos no autorizados. El proceso autoritativo marca los objetos restaurados con números de versión más altos, asegurando que la replicación difunda sus datos recuperados a través del dominio.
La restauración no autoritativa se adapta a escenarios de recuperación de desastres donde se reconstruye un controlador de dominio fallido sin cambiar los datos del directorio existentes. Este enfoque extrae la información actual de AD de controladores de dominio saludables en lugar de imponer los datos de respaldo en todo el dominio.
La decisión se reduce al alcance y la intención. La restauración autoritativa afecta a todo el bosque y debe usarse con moderación: es poderosa pero disruptiva. La restauración no autoritativa solo afecta al controlador de dominio local e integra sin problemas con la infraestructura existente. En ambos casos, comprender la topología de replicación y tener copias de seguridad recientes determina el éxito. Data Security That Starts with Identity significa tener múltiples opciones de recuperación y saber exactamente cuándo usar cada una.
Cómo restaurar objetos de computadora en Active Directory?
La restauración de objetos de computadora sigue principios similares a la restauración de usuarios, pero requiere consideraciones adicionales para la autenticación de máquinas y las relaciones de dominio. Cuando la Papelera de reciclaje de AD está habilitada, utilice este comando para recuperar la cuenta de computadora con todos los atributos:
Get-ADObject -Filter 'Name -eq "ComputerName"' -IncludeDeletedObjects | Restore-ADObject
Sin Recycle Bin, la restauración de la computadora se vuelve más compleja porque debes reconstruir las relaciones de confianza de la máquina. Después de una restauración autoritativa, las computadoras afectadas generalmente necesitan volver a unirse al dominio ya que sus contraseñas de cuenta de máquina pueden no sincronizarse correctamente. Planifica este paso adicional al restaurar objetos de computadora desde la copia de seguridad.
El enfoque práctico incluye documentar los atributos de los objetos de computadora antes de que ocurran problemas. Exporte regularmente los detalles de la cuenta de computadora usando PowerShell, capturando las membresías de grupo, la colocación en la unidad organizativa y los atributos personalizados. Esta documentación permite una recreación manual más rápida cuando la restauración automatizada no es posible. Los objetos de computadora representan más que simples entradas de directorio: son la base de su infraestructura de identidad de máquina, y restaurarlos incorrectamente puede romper la autenticación en todo su entorno.
Compartir en
Aprende más
Acerca del autor
Joe Dibley
Investigador de seguridad
Investigador de seguridad en Netwrix y miembro del Equipo de Investigación de Seguridad de Netwrix. Joe es un experto en Active Directory, Windows y una amplia variedad de plataformas y tecnologías de software empresarial, Joe investiga nuevos riesgos de seguridad, técnicas de ataque complejas y las mitigaciones y detecciones asociadas.
Aprende más sobre este tema
Crear usuarios de AD en masa y enviar sus credenciales por correo electrónico usando PowerShell
Cómo crear, cambiar y probar contraseñas usando PowerShell
Cómo agregar y eliminar grupos de AD y objetos en grupos con PowerShell
Confianzas en Active Directory
Ataques de ransomware a Active Directory