Domande di colloquio per penetration tester

Milad Bonakdar
Autore
Preparati ai colloqui da penetration tester con domande pratiche su scope, ricognizione, priorità delle vulnerabilità, Burp Suite, Metasploit, API, Active Directory e report.
Introduzione
Una buona risposta in un colloquio da penetration tester dimostra tre cose: sai lavorare entro uno scope autorizzato, testi con metodo e spieghi il rischio in modo utile per team tecnici e business.
Usa queste domande per esercitarti sulle parti pratiche del ruolo: scope, ricognizione, priorità delle vulnerabilità, Burp Suite, Metasploit, test API, Active Directory e reporting. Mantieni le risposte ancorate a test autorizzati, prove chiare e remediation.
Fondamenti del Penetration Testing
1. Quali sono le fasi di un penetration test?
Risposta: Una buona metodologia inizia prima di qualsiasi scansione. Conferma autorizzazione scritta, scope, regole di ingaggio, finestre di test, limiti sul trattamento dei dati e contatti di emergenza. Poi procedi in modo ripetibile:
1. Scope e pianificazione:
- Confermare autorizzazione scritta, target, esclusioni e regole di ingaggio
- Definire obiettivi, criteri di successo, canali di comunicazione e condizioni di stop
2. Ricognizione e discovery:
- Raccogliere informazioni passive e attive
- Identificare host, servizi, flussi applicativi, ruoli utente e superficie esposta
3. Analisi delle vulnerabilità:
- Collegare i risultati a impatto di business e sfruttabilità
- Validare manualmente gli output degli scanner prima di considerarli finding
4. Exploitation e post-exploitation:
- Sfruttare solo debolezze in scope e necessarie per dimostrare l'impatto
- Verificare confini dei privilegi, percorsi di movimento laterale ed esposizione dei dati senza superare le regole
5. Report, cleanup e retest:
- Documentare prove, impatto, passi di riproduzione e remediation
- Rimuovere artefatti di test, fare debrief con gli stakeholder e ritestare le correzioni se richiesto
Esempio di Ricognizione:
Rarità: Molto Comune Difficoltà: Media
Valutazione delle Vulnerabilità
2. Come si stabiliscono le priorità delle vulnerabilità?
Risposta: Usa CVSS come punto di partenza, poi pesa sfruttabilità, criticità dell'asset, sensibilità dei dati, esposizione, controlli compensativi e sfruttamento attivo noto. In colloquio conta mostrare che non tratti ogni output dello scanner come ugualmente urgente.
Punteggio CVSS:
- Critico (9.0-10.0): Esecuzione di codice remoto, bypass dell'autenticazione
- Alto (7.0-8.9): SQL injection, XSS con accesso ai dati
- Medio (4.0-6.9): Divulgazione di informazioni, CSRF
- Basso (0.1-3.9): Perdita di informazioni minori
Fattori di Prioritizzazione:
Rarità: Molto Comune Difficoltà: Media
Metasploit
3. Come si usa Metasploit per sfruttare una vulnerabilità?
Risposta: Flusso di lavoro del Metasploit Framework:
Sfruttamento di Base:
Comandi Meterpreter:
Generazione del Payload:
Rarità: Molto Comune Difficoltà: Medio-Alta
4. Come si esegue l'escalation dei privilegi?
Risposta: L'escalation dei privilegi sfrutta le configurazioni errate per ottenere livelli di accesso più elevati.
Escalation dei Privilegi Linux:
1. Enumerazione:
2. Tecniche Comuni:
Sfruttamento SUID:
Configurazione Errata di Sudo:
Exploit del Kernel:
3. Strumenti Automatizzati:
Escalation dei Privilegi Windows:
1. Enumerazione:
2. Tecniche Comuni:
Percorsi di Servizio Non Racchiusi tra Virgolette:
AlwaysInstallElevated:
Impersonificazione del Token:
3. Strumenti Automatizzati:
Rarità: Molto Comune Difficoltà: Alta
Burp Suite
5. Come si trova una SQL Injection usando Burp Suite?
Risposta: Test sistematico di SQL injection:
1. Intercetta la Richiesta:
2. Invia al Repeater: Testa i payload manuali:
3. Usa Intruder:
4. Analizza le Risposte:
- Diverse lunghezze delle risposte
- Messaggi di errore
- Ritardi di tempo (blind SQLi)
Test Avanzato:
Rarità: Molto Comune Difficoltà: Media
Test delle Applicazioni Web
6. Come si testano le vulnerabilità XSS?
Risposta: Approccio completo al test XSS:
Tipi di XSS:
- Riflesso: Payload nell'URL/modulo, riflesso immediatamente
- Memorizzato: Payload memorizzato nel database
- DOM-based: Vulnerabilità JavaScript lato client
Metodologia di Test:
1. Identifica i Punti di Iniezione:
2. Bypassa i Filtri:
3. Test XSS con Burp Suite:
4. Scansione Automatizzata:
Rarità: Molto Comune Difficoltà: Media
7. Come si testa la sicurezza delle API?
Risposta: Il test di sicurezza delle API si concentra su autenticazione, autorizzazione e convalida dell'input.
Vulnerabilità Comuni delle API:
1. Autenticazione Compromessa:
2. Autorizzazione Compromessa:
3. Assegnazione di Massa:
Test API REST:
Test GraphQL:
API Fuzzing:
Postman/Burp Suite:
OWASP API Security Top 10:
- Autorizzazione a Livello di Oggetto Compromessa - Testa IDOR
- Autenticazione Compromessa - Testa token deboli
- Eccessiva Esposizione dei Dati - Controlla i dati di risposta
- Mancanza di Risorse e Rate Limiting - Testa DoS
- Autorizzazione a Livello di Funzione Compromessa - Testa l'escalation dei privilegi
- Assegnazione di Massa - Testa l'inquinamento dei parametri
- Errata Configurazione della Sicurezza - Controlla le intestazioni, CORS
- Injection - Testa SQLi, NoSQLi, command injection
- Gestione Impropria degli Asset - Trova le vecchie versioni dell'API
- Logging e Monitoraggio Insufficienti - Controlla i log di audit
Rarità: Comune Difficoltà: Medio-Alta
Penetration Testing di Rete
8. Come si esegue un penetration test di rete?
Risposta: Valutazione strutturata della rete:
1. Scoperta della Rete:
2. Scansione delle Porte:
3. Scansione delle Vulnerabilità:
4. Sfruttamento:
5. Post-Sfruttamento:
Rarità: Molto Comune Difficoltà: Alta
9. Come si attaccano gli ambienti Active Directory?
Risposta: Active Directory è un obiettivo primario con molti vettori di attacco.
Enumerazione:
BloodHound:
Kerberoasting:
AS-REP Roasting:
Pass-the-Hash:
Pass-the-Ticket:
Golden Ticket:
Silver Ticket:
Attacco DCSync:
Movimento Laterale:
Persistenza:
Elusione della Difesa:
Rarità: Comune Difficoltà: Alta
Reportistica
10. Cosa deve includere un report di penetration testing?
Risposta: Struttura completa del report:
Executive Summary:
- Risultati di alto livello
- Impatto aziendale
- Panoramica del rischio
- Raccomandazioni
Dettagli Tecnici:
Finding di esempio: SQL Injection nel Modulo di Login
Gravità: Critica (CVSS 9.8)
Descrizione: Il modulo di login in /admin/login è vulnerabile a SQL injection, consentendo agli aggressori di bypassare l'autenticazione e accedere al pannello di amministrazione.
Asset Coinvolto:
- URL: https://target.com/admin/login
- Parametro: username
- Metodo: POST
Prova di Concetto:
Impatto:
- Accesso non autorizzato al pannello di amministrazione
- Accesso a dati sensibili dei clienti
- Potenziale compromissione del database
Correzione:
- Utilizzare query parametrizzate
- Implementare la convalida dell'input
- Applicare il principio del minimo privilegio all'utente del database
Rarità: Molto Comune Difficoltà: Media
Conclusione
I colloqui per penetration tester richiedono esperienza pratica e profonda conoscenza tecnica. Concentrati su:
- Metodologia: Approccio di test strutturato, documentazione
- Valutazione delle Vulnerabilità: Prioritizzazione del rischio, punteggio CVSS
- Strumenti: Metasploit, Burp Suite, Nmap, script personalizzati
- Escalation dei Privilegi: Tecniche Linux e Windows, strumenti di automazione
- Test Web: SQL injection, XSS, bypass dell'autenticazione
- Test API: Sicurezza REST/GraphQL, falle di autorizzazione
- Test di Rete: Scansione, sfruttamento, movimento laterale
- Active Directory: Kerberoasting, Pass-the-Hash, BloodHound
- Reportistica: Documentazione chiara, impatto aziendale, correzione
Esercitati in lab legali e applicazioni volutamente vulnerabili, costruisci una checklist ripetibile e allena la scrittura dei finding con la stessa cura dell'exploitation. I candidati migliori mostrano giudizio: quando fermarsi, come provare l'impatto in sicurezza e come aiutare il team a correggere.


