Recupero di oggetti Active Directory utilizzando il Cestino
Nov 30, 2021
Il cestino di Active Directory consente agli utenti di recuperare gli oggetti Active Directory eliminati senza doverli ripristinare dal backup, riavviare i Active Directory Domain Services o riavviare i controller di dominio (DC).
Esploriamo esattamente come funziona il recupero degli oggetti con il Cestino e poi discutiamo delle sue limitazioni.
Contenuti correlati selezionati:
Recupero di oggetti Active Directory con il Cestino di Active Directory
Se il Cestino di Active Directory è abilitato, quando un oggetto viene eliminato, la maggior parte dei suoi attributi viene preservata per un periodo di tempo per facilitare il ripristino dell'oggetto se necessario. Durante questo periodo, l'oggetto si trova nello stato di deleted object. (Questo periodo di tempo è definito nell'attributo msDS-DeletedObjectLifetime. Per impostazione predefinita, il suo valore è quello dell'attributo tombstoneLifetime. Se il valore dell'attributo msDS-deletedObjectLifetime è nullo o l'attributo semplicemente non esiste, il suo valore viene interpretato come quello dell'attributo tombstoneLifetime. Se non c'è nemmeno un valore tombstoneLifetime, entrambi i valori predefiniti sono di 60 giorni.)
Contenuti correlati selezionati:
Una volta che il tempo dell'oggetto in stato di oggetto eliminato è terminato, l'oggetto diventa un recycled object. Un recycled object sembra sospettosamente simile a una tombstone con l'attributo isRecycled applicato e impostato su TRUE. Come una tombstone, la maggior parte dei suoi attributi viene rimossa e persiste in Active Directory per il periodo di tempo specificato dall'attributo tombstoneLifetime. Dopodiché viene ripulito dalla garbage collection di Active Directory.
Il ciclo di vita di un oggetto eliminato con il Cestino attivato si presenta così:
Come cambia un oggetto quando entra nel Cestino
Anche se il Cestino conserva più attributi dell'oggetto rispetto a una tombstone, un oggetto ripristinato non è identico all'oggetto originale. Vediamo come. Ecco un account utente che sto pianificando di eliminare:
Ecco l'oggetto nello stato di oggetto eliminato nel Cestino:
Sebbene la maggior parte degli attributi dell'oggetto venga mantenuta, ci sono alcune differenze importanti:
- L'oggetto è stato spostato.L'oggetto è stato spostato nel contenitore Deleted Objects della partizione.
- L'oggetto è stato rinominato.Il nome dell'oggetto è stato aggiornato utilizzando il Common-Name DEL:Object-Guid.
- L'oggetto possiede alcuni nuovi attributi. L'attributo isDeleted ha un valore di TRUE e l'attributo lastKnownParent è popolato. Un nuovo attributo, msDS-LastKnownRDN, è popolato con il nome distinto relativo noto dell'oggetto (questo attributo permette al Cestino di Riciclaggio di reimpostare correttamente il RDN di un oggetto durante il suo ripristino, anche se la rinominazione dell'oggetto ha comportato la troncatura del RDN originale).
- Sono stati rimossi due attributi. Gli attributi objectCategory e sAMAccountType vengono sempre rimossi da un oggetto quando questo viene eliminato. Se l’oggetto viene ripristinato, il valore di objectCategory viene automaticamente impostato sul valore più specifico presente nell’attributo objectClass dell’oggetto, mentre il valore di sAMAccountType viene calcolato in base al valore dell’attributo userAccountControl (per gli oggetti utente) o groupType (per gli oggetti gruppo).
I lettori attenti potrebbero anche notare che gli attributi manager e memberOf mancano dal mio screenshot. In realtà sono solo nascosti. Entrambi questi attributi sono link-valued (cioè, contengono riferimenti ad altri oggetti) e lo strumento che ho usato (LDP) non restituisce link disattivati a meno che non sia stato impostato il controllo astutamente nominato Return Deactivated Links. Se avessi attivato quel controllo, allora gli attributi e i loro valori sarebbero stati visibili nel mio screenshot, ma avrei perso l'occasione di questo momento didattico.
Come recuperare un oggetto dal Cestino di Active Directory
Prima di Windows Server 2012, per ripristinare un oggetto dal Cestino di AD era necessario utilizzare uno strumento LDAP o PowerShell per elencare tutti gli oggetti eliminati, setacciare una lunga lista per trovare l'oggetto desiderato e usare un altro comando PowerShell per ripristinarlo. Era una fortuna che il Cestino di AD fosse così utile, perché non era esattamente divertente da usare!
Ora, la funzionalità Cestino è disponibile nel Active Directory Administrative Center:
Come puoi vedere, puoi trovare rapidamente l'oggetto eliminato di tuo interesse utilizzando i filtri di ricerca.
Per ripristinare un oggetto, fai semplicemente clic su Restore nell'elenco delle Attività sul lato destro della finestra. Ecco l'aspetto dell'oggetto ripristinato:
Svantaggi del Cestino di Active Directory
Anche se il Cestino semplifica notevolmente il recupero degli oggetti, abbiamo riscontrato alcune limitazioni: gli oggetti vengono conservati solo per un periodo di tempo relativamente breve e alcuni dei loro attributi vanno persi. Ci sono un paio di svantaggi aggiuntivi relativi al Cestino:
- Abilitare il Cestino di Active Directory comporta una modifica dello schema. Pertanto, una volta attivato il Cestino, non è possibile disattivarlo senza un ripristino completo della foresta.
- Active Directory diventerà un po' più grande. Dopo aver abilitato il Cestino di Active Directory, gli oggetti eliminati conserveranno molte più delle loro proprietà e persisteranno più a lungo rispetto ai tombstone. Di conseguenza, Active Directory probabilmente utilizzerà un po' più spazio di quanto faceva prima.
- L'attivazione del Cestino elimina tutti i tombstone. La conseguenza più significativa dell'attivazione del Cestino è che tutti gli oggetti tombstone nella foresta cesseranno immediatamente di esistere. Molti amministratori hanno appreso questa conseguenza a loro spese.
Tuttavia, questi problemi non superano i vantaggi dell'attivazione del Cestino di Active Directory.
Recupero degli oggetti di Active Directory senza il Cestino di AD
Per illustrare il valore dell'attivazione del Cestino di Active Directory, esaminiamo cosa comporta il recupero di un oggetto AD quando il Cestino di Active Directory non è abilitato.
In un dominio senza il AD Recycle Bin abilitato, quando un oggetto di Active Directory viene eliminato, diventa un tombstone. Questo oggetto, privato della maggior parte dei suoi attributi, viene conservato nel contenitore degli Oggetti Eliminati della partizione per il periodo di tempo specificato nel tombstoneLifetime del dominio. Durante questo periodo, l'oggetto è tecnicamente recuperabile, ma i suoi attributi persi possono essere generalmente considerati irrecuperabili. Una volta raggiunto il valore di tombstoneLifetime l'oggetto viene raccolto come spazzatura fino alla non-esistenza. Questo ciclo di vita è illustrato di seguito:
Vediamo come possiamo rianimare questa lapide utilizzando la funzione Modify dell'utilità LDP:
- Fare clic con il pulsante destro del mouse sulla tombstone e selezionare l'opzione Modifica.
- Nella sezione Edit Entry, inserire il valore “isDeleted” nel campo Attribute, selezionare il pulsante di opzione Delete sotto Operation, e fare clic sul pulsante Enter per aggiungere la voce alla Entry List.
- In the Edit Entry section, enter the value “distinguishedName” in the Attribute field, enter distinguished name of object prior to its deletion in the Values field, select the Replace radio button under Operation, and click the Enter button to add the entry to the Entry List.
Remember when I mentioned that the lastKnownParent attribute might end up being useful? Well, if you don’t know what the object’s dn was prior its deletion, you can try this trick: Take the current dn and replace the NULL terminated character (“A”) and everything to its right with the current value of the lastKnownParent attribute. - Seleziona l'opzione Extended in basso a sinistra del pannello.
- Fai clic sul pulsante Run.
Poi possiamo ritrovare l'oggetto reanimato e vedere com'è:
Come puoi vedere, abbiamo tecnicamente recuperato l'oggetto utente cancellato. Tuttavia, manca della maggior parte delle informazioni che possedeva prima della sua eliminazione.
In teoria, è possibile aggirare questo problema effettuando regolari snapshot VSS di Active Directory. Quindi, se è necessario recuperare un oggetto eliminato, si può "solo" trovare un backup eseguito prima dell'eliminazione dell'oggetto, montare lo snapshot utilizzando NTDSUTIL, connettersi allo snapshot montato tramite uno strumento LDAP, localizzare l'oggetto, esportarlo in... lascia perdere.
Ma aspetta, peggiora ancora.
Il contenitore degli oggetti eliminati non è qualcosa di eterno. La proprietà opportunamente denominata tombstoneLifetime sull'oggetto CN=Directory Service,CN=Windows NT,CN-Services,CN=Configuration,ForestDistinguishedName definisce il numero di giorni prima che un oggetto eliminato venga rimosso definitivamente da Active Directory.
Il valore di tombstoneLifetime è basato sulla versione di Windows Server che è stata coinvolta nella creazione della foresta del dominio. È impostato di default a 180 giorni (l'impostazione raccomandata attuale di Microsoft) nelle foreste create utilizzando una versione di Windows Server più recente del 2003. Le implementazioni più vecchie predefiniscono 60 giorni. Il comportamento della proprietà tombstoneLifetime è in realtà qualcosa a cui vale la pena prestare attenzione ed è piuttosto interessante. Se il valore esiste, la durata del tombstone è quella specificata. A meno che il valore non sia inferiore a 2; in tal caso, la durata del tombstone predefinita è di 60 giorni (da Windows 2000 Server a Windows Server 2008) o di 2 giorni (da Windows Server 2008 R2 in poi). Se nessun valore è specificato, il valore è di 60 giorni.
Se sei curioso di conoscere il valore di tombstoneLifetime nel tuo ambiente, questo script PowerShell lo restituirà per te (richiede gli strumenti AD DS e AD LDS):
(Get-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,$((Get-ADRootDSE).configurationNamingContext)" -Properties *).tombstoneLifetime
Una volta che un oggetto ha trascorso un tombstoneLifetime nel contenitore degli oggetti eliminati, viene logicamente cancellato dalla raccolta dei rifiuti di Active Directory. A quel punto, è andato e non tornerà mai più.
Come Netwrix può aiutare
Il Cestino di Active Directory è uno strumento utile per recuperare oggetti eliminati di recente. Per una soluzione più completa, prendi in considerazione Netwrix Recovery for Active Directory. Ti permette di ripristinare oggetti precedentemente salvati in backup che hanno superato il tempo di vita dell'oggetto eliminato della foresta mdDS-DeletedObjectLifetime e quindi non sono più recuperabili utilizzando il Cestino di Active Directory
Condividi su
Scopri di più
Informazioni sull'autore
Kevin Joyce
Direttore della Product Management
Direttore di Product Management presso Netwrix. Kevin ha una passione per la sicurezza informatica, in particolare per comprendere le tattiche e le tecniche che gli aggressori utilizzano per sfruttare gli ambienti delle organizzazioni. Con otto anni di esperienza nel product management, concentrandosi su Active Directory e la sicurezza di Windows, ha trasformato quella passione nell'aiutare a costruire soluzioni per le organizzazioni per proteggere le loro identità, infrastrutture e dati.
Scopri di più su questo argomento
Creare utenti AD in massa e inviare le loro credenziali tramite PowerShell
Come creare, modificare e testare le password utilizzando PowerShell
Come aggiungere e rimuovere gruppi AD e oggetti nei gruppi con PowerShell
Attributi di Active Directory: Ultimo accesso
Fiducie in Active Directory