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
PowerSploit — PowerSploit - A PowerShell Post-Exploitation Framework | Kitploit
Strumenti/GitHubGitHub/zerodaylab/powersploit
Penetration Testing FrameworksPrivilege EscalationReconnaissanceExploit FrameworksPersistence MechanismsIDS/IPS EvasionData ExfiltrationCommand and ControlRed TeamingPayload Development
GitHubzerodaylab/powersploit
239294 anni 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

PowerSploit

PowerSploit - A PowerShell Post-Exploitation Framework

Vedi Repository

Fork creato per aggiungere alcune funzionalità a PowerView.ps1 che eseguo comunemente manualmente

Questo progetto non è più supportato

PowerSploit è una raccolta di moduli Microsoft PowerShell che possono essere utilizzati per assistere i penetration tester durante tutte le fasi di una valutazione. PowerSploit è composto dai seguenti moduli e script:

CodeExecution

Esegue codice su una macchina target.

Invoke-DllInjection

Inietta una DLL nel process ID che scegli.

Invoke-ReflectivePEInjection

Carica in modalità riflessiva un file PE Windows (DLL/EXE) nel processo di PowerShell, oppure inietta in modalità riflessiva una DLL in un processo remoto.

Invoke-Shellcode

Inietta shellcode nel process ID che scegli oppure localmente all'interno di PowerShell.

Invoke-WmiCommand

Esegue uno ScriptBlock di PowerShell su un computer target e restituisce il relativo output formattato utilizzando WMI come canale C2.

ScriptModification

Modifica e/o prepara script per l'esecuzione su una macchina compromessa.

Out-EncodedCommand

Comprime, codifica in Base-64 e genera output da riga di comando per uno script payload di PowerShell.

Out-CompressedDll

Comprime, codifica in Base-64 e produce codice generato per caricare una DLL gestita in memoria.

Out-EncryptedScript

Cripta file di testo/script.

Remove-Comment

Rimuove i commenti e gli spazi bianchi extra da uno script.

Persistence

Aggiunge capacità di persistenza a uno script PowerShell

New-UserPersistenceOption

Configura le opzioni di persistenza a livello utente per la funzione Add-Persistence.

New-ElevatedPersistenceOption

Configura le opzioni di persistenza elevata per la funzione Add-Persistence.

Add-Persistence

Aggiunge capacità di persistenza a uno script.

Install-SSP

Installa una DLL del provider di supporto per la sicurezza (SSP).

Get-SecurityPackages

Enumera tutti i pacchetti di sicurezza caricati (SSP).

AntivirusBypass

L'AV non ha alcuna possibilità contro PowerShell!

Find-AVSignature

Individua le firme AV a byte singolo utilizzando lo stesso metodo di DSplit di "class101".

Exfiltration

Tutti i tuoi dati appartengono a me!

Invoke-TokenManipulation

Elenca i token di accesso disponibili. Crea processi con i token di accesso di altri utenti e impersona i token di accesso nel thread corrente.

Invoke-CredentialInjection

Crea accessi con credenziali in chiaro senza innescare un sospetto Event ID 4648 (Accesso con credenziali esplicite).

Invoke-NinjaCopy

Copia un file da un volume partizionato NTFS leggendo il volume grezzo e analizzando le strutture NTFS.

Invoke-Mimikatz

Carica in modalità riflessiva Mimikatz 2.0 in memoria utilizzando PowerShell. Può essere utilizzato per eseguire il dump delle credenziali senza scrivere nulla su disco. Può essere utilizzato per qualsiasi funzionalità fornita da Mimikatz.

Get-Keystrokes

Registra i tasti premuti, l'ora e la finestra attiva.

Get-GPPPassword

Recupera la password in chiaro e altre informazioni per gli account propagati tramite le Preferenze dei Criteri di gruppo.

Get-GPPAutologon

Recupera nome utente e password di autologon da registry.xml se distribuiti tramite le Preferenze dei Criteri di gruppo.

Get-TimedScreenshot

Una funzione che acquisisce screenshot a intervalli regolari e li salva in una cartella.

New-VolumeShadowCopy

Crea una nuova copia shadow del volume.

Get-VolumeShadowCopy

Elenca i percorsi dei dispositivi di tutte le copie shadow dei volumi locali.

Mount-VolumeShadowCopy

Monta una copia shadow del volume.

Remove-VolumeShadowCopy

Elimina una copia shadow del volume.

Get-VaultCredential

Mostra gli oggetti credenziali del vault di Windows, incluse le credenziali web in chiaro.

Out-Minidump

Genera un minidump della memoria completa di un processo.

Get-MicrophoneAudio

Registra l'audio dal microfono di sistema e lo salva su disco

Mayhem

Causa scompiglio generale con PowerShell.

Set-MasterBootRecord

Codice proof of concept che sovrascrive il master boot record con il messaggio di tua scelta.

Set-CriticalProcess

Causa il blue screen della tua macchina all'uscita da PowerShell.

Privesc

Strumenti per aiutare con l'escalation dei privilegi su un target.

PowerUp

Raccolta di controlli comuni per l'escalation dei privilegi, insieme ad alcuni vettori di weaponizzazione.

Recon

Strumenti per supportare la fase di ricognizione di un penetration test.

Invoke-Portscan

Esegue una semplice scansione delle porte usando socket normali, basata (abbastanza) liberamente su nmap.

Get-HttpStatus

Restituisce i codici di stato HTTP e l'URL completo per i percorsi specificati quando viene fornito un file dizionario.

Invoke-ReverseDnsLookup

Scansiona un intervallo di indirizzi IP per i record DNS PTR.

PowerView

PowerView è una serie di funzioni che esegue enumerazione e sfruttamento di rete e domini Windows.

Recon\Dictionaries

Una raccolta di dizionari utilizzata per supportare la fase di ricognizione di un penetration test. I dizionari sono stati presi dalle seguenti fonti.

  • admin.txt - http://cirt.net/nikto2/
  • generic.txt - http://sourceforge.net/projects/yokoso/files/yokoso-0.1/
  • sharepoint.txt - http://www.stachliu.com/resources/tools/sharepoint-hacking-diggity-project/

License

Il progetto PowerSploit e tutti i singoli script sono sotto licenza BSD 3-Clause salvo diversa indicazione esplicita.

Usage

Fare riferimento alla guida basata sui commenti in ogni singolo script per informazioni dettagliate sull'utilizzo.

Per installare questo modulo, inserisci l'intera cartella PowerSploit in una delle tue directory dei moduli. I percorsi predefiniti dei moduli PowerShell sono elencati nella variabile d'ambiente $Env:PSModulePath.

Il percorso predefinito del modulo per utente è: "$Env:HomeDrive$Env:HOMEPATH\Documents\WindowsPowerShell\Modules" Il percorso predefinito del modulo a livello di computer è: "$Env:windir\System32\WindowsPowerShell\v1.0\Modules"

Per usare il modulo, digitare Import-Module PowerSploit

Per vedere i comandi importati, digitare Get-Command -Module PowerSploit

Se utilizzi PowerShell v3 e vuoi rimuovere il fastidioso avviso 'Vuoi davvero eseguire script scaricati da Internet?', dopo aver inserito PowerSploit nel percorso dei moduli, esegui il seguente one-liner: $Env:PSModulePath.Split(';') | % { if ( Test-Path (Join-Path $_ PowerSploit) ) {Get-ChildItem $_ -Recurse | Unblock-File} }

Per aiuto su ogni singolo comando, Get-Help è il tuo amico.

Nota: gli strumenti contenuti in questo modulo sono stati tutti progettati per poter essere eseguiti singolarmente. Includerli in un modulo serve semplicemente ad aumentarne la portabilità.

Contribution Rules

Abbiamo bisogno di contributi! Se hai un'ottima idea per PowerSploit, ci piacerebbe aggiungerla. Le nuove aggiunte richiederanno quanto segue:

  • Lo script deve attenersi alla guida di stile. Qualsiasi eccezione alla linea guida richiederebbe un motivo esplicito e valido.
  • Il manifest del modulo deve essere aggiornato per riflettere la nuova funzione aggiunta.
  • Una breve descrizione della funzione dovrebbe essere aggiunta a questo README.md
  • I test Pester devono accompagnare tutte le nuove funzioni. Vedi la cartella Tests per esempi, ma cerchiamo test che coprano almeno le basi, testando input/output attesi/inattesi e che la funzione mostri la funzionalità desiderata. Assicurati che la funzione superi tutti i test (preferibilmente su più sistemi operativi) prima di inviare una pull request. Grazie!

Script Style Guide

Per tutti i contributori e i futuri contributori di PowerSploit, chiedo di seguire questa guida di stile quando scrivete i vostri script/moduli.

  • Evita Write-Host a tutti i costi. Le funzioni/cmdlet di PowerShell non sono utility da riga di comando! Le pull request contenenti codice che usa Write-Host non verranno prese in considerazione. Dovresti invece restituire oggetti personalizzati. Per maggiori informazioni sulla creazione di oggetti personalizzati, leggi questi articoli:

    • http://blogs.technet.com/b/heyscriptingguy/archive/2011/05/19/create-custom-objects-in-your-powershell-script.aspx
    • http://technet.microsoft.com/en-us/library/ff730946.aspx
  • Se vuoi visualizzare informazioni di debug pertinenti sullo schermo, usa Write-Verbose. L'utente può sempre semplicemente aggiungere '-Verbose'.

  • Fornisci sempre una guida descrittiva basata sui commenti per ogni script. Inoltre, assicurati di includere il tuo nome e una licenza BSD 3-Clause (a meno che non ci siano circostanze attenuanti che impediscano l'applicazione della licenza BSD).

  • Assicurati che tutte le funzioni seguano il corretto accordo verbo-sostantivo di PowerShell. Usa Get-Verb per elencare i verbi predefiniti usati da PowerShell. Le eccezioni ai verbi supportati saranno valutate caso per caso.

  • Preferisco che i nomi delle variabili siano in maiuscolo e il più descrittivi possibile.

  • Fornisci spaziatura logica tra il codice. Indenta il codice per renderlo più leggibile.

  • Se ti accorgi di ripetere codice, scrivi una funzione.

  • Gestisci tutti gli errori previsti e fornisci output significativi. Se hai un errore che dovrebbe fermare l'esecuzione dello script, usa 'Throw'. Se hai un errore che non deve fermare l'esecuzione, usa Write-Error.

  • Se stai scrivendo uno script che interfaccia con l'API Win32, cerca di evitare di compilare C# inline con Add-Type. Cerca di usare il modulo PSReflect, se possibile.

  • Non usare percorsi hardcoded. Uno script dovrebbe essere utilizzabile subito, senza modifiche. Nessuno dovrebbe dover modificare il codice a meno che non voglia.

  • La compatibilità con PowerShell v2 è molto desiderata.

  • Usa parametri posizionali e rendi i parametri obbligatori quando ha senso farlo. Ad esempio, cerco qualcosa come il seguente:

    • [Parameter(Position = 0, Mandatory = $True)]
Scarica lo strumento
  • Non usare alias a meno che non abbia senso per ricevere input dalla pipeline. Rendono il codice più difficile da leggere per chi non ha familiarità con un particolare alias.

  • Cerca di non far andare troppo in lungo i comandi. Ad esempio, una pipeline è un punto naturale per un'interruzione di riga.

  • Non esagerare con i commenti inline. Usali solo quando alcuni aspetti del codice potrebbero creare confusione nel lettore.

  • Invece di usare Out-Null per sopprimere output indesiderati/irrilevanti, salva l'output indesiderato in $null. In questo modo si ottiene un leggero miglioramento delle prestazioni.

  • Usa valori predefiniti per i tuoi parametri quando ha senso. Idealmente, vuoi uno script che funzioni senza richiedere alcun parametro.

  • Se uno script crea oggetti personalizzati complessi, includi un file ps1xml che formatti correttamente l'output dell'oggetto.