
PowerSploit - Un framework di post-exploitation per PowerShell
Esegui codice su una macchina target.
Invoke-DllInjectionInietta una DLL nel PID di processo a tua scelta.
Invoke-ReflectivePEInjectionCarica riflessivamente un file PE di Windows (DLL/EXE) nel processo di PowerShell o inietta riflessivamente una DLL in un processo remoto.
Invoke-ShellcodeInietta shellcode nel PID di processo a tua scelta o localmente all'interno di PowerShell.
Invoke-WmiCommandEsegue uno ScriptBlock di PowerShell su un computer target e restituisce il suo output formattato utilizzando WMI come canale C2.
Modifica e/o prepara gli script per l'esecuzione su una macchina compromessa.
Out-EncodedCommandComprime, codifica in Base-64 e genera output della riga di comando per un payload script di PowerShell.
Out-CompressedDllComprime, codifica in Base-64 e genera codice per caricare una DLL gestita in memoria.
Out-EncryptedScriptCripta file di testo/script.
Remove-CommentRimuove commenti e spazi bianchi extra da uno script.
Aggiungi capacità di persistenza a uno script PowerShell
New-UserPersistenceOptionConfigura le opzioni di persistenza a livello utente per la funzione Add-Persistence.
New-ElevatedPersistenceOptionConfigura le opzioni di persistenza con privilegi elevati per la funzione Add-Persistence.
Add-PersistenceAggiunge capacità di persistenza a uno script.
Install-SSPInstalla una DLL del Security Support Provider (SSP).
Get-SecurityPackagesEnumera tutti i pacchetti di sicurezza (SSP) caricati.
L'antivirus non ha scampo contro PowerShell!
Find-AVSignatureIndividua le singole firme AV di byte utilizzando lo stesso metodo di DSplit di "class101".
Tutti i tuoi dati sono miei!
Invoke-TokenManipulationElenca i token di accesso disponibili. Crea processi con token di accesso di altri utenti e impersona token di accesso nel thread corrente.
Invoke-CredentialInjectionCrea sessioni con credenziali in chiaro senza attivare il sospetto Event ID 4648 (Accesso con credenziali esplicite).
Invoke-NinjaCopyCopia un file da un volume partizionato NTFS leggendo il volume raw e analizzando le strutture NTFS.
Invoke-MimikatzCarica riflessivamente Mimikatz 2.0 in memoria utilizzando PowerShell. Può essere utilizzato per estrarre credenziali senza scrivere nulla su disco. Può essere utilizzato per qualsiasi funzionalità fornita da Mimikatz.
Get-KeystrokesRegistra i tasti premuti, l'ora e la finestra attiva.
Get-GPPPasswordRecupera la password in chiaro e altre informazioni per gli account distribuiti tramite Group Policy Preferences.
Get-GPPAutologonRecupera nome utente e password di autologon da registry.xml se distribuiti tramite Group Policy Preferences.
Get-TimedScreenshotUna funzione che acquisisce screenshot a intervalli regolari e li salva in una cartella.
New-VolumeShadowCopyCrea una nuova copia shadow del volume.
Get-VolumeShadowCopyElenca i percorsi dei dispositivi di tutte le copie shadow locali del volume.
Mount-VolumeShadowCopyMonta una copia shadow del volume.
Remove-VolumeShadowCopyElimina una copia shadow del volume.
Get-VaultCredentialMostra gli oggetti delle credenziali del Vault di Windows, comprese le credenziali web in chiaro.
Out-MinidumpGenera un minidump completo della memoria di un processo.
Get-MicrophoneAudioRegistra l'audio dal microfono di sistema e lo salva su disco.
Causa caos generale con PowerShell.
Set-MasterBootRecordCodice proof-of-concept che sovrascrive il Master Boot Record con il messaggio a tua scelta.
Set-CriticalProcessProvoca il blue screen della macchina all'uscita da PowerShell.
Strumenti per aiutare con l'elevazione dei privilegi su un target.
PowerUpRaccolta di controlli comuni per l'elevazione dei privilegi, insieme ad alcuni vettori di weaponization.
Strumenti per aiutare nella fase di ricognizione di un penetration test.
Invoke-PortscanEsegue una semplice scansione delle porte utilizzando socket regolari, basata (abbastanza) liberamente su nmap.
Restituisce i codici di stato HTTP e l'URL completo per i percorsi specificati quando viene fornito un file dizionario.
Scansiona un intervallo di indirizzi IP per i record PTR DNS.
PowerViewPowerView è una serie di funzioni che esegue l'enumerazione e lo sfruttamento della rete e del dominio Windows.
Una raccolta di dizionari utilizzati per aiutare nella fase di ricognizione di un penetration test. I dizionari sono stati presi dalle seguenti fonti.
Il progetto PowerSploit e tutti gli script individuali sono sotto licenza BSD 3-Clause salvo diversa indicazione esplicita.
Fai riferimento alla guida basata sui commenti in ogni singolo script per informazioni dettagliate sull'utilizzo.
Per installare questo modulo, sposta 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 per utente è: "$Env:HomeDrive$Env:HOMEPATH\Documents\WindowsPowerShell\Modules"
Il percorso predefinito a livello di computer è: "$Env:windir\System32\WindowsPowerShell\v1.0\Modules"
Per utilizzare il modulo, digita Import-Module PowerSploit
Per vedere i comandi importati, digita Get-Command -Module PowerSploit
Se stai usando PowerShell v3 e vuoi rimuovere il fastidioso avviso 'Do you really want to run scripts downloaded from the Internet', una volta posizionato PowerSploit nel tuo 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 è tuo amico.
Nota: Gli strumenti contenuti in questo modulo sono stati tutti progettati in modo da poter essere eseguiti singolarmente. Includerli in un modulo favorisce semplicemente una maggiore portabilità.
Abbiamo bisogno di contributi! Se hai un'ottima idea per PowerSploit, ci piacerebbe aggiungerla. Le nuove aggiunte richiederanno quanto segue:
Per tutti i contributori e futuri contributori di PowerSploit, ti chiedo di seguire questa guida di stile quando scrivi i tuoi script/moduli.