
Script di enumerazione Linux locale che identifica vettori di escalation dei privilegi, incluse configurazioni errate, file scrivibili da tutti, password in chiaro e exploit applicabili per valutazioni di sicurezza e preparazione a CTF.
Questo script è pensato per essere eseguito localmente su un sistema Linux per elencare informazioni di base e cercare vettori comuni di escalation dei privilegi, come file scrivibili da tutti, configurazioni errate, password in chiaro ed exploit applicabili.
Linuxprivchecker è progettato per identificare potenziali aree da approfondire, non per fornire azioni dirette o sfruttamento. Questo per aiutare gli utenti a imparare come funzionano queste escalation di privilegi e per rimanere in linea con le regole, per lo sfruttamento auto-diretto, stabilite per OSCP, HTB e altri CTF/esami.
Cercheremo di aggiungere ulteriori informazioni e riferimenti quando possibile. Come attuale manutentore, ho anche in programma di accompagnare le nuove funzionalità con un post sul mio blog (hackersvanguard.com) per spiegare ulteriormente ogni potenziale area di escalation dei privilegi e quali criteri potrebbero essere necessari.
Per eseguire su sistemi Python legacy >2.6, basta ottenere lo script Python tutto-in-uno ed eseguirlo.
wget https://raw.githubusercontent.com/sleventyeleven/linuxprivchecker/master/linuxprivchecker.py
python linuxprivchecker.py -w -o linuxprivchecker.log
Al momento, Linuxprivchecker per Python 3.X dovrebbe essere considerato una versione beta stabile. Possono verificarsi problemi con lo script e potrebbe sicuramente perdere possibili vulnerabilità (apri una issue o una PR).
Per eseguire la versione Python 3, basta usare pip.
pip install linuxprivchecker
Quindi eseguilo tramite riga di comando se runpy è disponibile.
linuxprivchecker -w -o linuxprivchecker.log
oppure se runpy non riesce ad aggiungere lo script al tuo PATH
python3 -m linuxprivchecker -w -o linuxprivchecker.log
Se il sistema che stai testando ha Python 2.6 o superiore e/o argparser installato, puoi utilizzare le seguenti opzioni. Se l'importazione di argparser non funziona, verranno eseguiti tutti i controlli e non verrà scritto alcun file di log. Tuttavia, puoi comunque utilizzare la reindirizzazione del terminale per creare un log, ad esempio 'python linuxprivchecker.py > linuxprivchecker.log'.
usage: linuxprivchecker.py [-h] [-s] [-w] [-o OUTFILE]
Prova a raccogliere informazioni sul sistema e a trovare potenziali exploit
argomenti opzionali: -h, --help mostra questo messaggio di aiuto ed esce -s, --searches salta ricerche che consumano tempo o risorse intensive -w, --write se scrivere un file di log, può essere usato con -0 per specificare nome/posizione -o OUTFILE, --outfile OUTFILE il file in cui scrivere i risultati (deve essere scrivibile per l'utente corrente)
Avviso
Questo script viene fornito così com'è, senza alcuna promessa di funzionalità o accuratezza. Non ho piani per mantenere aggiornamenti, non l'ho scritto per essere efficiente e in alcuni casi potresti trovare che le funzioni non producano i risultati desiderati. Ad esempio, la funzione che collega i pacchetti ai processi in esecuzione si basa su parole chiave e non sarà sempre accurata. Inoltre, l'elenco degli exploit incluso in questa funzione dovrà essere aggiornato nel tempo. Sentiti libero di modificarlo o migliorarlo come meglio credi.
Sei libero di modificare e/o distribuire questo script come desideri. Chiedo solo di mantenere l'attribuzione all'autore originale e di non tentare di venderlo o incorporarlo in alcuna offerta commerciale (come se valesse qualcosa, comunque :)