ChatGPT
Il modello GPT di OpenAI: risponde a domande, scrive e corregge codice, riassume documenti e supporta analisi complesse.
Claude
L'AI di Anthropic: eccelle nell'analisi di testi lunghi, ragionamento logico, scrittura e compiti che richiedono precisione.
Gemini
AI multimodale di Google: elabora testo, immagini e codice. Integrata con Search e Workspace per produttività avanzata.
Copyfish
Seleziona qualsiasi area dello schermo per estrarne il testo tramite OCR. Funziona su immagini, screenshot, PDF e YouTube.
Fonts Ninja
Passa il mouse su qualsiasi testo e scopri immediatamente nome del font, peso, dimensione e stili.
Keepa
Mostra il grafico storico del prezzo di qualsiasi prodotto Amazon. Imposta un alert quando il prezzo scende sotto una soglia.
Simple Allow Copy
Riabilita la selezione e la copia del testo su siti che la bloccano tramite JavaScript. Funziona anche sui siti che disabilitano il tasto destro.
Wappalyzer
Con un'icona nella toolbar rivela le tecnologie di qualsiasi sito: CMS, framework JS, CDN, analytics, server e molto altro.
Colour Contrast
Verifica che il rapporto di contrasto tra testo e sfondo rispetti gli standard WCAG 2.1 AA/AAA. Indispensabile per siti accessibili.
Imagecolorpicker
Carica un'immagine o inserisci l'URL di un sito e campiona qualsiasi pixel per ottenere il codice HEX, RGB e HSL del colore.
Pigment
Genera palette armoniose con un'interfaccia visiva intuitiva. Sposta le variabili di tonalità e saturazione per trovare la combinazione perfetta.
Ricognizione Attiva
DNSRecon
Enumerazione DNS avanzata: zone transfer, brute force sottodomini, record SRV, reverse lookup e verifica DNSSEC.
EyeWitness
Cattura screenshot automatici di siti web e servizi esposti, organizzandoli in un report HTML navigabile. Essenziale per la ricognizione massiva.
HTTrack
Scarica e clona interi siti web in locale per analisi offline. Utile per esaminare la struttura di un sito senza generare traffico continuo.
WafW00f
Rileva la presenza e il tipo di Web Application Firewall (WAF) su un sito. Supporta oltre 150 firewall diversi.
WhatWeb
Identifica oltre 1800 tecnologie web: CMS, framework, linguaggi, plugin, server e versioni. Ottimo per fingerprinting rapido.
Wireshark
Il più diffuso analizzatore di rete: cattura pacchetti in tempo reale, ispeziona centinaia di protocolli e filtra il traffico con regole avanzate.
Ricognizione Passiva
DNSDumpster
Mappa visuale di tutti i record DNS di un dominio: sottodomini, MX, TXT, A record. Tutto senza toccare il target direttamente.
Google Dork
Ricerche avanzate su Google tramite operatori speciali (site:, filetype:, inurl:) per trovare informazioni esposte inavvertitamente.
Netcraft
Identifica le tecnologie usate da un sito, storico dei server, hosting provider e traccia l'infrastruttura di un target nel tempo.
OWASP Amass
Enumerazione massiva di sottodomini da fonti pubbliche: certificate transparency, DNS bruteforce, API esterne e web scraping.
OWASP WSTG
Web Security Testing Guide v4: checklist metodologica completa per testare la sicurezza di applicazioni web in modo sistematico.
Sublist3r
Enumerazione rapida di sottodomini da fonti pubbliche: Google, Bing, Baidu, Netcraft, VirusTotal e DNSDumpster.
Whois DomainTools
Ricerca informazioni sul proprietario di un dominio, date di registrazione, server DNS, storico IP e connessioni tra domini.
Scanning & Enumerazione
Burp Suite
La piattaforma di pentesting web più usata al mondo: proxy intercettante, scanner, intruder e repeater per analizzare e manipolare il traffico HTTP/S.
Gobuster
Brute force di directory e file nascosti su server web. Supporta anche enumerazione di sottodomini e vhost con wordlist personalizzabili.
Nikto
Scanner di vulnerabilità web automatico: rileva versioni obsolete, file esposti, LFI, header mancanti e oltre 6700 problemi noti.
OWASP ZAP
Proxy e scanner di vulnerabilità web interattivo. Rileva XSS, SQLi, CSRF e altri attacchi tramite spider automatico e testing manuale.
XSS Scanner
Scanner online che rileva automaticamente vulnerabilità XSS nei form e nei parametri URL di un sito, con report dettagliato.
XSSer
Framework automatico per rilevare, sfruttare e reportare vulnerabilità XSS. Supporta bypass di filtri, encoding multipli e iniezione in parametri GET/POST/Cookie.
Shell & Payload
RevShells
Genera automaticamente payload di reverse shell in oltre 20 linguaggi. Basta inserire IP e porta, copia il comando e sei pronto.
Laudanum
Set di web shell pronte per il pentesting (PHP, ASP, ASPX, JSP). Usate per simulare accesso remoto su server compromessi durante i test.
SQL Injection
PayloadsAllTheThings
Raccolta curata di payload per NoSQL Injection (MongoDB, CouchDB, Redis). Include bypass di autenticazione, estrazione dati e tecniche blind.
PentestMonkey
Cheatsheet di riferimento per SQL Injection su MySQL, PostgreSQL e MSSQL: sintassi, commenti, concatenazione, lettura file, shell e versioni DBMS.
SQL Injection Payloads
Wordlist di payload SQLi pronti per il fuzzing: bypass di login, UNION-based, blind, error-based e time-based. Ottimo con ZAP Fuzzer o Burp Intruder.
SQLMap
Tool open-source per il rilevamento e lo sfruttamento automatico di SQL Injection. Supporta tutti i principali DBMS e tecniche: blind, error-based, time-based, UNION.
Tool
CyberChef
Strumento dell'intelligence britannica (GCHQ): decodifica/codifica Base64, XOR, hashing, analisi binaria e centinaia di altre operazioni su dati.
ExploitDB
Repository ufficiale di exploit pubblici. Permette di cercare CVE, codice proof-of-concept e shellcode per vulnerability research e pentesting.
Malwarebytes
Controlla se il tuo indirizzo email o numero di telefono è stato compromesso in data breach noti e mostra quali dati sono esposti.
UltimateWindowsSecurity
Database completo di eventi Windows e ID Sysmon con descrizioni dettagliate. Indispensabile per l'analisi dei log e il rilevamento di minacce.
Zone Transfer
dig
Utility da riga di comando per interrogazioni DNS. Supporta zone transfer AXFR, query inverse, DNSSEC e output personalizzabile per scripting.
DNSViz
Visualizzazione grafica della catena DNS e DNSSEC di un dominio. Mostra la propagazione dei record e identifica anomalie nella delega e nella firma.
HackerTarget
Tool online che testa il zone transfer AXFR direttamente da browser senza installare nulla. Mostra i record esposti se il server è mal configurato.
IntoDNS
Analisi completa della configurazione DNS e mail di un dominio. Evidenzia errori, warning e best practice per ogni record.
MXToolbox
Suite online di diagnostica DNS: verifica record MX, A, CNAME, TXT, SPF, blacklist e trasferimento di zona da interfaccia web.
ExifTool
Tool open-source per leggere, modificare e rimuovere metadati EXIF/IPTC da immagini, audio, video e PDF. Prezioso nell'analisi forense.
IMAP Downloader
Scarica email da server IMAP in modo forense, le comprime in un archivio .zip e ne calcola l'hash SHA-1 per la catena di custodia.
HashMyFiles
Calcola e confronta hash MD5, SHA1, CRC32 di file e intere cartelle. Fondamentale per verificare l'integrità dei file.
Hashes
Database online per il cracking di hash comuni: MD5, SHA1, NTLM, SHA256 e altri. Utile nella fase di analisi delle credenziali.
File Signatures
Riferimento completo delle signature binarie (magic bytes) per identificare il vero formato di un file anche senza estensione.
PECmd
Analizza i file Prefetch di Windows e restituisce quante volte è stata lanciata un'app, con data e ora dell'ultima esecuzione.
Perma.cc
Crea snapshot permanenti di pagine web con URL univoco. Ideale per preservare prove digitali e citazioni in ambito legale.
Registry Explorer
Strumento avanzato per l'analisi degli hive del registro di Windows: attività utente, software, connessioni di rete e cronologia di sistema.
USBDeview
Visualizza la cronologia completa dei dispositivi USB: data di connessione, nome, ID e driver. Utile nelle indagini forensi.
WxTCmd
Analizza il database Windows Activity Cache e ricostruisce la timeline dei programmi usati, con nome app, timestamp e durata.
Fondamentali
SSH — connessione remota
SSH (Secure Shell) è il protocollo standard per connettersi in modo sicuro a macchine Linux remote. Cifra tutto il traffico, incluse credenziali e comandi. La sintassi base è ssh utente@host -p porta. Client comuni: PuTTY e MobaXterm su Windows, OpenSSH da terminale Linux/Mac. WinSCP è utile per il trasferimento file via SFTP.
$ ssh [email protected] -p 2299 $ ssh username@hostname # porta default 22 $ ssh -i chiave.pem user@host # con chiave privata
pwd
Stampa il percorso assoluto della directory di lavoro corrente (Print Working Directory). Indispensabile per orientarsi nel filesystem, specialmente dopo una serie di cd. Restituisce sempre il percorso completo dalla root /, ad esempio /var/log/apache2.
$ pwd /var/log/apache2
whoami
Mostra il nome dell'utente attualmente connesso alla shell. Utile per verificare con quale identità si stanno eseguendo i comandi, specialmente dopo un su o sudo. Se risponde root significa che si hanno i privilegi massimi sul sistema.
$ whoami root
ls — elenco file e directory
Elenca il contenuto di una directory. Le opzioni più usate: -l formato lungo con permessi, proprietario, dimensione e data; -a mostra anche i file nascosti (che iniziano con .); -r ordine inverso; -t ordina per data di modifica; -h dimensioni leggibili (KB, MB). Combinazione classica: ls -lrt per vedere i file più recenti in fondo alla lista.
$ ls -lrt # output inverso per tempo modifica $ ls -lah # tutto, formato leggibile $ ls -la /etc # contenuto di /etc
cp, mkdir, mv, rmdir
Comandi base per gestire file e directory. cp copia file (con -r copia directory intere). mkdir crea una directory (con -p crea anche le directory intermedie). mv sposta o rinomina file e directory. rmdir rimuove una directory solo se è vuota; per rimuovere directory con contenuto si usa rm -rf (con cautela!).
$ cp file.txt /backup/ $ cp -r /cartella /backup/ $ mkdir -p /tmp/a/b/c $ mv vecchio.txt nuovo.txt $ rmdir cartella_vuota $ rm -rf cartella_piena
grep — ricerca pattern
Cerca un'occorrenza (pattern/stringa) all'interno di file o output. Con -r cerca ricorsivamente in tutte le directory, con -i ignora maiuscole/minuscole, con -n mostra il numero di riga, con -v mostra le righe che NON contengono il pattern. Spesso usato in pipe con altri comandi per filtrare l'output.
$ grep nologin /etc/passwd # righe con "nologin" $ grep -r "error" /var/log/ # ricerca ricorsiva $ ps -ef | grep tomcat # filtra processi $ tail -f app.log | grep error # errori in tempo reale
vi — editor di testo
vi è l'editor di testo standard di Linux, presente su qualsiasi sistema. Ha due modalità: command mode (default, per navigare e cercare) e insert mode (per scrivere, si entra con i). Per cercare una stringa si digita /stringa e Invio; n va alla ricorrenza successiva, N a quella precedente. Per salvare ed uscire: :wq. Per uscire senza salvare: :q!. cat invece mostra solo il contenuto senza modificarlo.
$ vi /var/log/app.log # apre il file # in command mode: /errore # cerca "errore" n # prossima occorrenza N # occorrenza precedente :wq # salva ed esci :q! # esci senza salvare
kill — terminare processi
Invia un segnale a un processo identificato dal suo PID. Il flusso tipico è: usare ps per trovare il PID del processo da terminare, poi kill PID. Di default invia SIGTERM (15), una richiesta graziosa. Se il processo non risponde si usa kill -9 (SIGKILL), che è una terminazione forzata che il processo non può ignorare. killall termina per nome invece che per PID.
$ ps -ef | grep tomcat # trova il PID $ kill 2912 # SIGTERM al processo $ kill -9 2912 # SIGKILL forzato $ killall -9 java # termina per nome
du — spazio disco
Mostra quanto spazio disco occupano file e directory. -s mostra solo il totale (summary), -h formato leggibile (KB/MB/GB), -k in kilobyte. Utile in combinazione con sort per trovare le directory più pesanti. df invece mostra lo spazio libero/usato dei filesystem montati.
$ du -sh /var/log # totale leggibile $ du -sk /var/* # in KB ogni sottodirectory $ du -sh * | sort -rh # ordina per dimensione $ df -h # spazio filesystem
find — ricerca avanzata file
Cerca file nel filesystem in base a criteri multipli combinabili. -type f cerca solo file, -type d solo directory. -size +100M trova file più grandi di 100MB. -mtime +7 trova file modificati più di 7 giorni fa. -user cerca file di un utente specifico. I risultati possono essere passati ad altri comandi con -exec o xargs.
$ find . -type f -size +100M # file > 100MB $ find . -type f -mtime +7 # modificati > 7gg $ find /home -size +10M # in /home > 10MB $ find . -user mario -type f # file di mario $ find / -name "*.log" 2>/dev/null # tutti i log
top — monitor processi
Mostra in tempo reale la lista dei processi attivi con consumo di CPU e RAM, aggiornata ogni pochi secondi. In alto mostra anche il carico medio del sistema (load average), uptime e memoria totale/libera. Tasti utili: q per uscire, k per killare un processo inserendo il PID, M per ordinare per memoria, P per ordinare per CPU. htop è una versione più moderna e colorata.
$ top # monitor in tempo reale $ htop # versione avanzata # dentro top: # k + PID = kill processo # M = ordina per memoria # P = ordina per CPU # q = esci
tail — log in tempo reale
Visualizza le ultime righe di un file. L'opzione -f (follow) tiene aperto il file e mostra ogni nuova riga man mano che viene scritta — fondamentale per monitorare log di processi in esecuzione. Il numero dopo il trattino indica quante righe mostrare. Combinato con grep filtra solo le righe che interessano.
$ tail -100f file.log # ultime 100 righe + live $ tail -f /var/log/syslog # log sistema live $ tail -f app.log | grep error # solo righe con "error" $ tail -n 50 file.log # ultime 50 righe statiche
ps — elenco processi
Fornisce uno snapshot statico dei processi in esecuzione. ps -ef elenca tutti i processi con PID, PPID, utente e comando completo. Combinato con grep è lo strumento standard per verificare se un servizio è attivo o trovare il PID di un processo specifico. Per trovare quale processo è in ascolto su una porta si usa ps -ef | grep con il numero di porta, oppure ss -tulnp o netstat -tulnp.
$ ps -ef # tutti i processi $ ps -ef | grep tomcat_5 # cerca tomcat $ ps -ef | grep 8080 # cerca porta 8080 $ ps aux --sort=-%cpu # ordina per CPU
systemctl — gestione servizi
Comando principale per gestire i servizi su sistemi con systemd (la maggior parte delle distro moderne). Equivalente ai "Servizi" di Windows. Permette di avviare, fermare, riavviare, abilitare all'avvio e controllare lo stato di qualsiasi servizio. service --status-all è un'alternativa più vecchia ancora presente su alcuni sistemi.
$ systemctl status nginx # stato servizio $ systemctl start nginx # avvia $ systemctl stop nginx # ferma $ systemctl restart nginx # riavvia $ systemctl enable nginx # abilita all'avvio $ systemctl list-units --type service # tutti i servizi $ service --status-all # alternativa classica
fsck — controllo filesystem
fsck (File System Consistency Check) controlla e ripara eventuali errori in un filesystem. Attenzione critica: non va mai eseguito su una partizione montata, pena il rischio di danneggiare i dati. Il flusso corretto è: identificare la partizione con fdisk -l, smontarla con umount, poi eseguire fsck. fsck.ext4 è la versione specifica per filesystem ext4.
$ fdisk -l # elenca partizioni $ umount /dev/sda2 # smonta la partizione $ fsck /dev/sda2 # controlla e ripara $ fsck.ext4 /dev/sda2 # specifico per ext4
LVM — Logical Volume Manager
LVM è uno strato di astrazione tra i dischi fisici e il filesystem. Invece di partizionare direttamente i dischi, si creano Physical Volume (PV) dai dischi, si raggruppano in un Volume Group (VG), e si ricavano Logical Volume (LV) ridimensionabili a caldo. Vantaggio principale: si può estendere o ridurre lo spazio senza smontare il filesystem e senza riavviare.
$ pvdisplay # mostra physical volume $ vgdisplay # mostra volume group $ lvdisplay # mostra logical volume $ lvcreate -L 10G -n dati vg0 # crea volume logico $ lvextend -L +5G /dev/vg0/dati # estende
UID / GID / /etc/passwd
UID (User ID) è un numero intero che identifica univocamente ogni utente del sistema. GID (Group ID) identifica il gruppo primario. Root ha sempre UID=0. L'associazione UID→nome utente è definita in /etc/passwd, leggibile da tutti. Le password cifrate però non sono in /etc/passwd ma in /etc/shadow, accessibile solo a root, per impedire attacchi brute force offline.
$ cat /etc/passwd # utenti e UID/GID $ cat /etc/shadow # hash password (solo root) $ id mario # UID e GID di mario $ getent passwd mario # info utente
Device files — /dev
In Linux tutto è un file, inclusi i dispositivi hardware. I device file in /dev permettono ai programmi di comunicare con l'hardware attraverso le system call standard (open, read, write). Esistono due tipi: device a blocchi (dischi, USB — trasferimento dati a blocchi, con buffer) come /dev/sda, e device a caratteri (tastiera, seriali, terminali — flusso byte per byte) come /dev/tty. Il software utente non ha accesso diretto all'hardware: deve passare dal kernel tramite questi file speciali.
$ ls -l /dev/sda* # device a blocchi (disco) $ ls -l /dev/tty* # device a caratteri (terminali) $ lsblk # albero device a blocchi $ file /dev/sda # mostra tipo device
Aiuto & Documentazione
-h
Stampa la pagina di aiuto del comando
$ nmap -h
apropos
Cerca una parola chiave nelle descrizioni dei man page
$ apropos network
man
Apre il manuale del comando specificato
$ man nmap
File & Directory
cd
Cambia la directory di lavoro corrente
$ cd /var/www/html
clear
Pulisce il terminale dall'output precedente
$ clear
cp
Copia file o intere directory (con -r)
$ cp -r /tmp/loot /home/elsa
diff
Confronta due file riga per riga evidenziando le differenze
$ diff config.orig config.php
file
Identifica il tipo reale di un file analizzando i magic bytes
$ file suspicious.bin
ln
Crea link simbolici o hard link
$ ln -s /tmp/shell /var/www/html/s
ls
Elenca il contenuto di una directory con varie opzioni
$ ls -lahF
mkdir
Crea una directory, anche annidata con -p
$ mkdir -p /tmp/work
mv
Sposta o rinomina file e directory
$ mv shell.php shell.bak
nano
Editor di testo da terminale, semplice e intuitivo
$ nano /etc/hosts
strings
Estrae stringhe leggibili da file binari (utile per malware analysis)
$ strings binary | grep -i pass
tar
Crea, estrae e gestisce archivi tar (anche compressi)
$ tar -czvf loot.tar.gz /tmp/loot
touch
Crea un file vuoto o aggiorna i timestamp di uno esistente
$ touch shell.php
tree
Elenca ricorsivamente il contenuto di una directory in formato albero
$ tree -L 2
which
Restituisce il percorso completo di un eseguibile nel PATH
$ which python3
Gestione Pacchetti
apt
Gestore pacchetti ad alto livello per sistemi Debian/Ubuntu
$ apt install nmap -y
aptitude
Interfaccia alternativa ad apt con UI TUI opzionale
$ aptitude install nmap
dpkg
Installa, rimuove e configura pacchetti Debian (.deb)
$ dpkg -i tool.deb
gem
Gestore pacchetti standard per Ruby
$ gem install wpscan
git
Sistema di controllo versione distribuito
$ git clone https://github.com/...
pip
Gestore pacchetti standard per Python
$ pip install requests
snap
Installa, rimuove e configura pacchetti snap
$ snap install code
Info Sistema
env
Stampa le variabili d'ambiente o esegue un comando con ambiente modificato
$ env | grep PATH
hostname
Mostra o imposta il nome dell'host corrente
$ hostname -I
id
Mostra identità utente, UID, GID e gruppi
$ id
lsblk
Elenca i dispositivi a blocchi (dischi, partizioni)
$ lsblk -f
lsof
Elenca i file aperti e i processi che li usano
$ lsof -i :80
lspci
Elenca i dispositivi PCI
$ lspci -v
lsusb
Elenca i dispositivi USB connessi
$ lsusb
pwd
Restituisce il percorso della directory corrente
$ pwd
uname
Stampa le informazioni complete del sistema operativo
$ uname -a
who
Mostra chi è attualmente connesso al sistema
$ who
whoami
Mostra l'utente corrente
$ whoami
Manipolazione Testo
awk
Linguaggio di scansione e processing di pattern testuali
$ awk -F: '{print $1}' /etc/passwd
base64
Encode e decode base64 — fondamentale per payload e cookie
$ echo -n 'admin:true' | base64
cat
Concatena e stampa il contenuto di uno o più file
$ cat /etc/passwd
column
Formatta l'input in colonne allineate
$ column -t -s ':'
cut
Rimuove sezioni da ogni riga di un file (per delimitatore o posizione)
$ cut -d: -f1 /etc/passwd
echo
Stampa testo su stdout; utile in scripting e injection
$ echo '<?php system($_GET["c"]); ?>' > shell.php
grep
Cerca pattern in file o stdout, anche con regex
$ grep -r 'password' /var/www/
head
Stampa le prime N righe di un file o dello stdout
$ head -n 20 file.txt
less
Pager avanzato con navigazione bidirezionale e ricerca
$ less /var/log/syslog
more
Pager per leggere output o file pagina per pagina
$ more /etc/passwd
printf
Come echo ma più preciso per formattazione e sequenze escape
$ printf '%s' 'payload' | base64
sed
Stream editor per filtrare e trasformare testo
$ sed -i 's/old/new/g' file.txt
sort
Ordina il contenuto di un file o stdout (alfabetico, numerico, ecc.)
$ sort -u usernames.txt
tail
Stampa le ultime N righe; con -f segue il file in tempo reale
$ tail -f /var/log/apache2/access.log
tee
Scrive su file e stdout contemporaneamente
$ ./exploit.sh | tee output.log
tr
Sostituisce o elimina caratteri da un input
$ tr ':' '\n'
wc
Conta righe, parole e byte di un input
$ wc -l users.txt
xxd
Dump esadecimale di file o stdin, utile in analisi binaria
$ xxd file.bin | head
Permessi
chmod
Modifica i permessi di file o directory (RWX e SUID/SGID)
$ chmod +x shell.sh
chown
Cambia proprietario e gruppo di file e directory
$ chown www-data:www-data shell.php
getfacl
Mostra le ACL estese di file e directory
$ getfacl /var/www/html
umask
Visualizza o imposta la maschera predefinita dei permessi
$ umask 022
Processi
bg
Mette in background un processo sospeso
$ bg %1
crontab
Visualizza o modifica i task schedulati dell'utente
$ crontab -l
fg
Riporta in foreground un processo in background
$ fg %1
htop
Versione interattiva, colorata e amichevole di top
$ htop
jobs
Elenca i processi in background della shell corrente
$ jobs -l
journalctl
Interroga il journal di systemd per visualizzare i log di sistema
$ journalctl -u apache2 -f
kill
Invia un segnale a un processo (default: SIGTERM)
$ kill -9 1234
ps
Snapshot dei processi in esecuzione con tutti i dettagli
$ ps aux | grep apache
systemctl
Gestisce servizi e l'intero sistema systemd
$ systemctl status ssh
top
Monitoraggio risorse CPU e RAM in tempo reale
$ top
watch
Esegue un comando ripetutamente a intervalli regolari
$ watch -n 1 ss -tulnp
Rete
dig
Esegue query DNS avanzate, utile per enumeration di sottodomini
$ dig axfr @ns1.target.com target.com
ifconfig
Assegna o visualizza indirizzi di rete sulle interfacce
$ ifconfig eth0
ip
Mostra o modifica routing, interfacce e tunnel
$ ip addr show
netstat
Mostra lo stato della rete: connessioni, porte aperte e routing
$ netstat -tulnp
nslookup
Interroga server DNS in modalità interattiva o diretta
$ nslookup target.com
ping
Testa la connettività e la raggiungibilità di un host via ICMP
$ ping -c 4 10.10.10.1
ss
Analizza socket di rete: alternativa moderna a netstat, più veloce
$ ss -tulnp
traceroute
Traccia il percorso dei pacchetti verso un host remoto
$ traceroute 10.10.10.1
Ricerca
find
Cerca file in una gerarchia di directory con criteri avanzati
$ find / -name '*.php' 2>/dev/null
locate
Trova file usando il database locale: molto veloce
$ locate passwd
type
Distingue alias, funzioni shell e binari con lo stesso nome
$ type ls
updatedb
Aggiorna il database locale usato da locate
$ sudo updatedb
whereis
Trova il binario, il sorgente e il manuale di un comando
$ whereis python3
xargs
Costruisce ed esegue comandi a partire da stdin
$ find . -name '*.log' | xargs grep -l 'error'
find -size
Cerca file in base alla dimensione. L'opzione -size +10M trova tutti i file maggiori di 10 megabyte. Utile per individuare file di grandi dimensioni che occupano spazio inutilmente o file sospetti upload.
$ find /home -size +10M
Shell & Scripting
alias
Crea abbreviazioni per comandi lunghi o frequenti
$ alias ll='ls -lahF'
export
Imposta variabili d'ambiente per il processo e i suoi figli
$ export RHOST=10.10.10.1
history
Elenca i comandi precedenti — utile in post-exploitation
$ history | grep pass
source
Esegue uno script nel contesto della shell corrente
$ source .bashrc
Trasferimento Dati
curl
Trasferisce dati da/verso server via URL (HTTP, FTP, ecc.)
$ curl -I https://target.com
ftp
Accesso a server FTP, utile in enumeration e loot retrieval
$ ftp 10.10.10.1
python3 -m http.server
Avvia un web server HTTP su porta 8000 (default)
$ python3 -m http.server 8080
rsync
Sincronizzazione efficiente e incrementale di file locali o remoti
$ rsync -avz /loot/ user@host:/backup/
scp
Copia file in modo sicuro via SSH tra macchine remote
$ scp shell.php [email protected]:/tmp/
wget
Scarica file da server FTP o HTTP(s) in modo non interattivo
$ wget http://target/shell.php
Utenti & Gruppi
addgroup
Aggiunge un gruppo al sistema
$ addgroup pentesters
delgroup
Rimuove un gruppo dal sistema
$ delgroup oldgroup
passwd
Cambia la password di un utente del sistema
$ passwd alice
su
Cambia utente; richiede credenziali tramite PAM
$ su - www-data
sudo
Esegue un comando come altro utente (default: root)
$ sudo su -
useradd
Crea un nuovo utente o aggiorna i valori di default
$ useradd -m -s /bin/bash elsa
userdel
Elimina un account utente e i file correlati
$ userdel -r alice
usermod
Modifica un account utente esistente (gruppi, shell, home)
$ usermod -aG sudo alice
Sysadmin
Permessi ottali
I permessi Linux si esprimono in tre cifre ottali (proprietario, gruppo, altri). Ogni cifra è la somma di: r=4, w=2, x=1. 644 = proprietario r/w (6), gruppo r (4), altri r (4) — tipico per file. 755 = proprietario r/w/x (7), gruppo r/x (5), altri r/x (5) — tipico per directory e script eseguibili.
$ chmod 644 file.txt $ chmod 755 script.sh
Struttura FHS
Il Filesystem Hierarchy Standard definisce la struttura delle directory Linux. /etc contiene tutti i file di configurazione di sistema (es. /etc/passwd, /etc/ssh/sshd_config). /var contiene dati variabili come log (/var/log), database e spool. /opt è riservato a software opzionale di terze parti installato manualmente, fuori dal gestore pacchetti.
$ ls /etc # configurazioni $ ls /var/log # log di sistema $ ls /opt # software esterni
mount
Monta un filesystem (partizione, disco, immagine) in una directory specifica chiamata mount point. Per montare /dev/sdb1 in /mnt/data il filesystem diventa accessibile da quella directory. Con -t si specifica il tipo (ext4, ntfs, vfat ecc.). Senza argomenti mostra tutti i filesystem montati.
$ mount /dev/sdb1 /mnt/data $ mount -t ext4 /dev/sdb1 /mnt/data $ umount /mnt/data
tar -czvf (gzip)
Crea archivi compressi. Le opzioni: -c crea l'archivio, -z comprime con gzip, -v modalità verbose (mostra i file), -f specifica il nome del file di output. Per estrarre si usa -xzvf. La compressione gzip (-z) è la più comune; bzip2 usa -j, xz usa -J.
$ tar -czvf archivio.tar.gz /cartella/ $ tar -xzvf archivio.tar.gz
SIGTERM vs SIGKILL
SIGTERM (segnale 15, default di kill) è una richiesta di terminazione graziosa: il processo la riceve, può salvare lo stato e chiudersi correttamente. SIGKILL (segnale 9) è una terminazione forzata dal kernel che il processo non può ignorare né intercettare — utile quando un processo è bloccato e non risponde a SIGTERM.
$ kill 1234 # invia SIGTERM $ kill -9 1234 # invia SIGKILL $ kill -15 1234 # SIGTERM esplicito
ip route / routing
ip route show mostra la tabella di routing corrente (non persistente). Per aggiungere una route temporanea si usa ip route add. Per renderla persistente su Debian/Ubuntu si modifica /etc/network/interfaces o si usa netplan; su RHEL/CentOS i file in /etc/sysconfig/network-scripts/route-*.
$ ip route show $ ip route add 192.168.2.0/24 via 10.0.0.1 $ ip route del 192.168.2.0/24
systemd-resolved
È il servizio di risoluzione DNS integrato in systemd. Gestisce il caching DNS locale, il DNS-over-TLS e la risoluzione per VPN/container. Sostituisce la configurazione tradizionale di /etc/resolv.conf, che su sistemi moderni è spesso un symlink verso /run/systemd/resolve/stub-resolv.conf.
$ systemctl status systemd-resolved $ resolvectl status $ cat /etc/resolv.conf
ssh-keygen -t rsa
Genera una coppia di chiavi SSH asimmetriche. La chiave privata (~/.ssh/id_rsa) rimane sul client e non va mai condivisa. La chiave pubblica (~/.ssh/id_rsa.pub) va copiata sul server in ~/.ssh/authorized_keys. Con -b 4096 si aumenta la lunghezza a 4096 bit per maggiore sicurezza.
$ ssh-keygen -t rsa -b 4096 $ ssh-copy-id user@server $ cat ~/.ssh/id_rsa.pub
ulimit
Imposta limiti sulle risorse disponibili per un utente o processo nella sessione corrente. -u limita il numero massimo di processi, -n il numero di file aperti, -v la memoria virtuale. Per renderli persistenti si modifica /etc/security/limits.conf con la sintassi: utente tipo risorsa valore.
$ ulimit -u 100 # max processi $ ulimit -n 4096 # max file aperti $ ulimit -a # mostra tutti i limiti
iptables anti-DoS
iptables con il modulo limit o recent può mitigare attacchi DoS limitando il numero di nuove connessioni per intervallo di tempo da un singolo IP. --limit 25/minute limita a 25 nuove connessioni al minuto, --limit-burst 100 permette un burst iniziale di 100 connessioni prima di applicare il limite.
$ iptables -A INPUT -p tcp --dport 80 \ -m limit --limit 25/minute \ --limit-burst 100 -j ACCEPT
mdadm — RAID 1
mdadm gestisce i RAID software Linux. RAID 1 (mirroring) duplica i dati su due dischi: se uno cade l'altro continua a funzionare. --create crea l'array, --level=1 specifica RAID 1, --raid-devices=2 indica il numero di dischi. Lo stato si monitora con cat /proc/mdstat o mdadm --detail.
$ mdadm --create /dev/md0 --level=1 \ --raid-devices=2 /dev/sdb /dev/sdc $ cat /proc/mdstat $ mdadm --detail /dev/md0
LVM — lvextend
LVM (Logical Volume Manager) permette di gestire lo spazio disco in modo flessibile: ridimensionare, estendere e creare snapshot a caldo senza smontare il filesystem. lvextend allarga il volume logico, poi resize2fs (ext4) o xfs_growfs (XFS) estende il filesystem per occupare il nuovo spazio.
$ lvextend -L +10G /dev/vg/lv_data $ resize2fs /dev/vg/lv_data # ext4 $ xfs_growfs /dev/vg/lv_data # XFS
Virtualizzazione Tipo 1 vs Tipo 2
Tipo 1 (Bare-Metal): l'hypervisor gira direttamente sull'hardware senza OS host, con prestazioni massime. Esempi: KVM, Xen, VMware ESXi. Tipo 2 (Hosted): l'hypervisor gira come applicazione sopra un OS host, più semplice da usare ma con overhead maggiore. Esempi: VirtualBox, VMware Workstation, QEMU.
$ kvm-ok # verifica supporto KVM $ virsh list --all # lista VM con libvirt $ vboxmanage list vms # lista VM VirtualBox
Kerberos
Kerberos è un protocollo di autenticazione centralizzata basato su ticket che non trasmette mai le password in chiaro. In ambienti misti Linux/Windows (Active Directory) permette agli utenti Linux di autenticarsi nell'AD. Usa il Protocollo Kerberos su porta UDP/TCP 88. Il ticket di accesso (TGT) ha una scadenza configurabile.
$ kinit [email protected] # ottieni TGT $ klist # mostra ticket $ kdestroy # elimina ticket
SELinux / AppArmor
Sono sistemi di Mandatory Access Control (MAC) che aggiungono un secondo livello di sicurezza oltre ai permessi tradizionali (DAC). SELinux usa contesti di sicurezza su ogni file e processo; chcon cambia il contesto temporaneamente, semanage fcontext lo rende persistente. AppArmor usa profili per applicazione ed è il default su Ubuntu/Debian.
$ getenforce # Enforcing/Permissive $ chcon -t httpd_sys_content_t /var/www/html $ semanage fcontext -a -t httpd_sys_content_t "/web(/.*)?" $ aa-status # stato AppArmor
Pacemaker / Corosync
Stack comune per implementare High Availability (HA) su Linux. HA garantisce che un servizio rimanga operativo anche in caso di guasto di un nodo, con failover automatico. Corosync gestisce la comunicazione tra i nodi del cluster, Pacemaker gestisce le risorse (servizi, IP virtuali) e decide dove devono girare in caso di failover.
$ pcs status # stato cluster $ pcs resource show # risorse gestite $ crm_mon -1 # monitor cluster
journalctl --vacuum-time
Cancella i log di sistema gestiti da systemd-journald più vecchi di un periodo specificato, liberando spazio disco. --vacuum-time=7d elimina tutto ciò che è più vecchio di 7 giorni. --vacuum-size limita invece la dimensione totale. Per vedere quanto spazio occupano i log si usa journalctl --disk-usage.
$ journalctl --vacuum-time=7d $ journalctl --vacuum-size=500M $ journalctl --disk-usage
Monitoring & Incident
Log di Sistema
tail -f /var/log/syslog
Monitora il log di sistema in tempo reale
$ tail -f /var/log/syslog
tail -f /var/log/auth.log
Monitora i tentativi di login in tempo reale
$ tail -f /var/log/auth.log
journalctl -f
Equivalente di tail -f ma per tutti i log systemd
$ journalctl -f
journalctl --since "today"
Mostra tutti i log dalla mezzanotte di oggi
$ journalctl --since "today"
journalctl -u ssh
Visualizza i log SSH dell'ultima ora tramite systemd
$ journalctl -u ssh --since "1 hour ago"
journalctl -p err
Mostra gli ultimi 50 errori di sistema dal journal
$ journalctl -p err -n 50
zcat | grep
Cerca pattern nei log compressi senza estrarli
$ zcat /var/log/syslog.*.gz | grep "error"
dmesg | tail
Messaggi recenti del kernel — utile per anomalie hardware o rootkit
$ dmesg | tail
Autenticazione & Utenti
grep "Failed password"
Cerca tentativi bruteforce SSH nel log di autenticazione
$ grep "Failed password" /var/log/auth.log
w
Mostra gli utenti connessi e cosa stanno facendo
$ w
last
Mostra lo storico completo dei login al sistema
$ last
lastb
Mostra tutti i tentativi di login falliti al sistema
$ lastb
last reboot
Mostra lo storico dei riavvii del sistema
$ last reboot
cat /etc/passwd
Elenca tutti gli utenti del sistema con shell e home
$ cat /etc/passwd
cat /etc/shadow
Mostra gli hash delle password (richiede root)
$ cat /etc/shadow
cat /etc/sudoers
Mostra chi può eseguire comandi con sudo (privilege escalation check)
$ cat /etc/sudoers
getent passwd
Lista utenti con shell attiva escludendo i service account
$ getent passwd | grep -v nologin
sudo -l
Mostra cosa può fare l'utente corrente con sudo
$ sudo -l
id <utente>
Controlla UID, GID e gruppi di un utente specifico
$ id alice
groups <utente>
Mostra tutti i gruppi a cui appartiene un utente
$ groups alice
chage -l <utente>
Mostra la scadenza della password e le policy di aging
$ chage -l alice
ausearch
Interroga i log di auditd per cercare eventi di login e accesso
$ ausearch -m LOGIN
aureport
Genera un report delle autenticazioni dal sistema auditd
$ aureport --auth
Processi & File Sospetti
ps aux --sort
Lista processi ordinati per consumo CPU o RAM
$ ps aux --sort=-%cpu
lsof -i
Elenca tutte le connessioni di rete aperte per processo
$ lsof -i
lsof -p PID
Elenca i file aperti da un processo sospetto tramite PID
$ lsof -p 1234
ls -la /proc/<PID>/exe
Rivela il percorso reale del binario di un processo in esecuzione
$ ls -la /proc/1234/exe
pstree
Albero visuale dei processi padre/figlio — utile per rilevare processi orfani
$ pstree -p
strace -p <PID>
Traccia le syscall di un processo live — analisi comportamentale avanzata
$ strace -p 1234
find -mtime -1
Trova file modificati nelle ultime 24 ore (IOC)
$ find / -mtime -1 -type f 2>/dev/null
find /tmp -executable
Trova eseguibili in /tmp — comportamento sospetto tipico di malware
$ find /tmp -type f -executable
find SUID root
Trova file SUID con owner root — vettore di privilege escalation
$ find / -uid 0 -perm -4000 2>/dev/null
lsmod
Elenca i moduli kernel caricati — utile per rootkit detection
$ lsmod
uptime
Mostra da quanto tempo il sistema è acceso e il carico medio
$ uptime
Rete & Traffico
tcpdump
Cattura pacchetti di rete su un'interfaccia e li salva in un file .pcap
$ tcpdump -i eth0 -w capture.pcap
tcpdump port
Filtra il traffico di rete catturato per porta specifica
$ tcpdump -i eth0 port 80
tcpdump host
Filtra il traffico di rete catturato per indirizzo IP
$ tcpdump -i eth0 host 192.168.1.1
iftop
Mostra il traffico di rete in tempo reale per host
$ iftop
arp -a
Tabella ARP — rivela tutti gli host nella subnet corrente
$ arp -a
ip route
Tabella di routing — utile per identificare percorsi anomali
$ ip route
grep -r IP
Cerca un indirizzo IP sospetto in tutti i log di sistema
$ grep -r "192.168.1.100" /var/log/
grep -rE regex IP
Cerca tutti gli indirizzi IP nei log tramite regex
$ grep -rE "([0-9]{1,3}\.){3}[0-9]{1,3}" auth.log
Integrità & Hash
md5sum
Calcola l'hash MD5 di un file per verifica IOC
$ md5sum file
sha1sum
Calcola l'hash SHA1 di un file per verifica IOC
$ sha1sum file
sha256sum
Calcola l'hash SHA256 di un file per verifica IOC
$ sha256sum file
stat
Mostra i metadata di un file: timestamp creazione, modifica e accesso
$ stat file
diff config
Confronta file di configurazione per rilevare modifiche non autorizzate
$ diff /etc/passwd /etc/passwd.bak
Firewall & IDS
iptables -L
Mostra tutte le regole firewall attive con statistiche
$ iptables -L -n -v
nft list ruleset
Alternativa moderna a iptables — mostra tutte le regole nftables
$ nft list ruleset
ufw status
Mostra lo stato e le regole del firewall UFW
$ ufw status verbose
grep "REJECT"
Mostra le connessioni bloccate dal firewall UFW
$ grep "REJECT" /var/log/ufw.log
fail2ban-client status
Mostra lo stato di fail2ban e gli IP attualmente bannati
$ fail2ban-client status sshd
Jitter
Tool online per creare animazioni di testo e UI in stile motion graphic. Esporta in video o GIF. Ottimo per contenuti social.
PhotoAid
Raccolta di oltre 30 strumenti online per il fotoritocco: foto tessera, rimozione sfondo, miglioramento automatico, filtri.
Removebg
Rimuove lo sfondo di qualsiasi foto in modo automatico grazie all'AI. Risultati precisi anche su capelli e bordi complessi.
Replicate
Piattaforma cloud per eseguire modelli AI open-source su immagini: upscaling, restauro fotografico, colorazione di foto in bianco e nero.
Vectorizer
Trasforma JPEG, PNG e BMP in vettori SVG scalabili tramite AI. Ideale per loghi e illustrazioni da usare in stampa o design.
Autoruns
La mappa completa della persistenza su Windows: startup, task pianificati, driver, servizi, browser extension. Individua istantaneamente le anomalie.
DIE
Identifica compilatore, linker, packer e protezioni di un binario. Supporta centinaia di firme e include un motore scriptabile.
dnSpy
Decompila e debugga assembly .NET senza avere il codice sorgente. Permette di modificare il codice IL direttamente.
Ghidra
Suite di reverse engineering sviluppata dalla NSA: disassembla e decompila binari per x86, ARM, MIPS e altri. Supporta script Python e Java.
Hybrid Analysis
Esegue il file in una sandbox isolata e registra ogni comportamento: processi avviati, connessioni di rete, chiavi di registro modificate.
LOLBAS
Database di binari, script e librerie Windows nativi usati in attacchi Living Off the Land (LotL) per eludere antivirus e soluzioni EDR.
LNK Parser
Estrae da file .lnk il percorso originale del file target, i timestamp di creazione/accesso e informazioni sul sistema di origine.
PeStudio
Analizza eseguibili senza eseguirli: mostra import table, sezioni, stringhe, risorse e indicatori di compromissione.
PortexAnalyzer
Analizzatore di eseguibili PE: ispeziona header, sezioni, imports/exports, calcola hash e rileva packer tramite firme YARA e PEiD.
Process Explorer
Sostituto avanzato del Task Manager: mostra processi, DLL caricate, thread e handle aperti. Integra VirusTotal per verifica rapida.
ProcMon
Registra in tempo reale ogni operazione su file, registro, processo e rete. Fondamentale per capire il comportamento di un malware in esecuzione.
Sigcheck
Verifica la firma digitale dei file, mostra publisher e hash, e può interrogare VirusTotal direttamente dalla riga di comando.
Strings
Estrae tutte le stringhe Unicode e ASCII da qualsiasi file binario. Ottimo per trovare URL, chiavi di registro e indicatori nei malware.
TrID
Riconosce il tipo reale di un file analizzando il contenuto binario, indipendentemente dall'estensione. Supporta migliaia di formati.
UPX
Packer/unpacker open-source per EXE, DLL e altri formati. Usato sia per comprimere software sia per identificare file packed.
VirusTotal
Carica un file o incolla un URL: viene analizzato da 70+ antivirus e sandbox. Essenziale per una prima valutazione di file sospetti.
3DP Net
Identifica automaticamente le schede di rete e scarica i driver più recenti. Funziona anche senza connessione internet.
AdwCleaner
Rimuove adware, toolbar indesiderate, PUP e browser hijacker. Ottimo come secondo scanner dopo l'antivirus principale.
download
Temp File Cleaner
Batch per eliminare i file temporanei di tutti gli utenti del sistema, liberando spazio e rimuovendo dati residui dalle cartelle Temp.
download
Outlook VBA
Script VBA per aumentare le dimensioni massime degli allegati in Microsoft Outlook.
download
Nome lungo
Script PowerShell per gestire file con nomi oltre 255 caratteri: elimina o rinomina.
download
Cartella Segreta
Script batch per creare una cartella nascosta e protetta da password su Windows.
download
Elimina file
Batch per eliminare directory e file 0 byte che causano errori.
download
WiFi Export
Batch per esportare e importare profili Wi-Fi tramite netsh, utile per recuperare password.
Folder Painter
Personalizza l'icona e il colore di qualsiasi cartella su Windows con un semplice clic destro.
download
Lusrmgr
Alternativa a lusrmgr.msc per gestione avanzata utenti e gruppi su tutte le edizioni Windows.
ReNamer
Rinomina centinaia di file in pochi secondi con regole componibili: prefissi, suffissi, sostituzione testo, estensioni.
download
ShowMoreOptions
File .reg per rimuovere o ripristinare l'opzione dal menu contestuale di Windows 11.
download
SFC DISM
Batch che automatizza SFC e DISM per scansione e riparazione dei file di sistema.
download
Sysmon
System Monitor Sysinternals per monitoraggio avanzato di processi, file, rete e attività critiche.
TranslucentTB
Personalizza la trasparenza della taskbar di Windows 10/11: traslucida, opaca o completamente invisibile. Consuma quasi zero risorse.
WinDynamicDesktop
Porta i wallpaper dinamici di macOS su Windows: cambiano gradualmente durante la giornata seguendo l'ora solare.
download
XSS SQL
Configurazione .htaccess avanzata contro attacchi XSS e SQL Injection.
Bulkresize
Ridimensiona e comprime centinaia di immagini in una volta. Supporta JPEG, PNG e WebP. Tutto in locale, senza upload su server esterni.
download
Hide WP Version
Snippet per functions.php che rimuove il numero di versione dall'output del sito.
download
Font Elementor
Snippet per ottimizzare il caricamento dei font in Elementor e migliorare le performance.
PageSpeed
Analizza le Core Web Vitals del tuo sito (LCP, FID, CLS) e fornisce un piano dettagliato per migliorare velocità e ranking SEO.
download
XMLRPC
Regole .htaccess per proteggere xmlrpc.php da attacchi brute force.
TasteWP
Crea un ambiente WordPress temporaneo in un secondo, senza registrazione. Perfetto per testare plugin, temi o configurazioni.