I campi Descrizione di Active Directory sembrano innocui perché appaiono come semplici note operative. In molti ambienti, però, diventano una scorciatoia per memorizzare password di onboarding, valori di reset per fornitori, segreti di account di servizio, commenti di handover o promemoria che non dovrebbero mai esistere in chiaro. Nel momento in cui una password finisce nell'attributo description, smette di essere una nota privata e diventa un dato di directory che può essere interrogato, esportato, sincronizzato e copiato molto tempo dopo la chiusura dell'attività originaria.
È proprio questo che rende PASSWORD_IN_DESCRIPTION un problema concreto. Un attaccante non ha bisogno di rompere un hash, eseguire password spraying o aspettare un clic di phishing se un segreto valido o facilmente indovinabile è già disponibile in LDAP. Anche quando il valore preciso non è più valido, il testo circostante continua spesso a rivelare convenzioni di reset, pattern di naming, lacune di ownership e cattive abitudini operative che facilitano le fasi successive dell'attacco.
Questo finding compare inoltre di rado da solo. Gli ambienti che tollerano password negli attributi di directory mostrano spesso anche reset informali, identità privilegiate obsolete, account di servizio senza proprietario chiaro e scarsa visibilità sulle modifiche degli attributi. Per questo va trattato come sintomo di un modello operativo fragile, non solo come un problema di pulizia del contenuto.
Che cos'è
PASSWORD_IN_DESCRIPTION indica che uno o più campi Descrizione in Active Directory contengono materiale sensibile relativo a password o indizi credibili sul segreto in uso. Può trattarsi della password completa, di un valore temporaneo per l'onboarding, di una parte della password che facilita il guessing, di una nota che segnala la mancata rotazione del segreto o di commenti operativi del tipo password temporanea impostata per il nuovo utente.
In molte organizzazioni tutto inizia con un'eccezione apparentemente ragionevole. L'helpdesk resetta un account e lascia per qualche ora il valore nella descrizione. Un amministratore annota che la password di un account di servizio non è stata cambiata durante un passaggio di consegne. Un team di progetto inserisce nel directory dettagli di accesso di un fornitore perché è più rapido che aggiornare il ticket. L'intento è la comodità; il risultato è un segreto in chiaro in uno dei repository più replicati dell'ambiente.
L'impatto varia molto in base al tipo di account interessato. Una password temporanea su un account di test a basso valore è già un problema di sicurezza, ma il rischio cresce rapidamente quando la descrizione appartiene a un account di servizio, a un amministratore, a un account di emergenza o a un'identità che può raggiungere posta, VPN, amministrazione remota o strumenti di automazione.
Come funziona
Gli attaccanti sfruttano questa debolezza con la normale enumerazione della directory. Dopo aver ottenuto qualunque foothold iniziale nel dominio, interrogano utenti, servizi e computer con la descrizione valorizzata e filtrano stringhe che somigliano a credenziali, note di reset o commenti amministrativi. Non serve alcun exploit. In molti ambienti bastano permessi di lettura LDAP e un minimo di metodo.
Esempi tipici:
Temp password: Winter2026!account VPN creato, valore iniziale inviato per telefonosvc_sql passata al team B, password invariatanon disabilitare, il backup dipende da questo account, pass = ...account nuovo assunto resettato prima dell'arrivo, cambio obbligatorio al primo logon
Anche quando la password esatta non è più valida, la nota continua ad aiutare l'attaccante. Può confermare che l'account appartiene a una funzione sensibile, che le password temporanee seguono pattern prevedibili, che la ownership di un account di servizio è poco chiara o che i team continuano a gestire segreti fuori dagli strumenti approvati.
I campi Descrizione, inoltre, raramente restano confinati in AD. Spesso finiscono copiati in export amministrativi, connettori IAM, dashboard di supporto, snapshot di audit, CMDB o strumenti di inventario. Questo amplia l'esposizione ben oltre chi può leggere direttamente la directory.
Il punto è importante perché l'accesso iniziale necessario a enumerare LDAP non deve essere sofisticato. Un account utente ottenuto tramite riuso di password, furto di sessione o una tecnica simile a quelle descritte in Attacchi NTLM Relay può bastare per iniziare a cercare note interessanti. Se poi emergono un segreto di servizio o un account sovraprivilegiato, la strada verso un compromesso più profondo si accorcia molto.
Dove compare negli ambienti reali
Il modo più utile di leggere questo problema è considerarlo come il sottoprodotto di momenti operativi comuni. I campi Descrizione fanno trapelare password soprattutto dove i team lavorano sotto pressione o non hanno un processo più sicuro a disposizione.
Onboarding e account di terze parti
Le password temporanee compaiono spesso nei processi di assunzione e cambio di ruolo. Un account viene preparato in anticipo, viene generato un valore di reset e qualcuno lo scrive nella descrizione mentre attende che l'utente telefoni, arrivi in sede o confermi la ricezione. Se nessuno ha ownership chiara della pulizia successiva, la nota può restare lì a lungo dopo il primo accesso.
Gli account di fornitori e terze parti sono ancora più rischiosi perché il loro ciclo di vita è spesso frammentato tra HR, acquisti, IT locale e team di progetto. Quando nessuno governa il flusso end-to-end, il campo Descrizione diventa un taccuino improvvisato di accessi.
Reset dell'helpdesk e urgenze di supporto
Quando un utente perde accesso poco prima di una riunione, il supporto può resettare la password, lasciare il valore nella descrizione e passare al ticket successivo. In alcuni team questa scorciatoia finisce per diventare pratica normale. Il problema non è soltanto la singola password esposta, ma l'idea di fondo secondo cui AD sarebbe un posto accettabile in cui parcheggiare un segreto durante un'operazione di supporto.
Passaggi di consegne sugli account di servizio
Gli account di servizio sono una fonte classica di note pericolose perché la loro rotazione sembra sempre difficile. Quando la responsabilità passa a un altro team, la nota può includere la password corrente, un indizio sull'applicazione che la usa o il promemoria che il segreto è stato lasciato invariato per evitare impatti. Si combinano così i due elementi peggiori: storage in chiaro e un segreto che nessuno vuole toccare.
Il rischio aumenta ulteriormente quando lo stesso account compare anche negli scenari vicini a quelli discussi in Kerberoasting: attacchi agli account di servizio o quando appartiene al gruppo di account privilegiati obsoleti in AD che nessuno vuole disabilitare perché forse sostengono ancora qualche dipendenza.
Account privilegiati e account di emergenza
Gli account di emergenza dovrebbero avere la disciplina più severa dell'intero ambiente. Nella pratica, però, accumulano talvolta note informali perché pochissime persone sanno davvero come vengono usati. Commenti come password in cassaforte, cambiata il trimestre scorso o, peggio, il valore stesso creano un percorso diretto verso accesso ad alto impatto.
Oggetti computer e note di admin locale
Alcuni team salvano nella descrizione dei computer informazioni di build o riferimenti all'amministrazione locale. Anche se l'intento è solo inventariale, qualunque password o indizio di riuso può facilitare il movimento laterale, soprattutto quando lo stesso segreto locale è condiviso su molti sistemi.
Il pattern è sempre lo stesso: il campo Descrizione finisce per sostituire vault, ticket o runbook. La debolezza è quindi tecnica e di processo insieme.
Catena di attacco
Una catena di attacco realistica resta molto semplice:
- L'attaccante compromette una workstation o un account a basso privilegio.
- Enumera gli oggetti AD con la descrizione valorizzata.
- Filtra termini come
password,pwd,pass,temp,reset,service,welcome, nomi di mesi, stagioni o riferimenti a VPN e onboarding. - Valida le credenziali trovate contro posta, VPN, SMB, RDP, amministrazione remota o applicazioni di business.
- Da lì pivota verso gruppi privilegiati, deleghe, percorsi di servizio o riuso di credenziali.
La forza di questa debolezza sta nel ridurre l'incertezza. Un normale attacco alle credenziali parte con molte domande: quali account sono attivi, quali sono importanti, quali sistemi raggiungono, come vengono scelte le password e dove si trovano i processi deboli. Le descrizioni spesso rispondono a più di una domanda nello stesso punto.
Scenari frequenti:
- una nota di onboarding espone una password temporanea ancora valida su Microsoft 365 e VPN perché il cambio al primo logon non è mai stato forzato;
- la descrizione di un account di servizio rivela sia il segreto sia il nome dell'applicazione, facilitando successiva social engineering;
- una nota su un account di emergenza conferma che quell'identità è fuori dai controlli ordinari;
- un'identità privilegiata obsoleta conserva ancora un vecchio riferimento di password e non è mai stata disabilitata per timore di rompere dipendenze.
La situazione peggiora quando sono già presenti i pattern descritti in Sicurezza delle password in Active Directory: reset informali, scarso controllo del ciclo di vita, account di servizio legacy e assenza di una verifica sistematica su dove finiscono i segreti.
Rilevazione
La rilevazione parte dal perimetro. Non conviene limitarsi agli utenti abilitati. Una revisione utile deve includere:
- utenti abilitati;
- utenti disabilitati ma ancora usati di recente;
- account amministrativi e account di emergenza;
- account di servizio;
- account di onboarding e di terze parti;
- account generici o condivisi;
- oggetti computer dove vengono salvate note operative.
Un primo sweep PowerShell spesso basta a trovare la prima ondata di esposizioni:
Get-ADUser -LDAPFilter '(description=*)' -Properties description, Enabled, PasswordLastSet, LastLogonDate |
Select-Object SamAccountName, Enabled, PasswordLastSet, LastLogonDate, Description
Dopo il primo passaggio, conviene ampliare la ricerca con pattern e non dipendere solo dalla parola password. In un ambiente italiano è utile combinare varianti locali e inglesi:
$pattern = '(?i)(password|pwd|pass\s*=|temp|temporanea|iniziale|reset|benvenuto|estate|inverno|primavera|autunno|vpn)'
Get-ADUser -LDAPFilter '(description=*)' -Properties description, Enabled, PasswordLastSet, LastLogonDate |
Where-Object { $_.Description -match $pattern } |
Select-Object SamAccountName, Enabled, PasswordLastSet, LastLogonDate, Description
Se il campo viene usato anche sugli oggetti computer:
Get-ADComputer -LDAPFilter '(description=*)' -Properties description |
Where-Object { $_.Description -match $pattern } |
Select-Object Name, Description
L'obiettivo non è contare le descrizioni non vuote, ma separare note operative innocue da voci che indicano gestione di segreti in chiaro. Il triage dovrebbe cercare:
- una password esatta o un candidato molto credibile;
- un riferimento a un reset potenzialmente ancora valido;
- un indizio sul formato della password;
- note di ownership che suggeriscono assenza di rotazione per lungo tempo;
- riferimenti a sistemi sensibili come backup, VPN, finance o amministrazione delle identità.
Un modello pragmatico di priorità può essere questo:
| Tipo di oggetto | Perché conta | Priorità |
|---|---|---|
| Utente privilegiato o account di emergenza | Un solo segreto esposto può dare accesso immediato ad alto impatto | Critica |
| Account di servizio legato a task, app o infrastruttura | La rotazione viene spesso rinviata e il blast radius può essere ampio | Alta |
| Account condiviso o obsoleto | Governance debole rende l'abuso meno visibile | Alta |
| Account di onboarding o terza parte | Le password temporanee restano valide troppo a lungo | Media-alta |
| Oggetto computer con note di admin locale | Può facilitare il movimento laterale | Media |
La rilevazione deve andare anche oltre la directory. Se il campo Descrizione viene sincronizzato in altri sistemi, l'esposizione esiste anche lì. Occorre quindi controllare:
- strumenti IAM e provisioning;
- export del service desk;
- CMDB o database inventariali;
- backup e snapshot di audit;
- script che esportano dati utenti per fini amministrativi.
Vale la pena verificare anche se le modifiche agli attributi sono monitorate. Quando l'auditing degli oggetti di directory è attivo, eventi come 5136 possono aiutare a individuare cambiamenti del campo Descrizione. Correlati con gli eventi di reset e con le pratiche descritte in Monitoraggio sicurezza AD: gli eventi che contano, permettono di vedere non solo l'esposizione attuale ma anche il processo che la reintroduce.
Ogni finding dovrebbe infine essere accompagnato da domande decisionali:
- l'account è ancora abilitato?;
- possiede privilegi o li eredita?;
- la password è stata ruotata dopo la scrittura della nota?;
- l'account si è autenticato di recente e da quali host?;
- lo stesso segreto potrebbe essere stato riutilizzato in altri sistemi?;
- la nota rivela un problema di processo che coinvolge altri account gestiti dallo stesso team?
Senza questo livello di triage, si cancella testo ma non si risponde alla domanda importante: il segreto esposto è già stato usato o si è già diffuso altrove?
Bonifica
La bonifica va gestita come un workflow di compromissione, non come una correzione cosmetica. Se una password compare in una descrizione, l'ipotesi prudente è che il segreto sia stato esposto e debba essere ruotato.
La risposta minima è:
- rimuovere la password o l'indizio dal campo Descrizione;
- resettare o ruotare il segreto interessato;
- verificare dove altro lo stesso valore potrebbe essere stato riutilizzato;
- indagare l'attività recente di autenticazione dell'account;
- correggere il processo che ha portato il segreto dentro AD.
Per gli account utente, questo significa in genere forzare un cambio password, verificare se l'account ha raggiunto di recente posta, VPN, desktop remoto o servizi SaaS e controllare se la nota rivelava anche un pattern di password temporanee riutilizzato altrove. Se l'account è privilegiato, andrebbero rivisti anche gruppi, deleghe e opportunità di movimento laterale aperte nella finestra di esposizione.
Per gli account di servizio, la bonifica è più delicata perché i team tendono a rimandare la rotazione per paura di impatti in produzione. La risposta corretta non è lasciare il segreto dov'è, ma inventariare le dipendenze e ruotare in sicurezza. Questo richiede di rivedere in particolare:
- servizi Windows;
- task schedulati;
- pool IIS;
- script e job di automazione;
- connettori applicativi e middleware;
- credenziali memorizzate in pipeline o file di configurazione.
Dove possibile, conviene spostare queste identità verso modelli gestiti come gMSA invece di mantenere un modello basato su segreti statici conosciuti da più persone.
Se l'oggetto interessato è obsoleto o senza ownership chiara, la forma più sicura di contenimento può essere disabilitarlo prima e validare le dipendenze dopo. Spesso è meglio che conservare una credenziale dubbia solo perché nessuno sa con certezza chi la utilizzi. Lo stesso problema di ownership emerge in Confronto tra strumenti di audit AD.
L'altra metà della bonifica è di processo. I team devono avere un'alternativa esplicita allo scrivere segreti in AD. In pratica, questo significa di solito:
- un vault o un workflow approvato per la condivisione temporanea;
- riferimenti al ticket invece di segreti nelle note di directory;
- checkpoint di pulizia dopo onboarding e reset del supporto;
- revisione dei proprietari degli account di servizio nei passaggi di consegne;
- limiti su chi può scrivere note su account sensibili;
- formazione chiara sul fatto che un attributo di directory non è un secret store.
Un controllo semplice ed efficace consiste nell'eseguire revisioni ricorrenti delle descrizioni valorizzate ed escalare subito ogni voce con pattern plausibili di password. In questo modo il problema diventa visibile prima del successivo audit formale.
Infine, eliminare il testo non annulla l'esposizione. Il valore potrebbe essere già stato letto, esportato, replicato o incluso in backup. Ecco perché rotazione e verifica d'uso sono essenziali. Se la nota descriveva una password riutilizzata, l'incidente può estendersi da AD a VPN, workflow di admin locale, applicazioni di business o script che ancora si fidano di quel segreto.
Come EtcSec rileva questo rischio
EtcSec identifica account la cui descrizione contiene materiale che sembra una password, note di reset o testo operativo che indica gestione di segreti in chiaro. Il finding diventa molto più utile quando viene correlato con privilegio, età della password, attività recente, obsolescenza dell'account e percorsi di attacco che trasformerebbero un singolo segreto recuperato in progresso reale per l'attaccante.
Questo contesto è fondamentale perché non tutte le esposizioni hanno la stessa urgenza. Una nota temporanea su un account disabilitato e poco rilevante resta un problema, ma non ha lo stesso peso operativo di un account di servizio attivo legato all'infrastruttura o di un'identità privilegiata con diritti permanenti.
Conclusione
Le password nei campi Descrizione sono una piccola comodità per chi opera e un rischio sproporzionato per chi difende. Espongono segreti in una directory che gli attaccanti sanno già enumerare e rivelano quasi sempre debolezze più profonde nel ciclo di vita degli account, nei processi di supporto e nella gestione delle credenziali di servizio.
Per questo il finding va trattato contemporaneamente come esposizione di segreto e come fallimento di processo: rimuovere la nota, ruotare la password, verificare dove altro il valore potrebbe essere finito e chiudere il workflow che ne ha permesso la scrittura.



