Home › Fondamenti › Linux per hacker

Linux per hacker

Il terminale è la tua arma principale. Questi sono i comandi che userai in ogni singola box.

Perché Linux

Quasi tutti i tool di pentest girano su Linux, e la maggior parte dei server target sono Linux. Sapersi muovere in una shell è la competenza numero uno. Quando ottieni una "shell" su una macchina, ti ritrovi esattamente in un terminale come questo — quindi impararlo ora ti serve due volte.

Navigare e leggere

pwd                 # dove sono (print working directory)
ls -la              # elenca tutto, anche file nascosti + permessi
cd /var/www         # cambia cartella
cat file.txt        # stampa un file
less file.txt       # scorri un file lungo (q per uscire)
head -n 20 file     # prime 20 righe
tail -f log.txt      # segui un log in tempo reale

Cercare (fondamentale in privesc)

# cerca file per nome
find / -name "*.conf" 2>/dev/null
# cerca testo dentro i file, ricorsivo
grep -r "password" /var/www 2>/dev/null
# cerca eseguibili con bit SUID (chiave per privesc, vedi pagina Privesc Linux)
find / -perm -4000 -type f 2>/dev/null
# dove sta un binario
which python3   ·   whereis nmap
2>/dev/null butta via gli errori "Permission denied" e rende l'output leggibile. Lo userai tantissimo.

Permessi e utenti

whoami             # chi sono
id                 # uid, gid, gruppi (guarda se sei in "sudo" o "docker")
sudo -l            # cosa posso eseguire come root (privesc!)
chmod +x script.sh # rendi eseguibile
cat /etc/passwd    # lista utenti del sistema

I permessi si leggono così: -rwxr-xr-- → proprietario (rwx), gruppo (r-x), altri (r--). r=read, w=write, x=execute.

Rete

ip addr            # i tuoi IP e interfacce
ip route           # gateway / routing
ss -tulpn          # porte in ascolto (servizi locali)
curl -s http://IP/ # scarica una pagina web da terminale
wget http://IP/file # scarica un file

Trucchi che ti salvano

history            # comandi già digitati (spesso contiene password!)
command | tee out.txt # mostra E salva su file
chmod 600 chiave.pem  # serve prima di usare una chiave SSH trovata
# stabilizzare una reverse shell (dopo un exploit):
python3 -c 'import pty;pty.spawn("/bin/bash")'
Sui tuoi libri: Introduction to Linux – A Hands on Guide, Linux 101 Hacks, Linux Complete Command Reference. Vedi Risorse.