
Strumento di enumerazione di Active Directory basato su .NET, ispirato a PowerView. Enumera domini, utenti, computer, gruppi, condivisioni e sessioni. Supporta query LDAP, controlli di escalation dei privilegi e scoperta di movimenti laterali tramite WMI e task scheduler.
Enumerate Domain Data è progettato per essere simile a PowerView ma in .NET. PowerView è essenzialmente lo strumento definitivo per l'enumerazione dei domini e volevamo un'implementazione .NET su cui lavorare da soli. Questo strumento è stato in gran parte assemblato osservando implementazioni di diverse funzionalità in un'ampia gamma di progetti esistenti e combinandoli in EDD.
Per usare EDD, basta chiamare l'applicazione, fornire la funzione che si desidera eseguire (elencata di seguito) e fornire eventuali parametri opzionali/richiesti dalla funzione.
Argomenti:
-f, --function=VALORE la funzione che si vuole usare
-o, --output=VALORE il percorso del file dove salvare
-c, --computername=VALORE il computer di destinazione
-n, --canonicalname=VALORE nome canonico per l'utente del dominio
-d, --domainname=VALORE il computer di destinazione
-g, --groupname=VALORE il gruppo del dominio di destinazione
-p, --processname=VALORE il processo di destinazione
-fd, --filedata=PERCORSO il percorso di un file contenente dati relativi alla funzione invocata
-w, --password=VALORE la password per autenticarsi o il valore da impostare
-u, --username=VALORE l'account del dominio di destinazione
-t, --threads=VALORE il numero di thread da eseguire (default: 5)
-q, --query=VALORE filtro LDAP personalizzato per la ricerca
-a, --adright=VALORE Diritti Active Directory da restituire, separati da
virgole
-s, --search=VALORE i termini di ricerca per
FindInterestingDomainShareFile separati da una
virgola (,), accetta wildcard
--sharepath=VALORE la condivisione specifica per cercare file interessanti
-i, --info restituisce informazioni su una funzione specificata
-l, --listfunction restituisce tutte le funzioni disponibili
-h, --help mostra questo messaggio ed esce
Le seguenti funzioni possono essere utilizzate con il flag -f per specificare i dati che si desidera enumerare / l'azione da compiere.
getdomainsid - Restituisce il SID del dominio (di default il dominio corrente se non viene fornito un dominio)
getforest - restituisce il nome della foresta corrente
getforestdomains - restituisce il nome di tutti i domini nella foresta corrente
getsiddata - Converte un SID nel nome del gruppo o dominio corrispondente (usa l'opzione -u per fornire il valore SID)
getadcsservers - Ottiene un elenco di server che eseguono AD CS all'interno del dominio corrente
getdomaincomputers - Ottiene un elenco di tutti i computer nel dominio
getdomaincontrollers - Ottiene un elenco di tutti i controller di dominio
getdomainshares - Ottiene un elenco di tutte le condivisioni del dominio
getreadabledomainshares - Ottiene un elenco di tutte le condivisioni leggibili del dominio
changeaccountpassword - Cambia la password per un account target
customldapquery - Imposta un filtro LDAP arbitrario per cercare oggetti
getuserdacl - Restituisce il DACL di un oggetto di dominio specificato
getnetlocalgroupmember - Restituisce un elenco di tutti gli utenti in un gruppo locale su un sistema remoto
getdomaingroupmember - Restituisce un elenco di tutti gli utenti in un gruppo del dominio
getdomainuser - Recupera informazioni su un utente specifico (nome, descrizione, SID, gruppi di dominio)
getdomaindescriptions - restituisce oggetti di dominio con descrizioni di account non standard
getnetsession - Restituisce un elenco di account con sessioni attive sul sistema target
getnetloggedon - Restituisce un elenco di account che hanno effettuato l'accesso al sistema target
getuserswithspns - Restituisce un elenco di tutti gli account di dominio che hanno uno SPN associato
getdomaingroupsid - Recupera il SID di un gruppo
getdomainsid - Recupera il SID del dominio
getsiddata - Restituisce il nome utente a partire dal SID
joingroupbysid - Aggiunge un account a un gruppo tramite il SID del gruppo
joingroupbyname - Aggiunge un account a un gruppo tramite il nome del gruppo
findadminsch - Utilizza l'Utilità di pianificazione per interrogare i diritti di amministratore all'interno di un dominio
findadminwmi - Utilizza WMI per cercare diritti di amministratore all'interno di un dominio
finddomainprocess - Cerca un processo specifico su tutti i sistemi del dominio (richiede accesso amministrativo sui sistemi remoti)
finddomainuser - Cerca nell'ambiente del dominio un utente o gruppo specificato e tenta di trovare sessioni attive (di default cerca gli Amministratori di dominio)
findemptysystem - Cerca nel dominio sistemi senza account utente connesso
findinterestingdomainsharefile - Cerca nell'ambiente del dominio tutte le condivisioni accessibili. Una volta trovate, analizza tutti i nomi dei file per stringhe "interessanti"
findwritableshares - Enumera tutte le condivisioni nel dominio e verifica se l'account corrente può creare un file di testo nella condivisione al livello radice e a un livello di profondità.
PowerView - https://github.com/PowerShellMafia/PowerSploit/blob/master/Recon/PowerView.ps1
CSharp-Tools - https://github.com/RcoIl/CSharp-Tools
StackOverflow - Domande casuali (se questo non è in qualche modo elencato come riferimento, sappiamo che lo stiamo dimenticando :))
SharpView - https://github.com/tevora-threat/SharpView