
Überwachen Sie Änderungen in Active Directory mit Replikationsmetadaten
(
d8888 8888888b. .d8888b. d8b 888 )
d88888 888 "Y88b d88P Y88b Y8P 888 (
d88P888 888 888 Y88b. 888 /\ .-"""-. /\
d88P 888 888 888 "Y888b. 88888b. 888 .d88888 .d88b. 888d888 //\/ ,,, //\
d88P 888 888 888 "Y88b. 888 "88b 888 d88" 888 d8P Y8b 888P" |/| ,;;;;;, |/|
d88P 888 888 888 "888 888 888 888 888 888 88888888 888 //\;-"""-;///\
d8888888888 888 .d88P Y88b d88P 888 d88P 888 Y88b 888 Y8b. 888 // / . / \
d88P 888 8888888P" "Y8888P" 88888P" 888 "Y88888 "Y8888 888 (| ,-| \ | / |-, |)
888 //__\.-.-./__\
888 // /.-(() ())-.\ \
888 (\ |) "---" (| /)
(| |)
Von DrunkF0x. ) (/
Tool zur Überwachung von Active Directory-Änderungen in Echtzeit, ohne alle Objekte abzurufen.
Stattdessen verwendet es Replikationsmetadaten und die Update Sequence Number (USN), um aktuelle Eigenschaften von Objekten zu filtern.
Inspiration von https://github.com/p0dalirius/LDAPmonitor
## Parameter
**DC** - FQDN des Domänencontrollers.
**Formatlist** - Ausgabe als Liste statt Tabelle.
**ExcludelastLogonTimestamp** - lastLogonTimestamp-Ereignisse aus der Ausgabe ausschließen
**DumpAllObjects** - gesamtes Active Directory vor dem Start ausgeben. Bei Änderungen werden alle vorherigen Werte angezeigt. Aber in großen Domänen auf eigenes Risiko verwenden (zeit- und ressourcenintensiv).
**Short** - in der Ausgabe werden nur AttributeName, AttributeValue, LastOriginChangeTime und Explanation angezeigt.
**Output** - XML-Datei mit der gesamten Ausgabe erstellen.
**ExcludeObjectGUID** - Active Directory-Objekt mit bestimmter GUID ausschließen.
**Sleep** - Zeitintervall zwischen Anfragen für USN-Nummer. Standardmäßig 30 Sekunden.
**USN** - Start-USN angeben.
**DisplayXML** - zuvor erfasste XML-Datei anzeigen.
## Verwendung
### Voraussetzungen
PowerShell-Modul für Active Directory
https://learn.microsoft.com/en-us/powershell/module/activedirectory/?view=windowsserver2022-ps
### Domänencomputer
Führen Sie das Modul einfach in einer PowerShell-Sitzung als Domänenbenutzer aus. Verwenden Sie für eine bessere Leistung den FQDN des Domänencontrollers anstelle der IP-Adresse.
```powershell
Import-module .\ADSpider.ps1
Invoke-ADSpider -DC DC01.domain.com
Starten Sie eine PowerShell-Sitzung mit einem Domänenbenutzer über runas. Stellen Sie sicher, dass der Domänencontroller erreichbar ist. Verwenden Sie für eine bessere Leistung den FQDN des Domänencontrollers anstelle der IP-Adresse.
## From cmd or powershell
runas /netonly /u:domain.com\MyUser powershell
## From powershell
Import-module .\ADSpider.ps1
Invoke-ADSpider -DC DC01.domain.com
https://premglitz.wordpress.com/2013/03/20/how-the-active-directory-replication-model-works/
https://learn.microsoft.com/en-us/archive/technet-wiki/51185.active-directory-replication-metadata
https://learn.microsoft.com/en-us/windows/win32/adschema/a-systemflags
https://learn.microsoft.com/en-us/windows/win32/ad/linked-attributes