Segreti dimenticati
Il sysadmin del Biscottificio Crumiro è in ferie e ha lasciato il pannello di deploy protetto da una password che nessuno conosce. Ma chi ha fretta lascia tracce: cerca nella cronologia dei comandi e nei file di servizio, poi entra nel pannello.
Laboratorio 2 di 5 del percorso Privilege Escalation. Se ti blocchi hai 3 aiuti, dal più vago al più preciso: costano 0, 50 e 150 XP.
Cosa impari
Gli obiettivi si completano da soli mentre lavori nel terminale; ognuno vale punti esperienza:
- Leggere la cronologia dei comandi (100 XP)
- Cercare "password" nei file di servizio (150 XP)
- Entrare nel pannello di deploy con la credenziale giusta (200 XP)
Argomenti: privesc, secrets, history, audit.
I comandi che userai
Il terminale è simulato e capisce una quarantina di comandi Linux. In questo laboratorio ti servono soprattutto questi:
history: mostra la cronologia dei comandi digitati: racconta chi ha fatto cosa, a volte con password scritte sulla riga di comando.grep: cerca le righe che contengono una parola, anche in intere cartelle con -r. È lo strumento principale per analizzare testo e registri.cat: stampa il contenuto di un file: il modo più diretto di leggere configurazioni, note e registri.curl: fa richieste HTTP dal terminale e mostra la risposta grezza del server, intestazioni comprese.
L'ambiente simulato
Lavori su una shell Linux simulata, nella home dell'utente runner: file e cartelle inventati, nessun bersaglio in rete.
Oltre alla home c'è un sistema simulato completo, con file di configurazione, registri, utenti e permessi da esaminare.
Sulla macchina girano anche servizi locali:
- Web (HTTP): un server web con pagine, API o pannelli di gestione: la parte più esposta di quasi ogni organizzazione.
- Database: un database (MySQL, MariaDB o PostgreSQL), che dovrebbe rispondere solo ai servizi che lo usano e mai a tutta la rete.
La lezione di difesa
A laboratorio risolto, il writeup spiega cosa è andato storto e come ci si protegge:
Le credenziali finiscono dove non dovrebbero: file di configurazione leggibili da tutti, script, cronologia della shell (una password scritta sulla riga di comando resta in .bash_history). Lezione difensiva: i segreti stanno in un gestore di segreti o in file con permessi 600, mai nel codice; si ruotano appena sono stati esposti e si cercano da soli (secret scanning, grep -r periodico) prima che lo faccia qualcun altro.
Prima e dopo questo laboratorio
Per aprirlo devi aver risolto:
- Chi sono e cosa posso fare? (Privilege Escalation, medio)
- Ambiente e cronologia (Fondamenti Linux, medio)
Dopo questo laboratorio puoi passare a:
- Segreti nei processi e nei servizi locali (Privilege Escalation, medio)
Il percorso Privilege Escalation
Privilege Escalation qui è un percorso di audit: sei su un server come utente normale e controlli se qualche configurazione sbagliata permette di ottenere più privilegi del dovuto. Esamini le regole sudo, i programmi con il bit SUID, le credenziali dimenticate nella cronologia e nei file, i segreti passati come argomenti dei processi. Sono gli stessi controlli che fa chi mette in sicurezza un sistema, e ogni laboratorio finisce con il principio che li riassume tutti: privilegio minimo.