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
Find-WSUS — Aiuta i difensori a individuare le proprie configurazioni WSUS a seguito di CVE-2025-59287 | Kitploit
Strumenti/GitHubGitHub/mubix/find-wsus
Strumenti DifensiviAnalisi delle VulnerabilitàAudit di ConfigurazioneRaccolta InformazioniSicurezza della Supply Chain
GitHubmubix/find-wsus

Find-WSUS

Aiuta i difensori a individuare le proprie configurazioni WSUS a seguito di CVE-2025-59287

Vedi Repository
4639 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

🧭 Find-WSUS

Scopri le configurazioni dei server WSUS negli oggetti Criteri di gruppo (GPO) — incluse le nascoste Preferenze Criteri di gruppo (GPP).

Find-WSUS è uno script PowerShell progettato per professionisti della sicurezza e amministratori di sistema per identificare tutti gli URL dei server WSUS (Windows Server Update Services) configurati tramite GPO. Rileva le configurazioni sia da:

  • Criteri dei modelli amministrativi (HKLM\Software\Policies)
  • Preferenze Criteri di gruppo (GPP) impostazioni di registro nascoste nei report XML

⚠️ Perché è importante

I server WSUS sono risorse infrastrutturali di alto valore. Se compromessi, un attaccante può distribuire “aggiornamenti” dannosi a tutti i sistemi uniti al dominio, portando a compromissione totale del dominio.

🧨 Vulnerabilità come CVE-2025-59287 dimostrano che un singolo exploit WSUS può garantire agli attaccanti il controllo dell'intero dominio.

Find-WSUS aiuta le organizzazioni a individuare ogni origine di configurazione WSUS prima che lo facciano gli attaccanti.


🔍 Il problema del “WSUS nascosto”

La maggior parte delle scansioni controlla solo:

root@kitploit:~
HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate

Tuttavia, molte organizzazioni distribuiscono la configurazione WSUS tramite Preferenze Criteri di gruppo (GPP), che modificano direttamente le chiavi di registro. Queste impostazioni non compaiono nei report GPMC standard.

✅ Find-WSUS rileva sia le configurazioni standard sia quelle basate su GPP, offrendoti una visibilità completa sul tuo ambiente.


🧩 Prerequisiti


⚙️ Utilizzo

1. Importa lo script

Carica lo script nella sessione PowerShell:

root@kitploit:~
. .\Find-WSUS.ps1

2. Esegui la scansione

Dopo l'importazione, la funzione Find-WSUS diventa disponibile.

Esempio 1: Scansione del dominio corrente

root@kitploit:~
Find-WSUS | Format-Table -AutoSize

Esempio 2: Output dettagliato

Visualizza messaggi di avanzamento dettagliati durante la scansione:

root@kitploit:~
Find-WSUS -Verbose

Esempio 3: Scansione di un dominio diverso

root@kitploit:~
Find-WSUS -Domain "child.mydomain.com" | Format-Table -AutoSize

Esempio 4: Filtra i GPO per nome

root@kitploit:~
Find-WSUS -Name "*Server*" -Verbose

Esempio 5: Ottieni un elenco univoco degli host WSUS

root@kitploit:~
$results = Find-WSUS -Domain "mydomain.com"
$results.Hostname | Where-Object { $_ } | Sort-Object -Unique

📦 Parametri


🧠 Come funziona

1. Validazione dell'ambiente

  • Verifica che PowerShell sia a 64 bit.
  • Verifica che il modulo GroupPolicy sia installato.
  • Conferma che i GPO siano accessibili nel dominio specificato.

2. Scansione dei criteri (runspace STA)

  • Usa Get-GPRegistryValue in un runspace STA per evitare errori di threading COM.

  • Cerca i valori WUServer e WUStatusServer in:

    root@kitploit:~
    HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate
    

3. Scansione delle preferenze (XML GPP)

  • Analizza l'output XML di Get-GPOReport -ReportType Xml.
  • Trova URL WSUS nascosti nei nodi con namespace (q2:Registry) e di fallback (*[local-name()='Registry']).
  • Cattura i valori scritti in HKLM, incluse le chiavi ...\Windows\WindowsUpdate.

4. Aggregazione dei risultati

  • Unisce tutti i risultati in un unico set di dati.
  • Estrae gli hostname dagli URL per una facile deduplicazione.
  • Restituisce oggetti puliti e ordinati.

🧾 Esempio di output (formato realistico)

Questo rispecchia il layout e le intestazioni reali di Format-Table -AutoSize di Find-WSUS, ma con host/URL e nomi/GUID GPO di esempio realistici.

root@kitploit:~
PS C:\Users\Administrator\Documents> Find-WSUS | Format-Table -AutoSize
[OK] Environment check passed: 64-bit PowerShell, GroupPolicy module loaded, GPOs accessible.


GPOName               Scope                 Key                                                    ValueName      Value                                    Hostname              GPOGuid                              
-------               -----                 ---                                                    ---------      -----                                    --------              -------                              
Default Domain Policy Policy (Computer)     HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate WUServer       https://wsus.corp.contoso.com:8531       wsus.corp.contoso.com 31b2f340-016d-11d2-945f-00c04fb984f9
Default Domain Policy Policy (Computer)     HKLM\Software\Policies\Microsoft\Windows\Windows\Update WUStatusServer https://wsus.corp.contoso.com:8531       wsus.corp.contoso.com 31b2f340-016d-11d2-945f-00c04fb984f9
Corporate WSUS Baseline Policy (Computer)   HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate WUServer       http://wsus01.contoso.com:8530           wsus01.contoso.com    57f2e3da-33c5-4a35-abce-c12a0b7f9823
Corporate WSUS Baseline Policy (Computer)   HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate WUStatusServer https://wsus01.contoso.com:8531          wsus01.contoso.com    57f2e3da-33c5-4a35-abce-c12a0b7f9823
Workstations - Windows Update (GPP) Preference (Registry) HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate WUStatusServer https://wsus-west.contoso.com:8531   wsus-west.contoso.com a1cde8b2-7f45-43f2-9db4-9c1e93a0e5c1

Nota: Negli ambienti reali vedrai spesso SSL su :8531 e HTTP legacy su :8530. Gli hostname sopra sono esempi; sostituiscili con il tuo inventario effettivo.


🚫 Limitazioni

[!WARNING] Questo script è uno strumento di individuazione, non un sistema di inventario completo.

Trova solo i server WSUS definiti tramite Criteri di gruppo. Non rileva:

  • Client non appartenenti al dominio o registri configurati manualmente
  • Server WSUS rogue senza collegamento ai GPO
  • Sistemi gestiti da criteri Intune o SCCM

✅ Prossimi passi consigliati

  1. Esegui Find-WSUS in tutti i domini della tua foresta.
  2. Combina l'output in un inventario centrale.
  3. Confrontalo con un EDR o uno scanner di asset per le macchine che eseguono WSUSService.
  4. Indaga su eventuali host WSUS non corrispondenti o imprevisti.

🧑‍💻 Autore e crediti

Sviluppato da ingegneri della sicurezza per esporre le configurazioni WSUS nascoste e migliorare la visibilità dell'infrastruttura di patch.

📘 Contributi benvenuti! Invia pull request o segnala problemi per migliorare la compatibilità o aggiungere nuovi metodi di individuazione.

Scarica lo strumento
RequisitoDescrizione
PowerShell a 64 bitNecessario per la compatibilità COM. Lo script termina automaticamente se eseguito in PowerShell a 32 bit.
RSAT: Strumenti di gestione criteri di gruppoRichiesto per il modulo GroupPolicy.

Windows 10/11: Impostazioni → Funzionalità facoltative → Aggiungi una funzionalità → RSAT: Strumenti di gestione criteri di gruppo
Windows Server: Server Manager → Aggiungi ruoli e funzionalità → Funzionalità → Gestione Criteri di gruppo
PermessiAccesso in lettura a tutti i GPO nel dominio sottoposto a scansione.
Facoltativo: diritti di amministratoreAlcune query sui criteri di registro potrebbero fallire senza elevazione dei privilegi.
ParametroDescrizionePredefinito
-NameFiltra i GPO per nome visualizzato usando caratteri jolly. Usa -All quando *.* (tutti i GPO)
-DomainSpecifica un dominio da interrogare (utile in foreste multi-dominio).Dominio dell'utente corrente
-VerboseMostra l'avanzamento dettagliato della scansione e i risultati.Disattivato