Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
gpoParser — gpoParser è uno strumento progettato per estrarre e analizzare le configurazioni applicate tramite gli oggetti Criteri di gruppo (GPO) in un ambiente Active Directory. | Kitploit
Strumenti/GitHubGitHub/synacktiv/gpoparser
Escalation di PrivilegiRicognizioneAnalisi delle VulnerabilitàMovimento LateraleAudit di ConfigurazioneRaccolta InformazioniPost-ExploitPenetration TestingConfigurazione ErrataRed Teaming
GitHubsynacktiv/gpoparser
369353 mesi faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

gpoParser

gpoParser è uno strumento progettato per estrarre e analizzare le configurazioni applicate tramite gli oggetti Criteri di gruppo (GPO) in un ambiente Active Directory.

Vedi Repository

gpoParser

gpoParser è uno strumento progettato per estrarre e analizzare le configurazioni applicate tramite Group Policy Objects (GPO) in un ambiente Active Directory. Poiché l'enumerazione di queste impostazioni può essere noiosa e richiedere molto tempo, questo strumento fornisce una comprensione più chiara delle policy applicate e aiuta a identificare configurazioni pericolose che potrebbero consentire movimento laterale o escalation di privilegi. È stato presentato a leHack 2025 e DEFCON 33.

Installazione

Nota: dipendenza necessaria per il pacchetto gssapi: libkrb5-dev, installabile con sudo apt install libkrb5-dev (o tramite il proprio gestore di pacchetti)

root@kitploit:~
pipx install git+https://github.com/synacktiv/gpoParser

Funzionalità

root@kitploit:~
$ gpoParser -h
usage: gpoParser [-h] {local,remote,display,query,enrich} ...

GPO Analysis Tool

positional arguments:
  {local,remote,display,query,enrich}
                        Choose mode
    local               Parse GPOs locally
    remote              Parse GPOs via remote LDAP/SYSVOL
    display             Display parsed GPO contents
    query               Query GPO parser results in order to display affected computers
    enrich              Enrich BloodHound with new edges

options:
  -h, --help            show this help message and exit

Recupero GPO in modalità online o offline

Online: Si connette alla directory LDAP per raccogliere informazioni relative alle GPO e i loro attributi (flags, gPLink, gPOptions e altro). Si connette inoltre alla condivisione SYSVOL per raccogliere i file di configurazione delle GPO.

root@kitploit:~
$ gpoParser remote -h
usage: gpoParser remote [-h] [-s SERVER] [-d DOMAIN] [-u USER] [-p PASSWORD] [-H HASH] [-k] [-o OUTPUT]

options:
  -h, --help            show this help message and exit
  -s, --server SERVER   LDAP server IP or FQDN (ex: ldap://192.168.57.5 or ldaps://dc.corp.local)
  -d, --domain DOMAIN   Domain name tied to the user
  -u, --user USER       Username
  -p, --password PASSWORD
                        Password
  -H, --hash HASH       NTLM authentication, format is [LM:]NT
  -k, --kerberos        Use Kerberos authentication
  -o, --output OUTPUT   Output filename and location (default ./cache_gpoParser_<timestamp>.json)

$ gpoParser remote -u bob -p password -d corp -s 192.168.57.5
Retrieving \CORP.LOCAL\Policies\{008B0634-C0B9-443A-A06A-E2BAD875E27F}\Machine/Microsoft/Windows NT/SecEdit/GptTmpl.inf
Retrieving \CORP.LOCAL\Policies\{008B0634-C0B9-443A-A06A-E2BAD875E27F}\Machine/Preferences/Groups/Groups.xml
Retrieving \CORP.LOCAL\Policies\{008B0634-C0B9-443A-A06A-E2BAD875E27F}\Machine/Preferences/Registry/Registry.xml
[...]
Information saved to cache, now use display / query features

Offline: Richiede una copia (parziale) della directory LDAP e il contenuto della cartella Policies della condivisione SYSVOL. Attualmente, la raccolta della directory LDAP si basa su:

  • ldeep
  • ADExplorerSnapshot formato di output Objects (NDJSON)
root@kitploit:~
$ gpoParser local -h
usage: gpoParser local [-h] [-f {ldeep,adexplorer}] [-o OUTPUT] sysvol_folder ldap_folder

positional arguments:
  sysvol_folder         SYSVOL folder containing the policies
  ldap_folder           Folder with LDAP dump in ldeep format

options:
  -h, --help            show this help message and exit
  -f {ldeep,adexplorer}, --format {ldeep,adexplorer}
                        JSON files input format (default ldeep)
  -o OUTPUT, --output OUTPUT
                        Output filename and location (default ./cache_gpoParser_<timestamp>.json)

$ mkdir sysvol && cd sysvol &&  echo -e 'prompt\nrecurse\nmget *' | smbclient -W CORP -U bob%password //192.168.57.5/SYSVOL

$ mkdir ldap && ldeep ldap -u bob -p password -d corp.local -s 192.168.57.5 all ldap/corp

$ gpoParser local sysvol/ ldap/
Information saved to cache, now use display / query features

Visualizzazione

Questa modalità mostra tutte le modifiche di configurazione applicate dalle GPO, limitate ai formati supportati e ai dati analizzati. È possibile filtrare i risultati per nome GPO o GUID.

root@kitploit:~
$ gpoParser display -h
usage: gpoParser display [-h] [-g GPO] [-c CACHE]

options:
  -h, --help            show this help message and exit
  -g GPO, --gpo GPO     Filter by GPO name or GUID
  -c CACHE, --cache CACHE
                        Cache file location (default: ./cache_gpoParser_<timestamp>.json)

$ gpoParser display
Cache file found, using it
{6F3821B3-89B2-496D-82A5-58092D3EA588}: AddAdmin
Computer configuration
   Groups
      The following principals are added to BUILTIN\Administrators
         CORP\admin
{ADC96BD4-86D3-4516-BCF2-F7BDD5A76366}: AddRDP
Computer configuration
   Groups
      The following principals are added to BUILTIN\Remote Desktop Users
         CORP\bob
[...]

$ gpoParser display -g work
Cache file found, using it
{474D47E2-2B77-4E37-9744-A3CF6AB04449}: Workstation admins
Computer configuration
   Groups
      The following principals are added to BUILTIN\Administrators
         CORP\Admin - All Workstations

Query

Questa vista mostra le relazioni tra le GPO e i computer. Ad esempio, è possibile vedere a quali computer si applica una GPO o quali modifiche vengono applicate a uno o più computer.

root@kitploit:~
$ gpoParser query -h
usage: gpoParser query [-h] [-g GPO] [-C COMPUTER] [-c CACHE]

options:
  -h, --help            show this help message and exit
  -g GPO, --gpo GPO     Filter by GPO name or GUID
  -C COMPUTER, --computer COMPUTER
                        Computer name or distinguishedName to filter on
  -c CACHE, --cache CACHE
                        Cache file location (default: ./cache_gpoParser_<timestamp>.json)

$ gpoParser query
Cache file found, using it
{6F3821B3-89B2-496D-82A5-58092D3EA588}: AddAdmin
This GPO affects the following computers:
CN=SRV55,OU=PROD,OU=Servers,DC=CORP,DC=LOCAL
CN=SRV54,OU=PROD,OU=Servers,DC=CORP,DC=LOCAL
CN=SRV53,OU=PROD,OU=Servers,DC=CORP,DC=LOCAL
CN=SRV52,OU=PROD,OU=Servers,DC=CORP,DC=LOCAL

{6AC1786C-016F-11D2-945F-00C04FB984F9}: Default Domain Controllers Policy
This GPO affects the following computers:
CN=DC01,OU=Domain Controllers,DC=CORP,DC=LOCAL

{31B2F340-016D-11D2-945F-00C04FB984F9}: Default Domain Policy
This GPO affects the following computers:
CN=SRV51,OU=SUBSUB,OU=SUB,DC=CORP,DC=LOCAL
CN=SRV49,OU=SUB,DC=CORP,DC=LOCAL
CN=SRV50,OU=SUB,DC=CORP,DC=LOCAL
CN=SRV55,OU=PROD,OU=Servers,DC=CORP,DC=LOCAL
[...]


$ gpoParser query -C wks
Cache file found, using it
CN=WKS01,OU=ADMIN,OU=WORKSTATIONS,DC=CORP,DC=LOCAL
{31B2F340-016D-11D2-945F-00C04FB984F9}: Default Domain Policy
Computer configuration
   Registry
      The following registry key changes have been made
      Action: Create
      Path: MACHINE\System\CurrentControlSet\Control\Lsa\NoLMHash
      Value: 4,1
      The following registry key changes have been made
      Action: Update
      Hive: HKEY_LOCAL_MACHINE
      Path: SYSTEM\CurrentControlSet\Services\Dnscache\Parameters
      Name: EnableMDNS
      Value: 00000000

Arricchimento di BloodHound

Analizza le informazioni delle GPO per creare archi aggiuntivi come AdminTo, CanRDP e CanPSRemote, identificando opportunità di movimento laterale che BloodHound potrebbe non rilevare nativamente. Gli archi vengono aggiunti connettendosi direttamente al database Neo4j.

root@kitploit:~
$ gpoParser enrich -h
usage: gpoParser enrich [-h] [-u USER] [-p PASSWORD] [-s SERVER] [-c CACHE]

options:
  -h, --help            show this help message and exit
  -u USER, --user USER  Username for neo4j authentication (default: neo4j)
  -p PASSWORD, --password PASSWORD
                        Password for neo4j authentication (default: bloodhoundcommunityedition)
  -s SERVER, --server SERVER
                        Neo4j server URI (default: bolt://localhost:7687)
  -c CACHE, --cache CACHE
                        Cache file location (default: ./cache_gpoParser_<timestamp>.json)

Limitazioni

L'ingestione di dati offline introduce alcune limitazioni: parametri come lo stato di ereditarietà, lo stato di configurazione di utenti/computer, i filtri di sicurezza, i filtri WMI e il targeting a livello di elemento (item-level targeting) potrebbero non essere sempre raccolti o interpretati dagli strumenti esistenti (BloodHound, PowerView, GPOHound). gpoParser terrà progressivamente conto di tutti questi parametri con il proseguire del suo sviluppo. Ulteriori raccoglitori di dati verranno introdotti man mano che gli strumenti si evolvono.

Scarica lo strumento