LinEnum - Guida Completa
LinEnum è uno script bash utile durante la fase di post-exploitation su sistemi Linux. Il suo obiettivo è automatizzare la raccolta di informazioni che potrebbero aiutare nell'escalation dei privilegi
LinEnum - Guida Completa
Introduzione
LinEnum è uno script bash utile durante la fase di _post-exploitation_ su sistemi Linux. Il suo obiettivo è automatizzare la raccolta di informazioni che potrebbero aiutare nell'escalation dei privilegi.
È uno strumento ampiamente utilizzato da pentester e red teamer per ottenere una panoramica veloce e approfondita del sistema compromesso.
Obiettivi di LinEnum
- Identificare configurazioni deboli.
- Cercare file e directory con permessi errati.
- Analizzare binari SUID/SGID.
- Individuare servizi in esecuzione.
- Verificare vulnerabilità note e possibili exploit.
Download e utilizzo
Clonazione del repository
git clone https://github.com/rebootuser/LinEnum.git
cd LinEnum
chmod +x LinEnum.shEsecuzione
./LinEnum.sh -t -r report.txtOpzioni principali:
-t: attiva il controllo "thorough" (approfondito).
-r: salva l'output su file.
-e: esegue comandi customizzati definiti in un file.
-k: cerca specifiche parole chiave nell'output.
Categorie di informazioni raccolte
1. Informazioni generali di sistema
- Versione del kernel
- Uptime
- Informazioni sull’utente corrente
- Cron jobs
2. Informazioni sull’utente
- Gruppi a cui appartiene
- ID utente (UID)
- Altri utenti sul sistema (
/etc/passwd,/etc/shadowse accessibile)
- SSH keys
3. File con permessi pericolosi
- File world-writable
- File con flag SUID/SGID
- Script con permessi di esecuzione per tutti
4. Servizi e processi
- Servizi in esecuzione
- Porte aperte (netstat, ss)
- Processi in esecuzione come root
5. Software e pacchetti
- Pacchetti installati
- Versioni dei software
- Potenziali versioni vulnerabili
6. Crontab e timer
- Task pianificati per root e utenti
- Script in
/etc/cron*
- Permessi su questi file
7. Accesso e autenticazione
- SSH key
- File
.bash_history,.ssh/authorized_keys
- File
.netrc,.plan,.rhosts
8. Configurazioni di rete
- Interfacce attive
- Configurazioni IP
- DNS
9. Possibili vettori di escalation
- NFS mount con root_squash disabilitato
- Docker / LXC mal configurati
- Script di backup
- Servizi con configurazioni deboli
Esempio di escalation identificata da LinEnum
Supponiamo che LinEnum segnali un file con SUID:
-rwsr-xr-x 1 root root 12345 Mar 10 10:00 /usr/bin/vuln_appSe vuln_app è vulnerabile (es. buffer overflow, path injection), è possibile sfruttarlo per ottenere una shell root.
Consigli d'uso
- Usalo subito dopo l'accesso iniziale alla macchina compromessa.
- Abbina LinEnum ad altri strumenti come LinPEAS per un’analisi comparativa.
- Esegui LinEnum come utente non privilegiato per vedere cosa è accessibile da un contesto ristretto.
Conclusioni
LinEnum è uno strumento fondamentale per velocizzare e rendere efficace la fase di privilege escalation su Linux. Sebbene non offra exploit diretti, fornisce indizi preziosi da investigare manualmente o con altri tool.
Utilizzalo come parte di una metodologia ben strutturata nella post-exploitation.