Da anni Kali ha ereditato la policy utente root predefinita da BackTrack. Come parte della nostra valutazione degli strumenti e delle politiche di Kali, abbiamo deciso di cambiare questo e di spostare Kali su un modello di "utente non root predefinito tradizionale". Questa modifica farà parte della versione 2020.1, attualmente prevista per la fine di gennaio. Tuttavia, noterai questo cambiamento nelle immagini settimanali a partire da ora.
Cronologia dell'utente root predefinito
All'inizio c'era BackTrack. Nella sua forma originale, BackTrack (v1-4) era una distribuzione live basata su Slackware destinata ad essere eseguita da un CDROM. Sì, torniamo indietro nel tempo (2006!) .
In questo modello, non c'era un vero meccanismo di aggiornamento, solo un mucchio di strumenti di pentesting che vivevano nel /pentest/
directory, che potresti utilizzare come parte delle valutazioni. Erano i primi giorni, quindi le cose non erano molto sofisticate, eravamo solo felici che le cose funzionassero. Molti di quegli strumenti all'epoca richiedevano l'accesso come root per essere eseguiti o funzionavano meglio quando venivano eseguiti come root. Con questo sistema operativo che sarebbe stato eseguito da un CD, non sarebbe mai stato aggiornato e aveva molti strumenti che richiedevano l'accesso come root per essere eseguito, è stata una decisione semplice avere un modello di sicurezza "tutto come root". Aveva perfettamente senso per l'epoca.
Col passare del tempo, tuttavia, ci furono una serie di cambiamenti. Tutti noi che eravamo in giro a quel tempo ricordavamo le cose in modo leggermente diverso, ma a grandi linee abbiamo visto che le persone stavano installando BackTrack su metallo nudo, quindi sentivamo che doveva esserci un meccanismo di aggiornamento. Soprattutto dopo aver girato per Defcon e aver notato quante persone stessero utilizzando una versione di BackTrack vulnerabile a un certo exploit uscito poche settimane prima. Questo ci ha spinto a basare BackTrack 5 su Ubuntu anziché su Slackware dal vivo (febbraio 2011) . Poi, con il passare del tempo, eravamo così impegnati a combattere con Ubuntu che ci siamo sentiti come se dovessimo passare a qualcos'altro.
Questo ci ha portato a Kali (marzo 2013) , ed essendo un derivato Debian ufficiale.
Kali moderno
La nostra mossa per essere un derivato Debian ha portato con tutta una serie di vantaggi. In effetti, così tanti non vale la pena esaminarli qui, basta guardare i primi post del blog di Kali poco dopo il lancio e vedrai un sacco di esempi. Ma un vantaggio di cui non abbiamo mai parlato molto è il fatto che ci basiamo su Debian-Testing.
Debian ha una meritata reputazione per essere una delle distribuzioni Linux più stabili in circolazione. Debian-Testing è il ramo di sviluppo della prossima versione di Debian e, realisticamente, è ancora più stabile di molte distribuzioni Linux tradizionali.
Anche se non incoraggiamo le persone a utilizzare Kali come sistema operativo quotidiano, negli ultimi anni sempre più utenti hanno iniziato a farlo (anche se non lo utilizzano per eseguire test di penetrazione a tempo pieno) , inclusi alcuni membri del team di sviluppo di Kali. Quando le persone lo fanno, ovviamente non vengono eseguite come utente root predefinito. Con questo utilizzo nel tempo, c'è l'ovvia conclusione che l'utente root predefinito non è più necessario e che Kali farà meglio a passare a un modello di sicurezza più tradizionale.
Perché alcuni strumenti richiedono l'accesso come root
Consente di avere una barra laterale veloce e rivedere come alcuni strumenti richiedono il root. Per questo, sceglieremo nmap.
Nmap è senza dubbio il portscanner più popolare in uso oggi e uno degli strumenti più popolari utilizzati su Kali. Quando eseguito da un utente non root che esegue una scansione standard, nmap eseguirà per impostazione predefinita quella che è nota come scansione di connessione (-sT
). In questo tipo di scansione, viene eseguita una stretta di mano a tre vie TCP completa per identificare se una determinata porta è aperta o meno. Tuttavia, quando viene eseguito come utente root, nmap sfrutta i privilegi aggiuntivi per utilizzare i socket grezzi ed eseguirà una scansione sincronizzata (-sS
), un tipo di scansione molto più popolare. Questa scansione sincronizzata non è possibile a meno che non venga eseguita come root.
Questo aspetto degli strumenti di sicurezza che richiedono autorizzazioni a livello di root tradizionalmente non è stato raro. L'esecuzione come utente root per impostazione predefinita semplifica l'utilizzo di questi strumenti.
Una delle conclusioni, forse sorprendenti, a cui siamo giunti esaminando questo problema è che il numero di strumenti che richiedono l'accesso come root è diminuito nel corso degli anni. Ciò ha reso meno utile questa policy di root predefinita, portandoci ora al punto in cui apporteremo questa modifica.
Molte applicazioni richiedono account non root
Nella direzione opposta, nel corso degli anni una serie di applicazioni e servizi sono stati configurati per vietarne l'utilizzo come root
utente. Questo è diventato un onere di manutenzione per noi (quando abbiamo deciso di eliminare il controllo o riconfigurare il servizio) o un fastidio per gli utenti che non potevano utilizzare la loro applicazione (con chrome/chromium è un caso ben noto).
L'eliminazione di questa policy di root predefinita semplificherà quindi la manutenzione di Kali ed eviterà problemi agli utenti finali.
Implementazione per utenti non root di Kali
Ci sono una serie di modifiche che puoi aspettarti di vedere come parte di questa modifica.
- Kali in modalità live verrà eseguito come utente
kali
passwordkali
. Non piùroot
/toor
. (Preparati a impostare i tuoi filtri IDS, poiché siamo sicuri che questa combinazione utente/pass sarà presto scansionata dai robot ovunque). - Al momento dell'installazione, Kali ti chiederà di creare un utente non root che avrà privilegi di amministratore (a causa della sua aggiunta a
sudo
gruppo). Questo è lo stesso processo di altre distribuzioni Linux con cui potresti avere familiarità. - Gli strumenti che identifichiamo come richiedenti l'accesso come root, così come le comuni funzioni amministrative come l'avvio/arresto dei servizi, richiederanno in modo interattivo i privilegi di amministratore (almeno se avviati dal menu Kali). Se davvero non ti interessa la sicurezza e se preferisci il vecchio modello, puoi installare kali-grant-root ed eseguire
dpkg-reconfigure kali-grant-root
per configurare i diritti di root senza password.
Nel complesso, non ci aspettiamo che questo sarà un cambiamento importante per la maggior parte degli utenti. È possibile che alcuni strumenti o funzioni amministrative manchino nella nostra recensione, quando ciò accade ti chiediamo di creare una segnalazione di bug in modo che possa essere tracciata e corretta. (E no, twittare a noi non è una segnalazione di bug e non verrà tracciato. Mi dispiace, ma non è scalabile).
Andare avanti
Detto questo, non stiamo ancora incoraggiando le persone a utilizzare Kali come sistema operativo quotidiano. Più di ogni altra cosa, questo perché non testiamo quel modello di utilizzo e non vogliamo l'afflusso di segnalazioni di bug che ne deriverebbero. Tuttavia, per quelli di voi che hanno familiarità con Kali e vogliono eseguirlo come piattaforma quotidiana, questa modifica dovrebbe aiutarti molto. Per il resto di voi, questo dovrebbe darvi un modello di sicurezza migliore con cui operare durante le valutazioni.
Come accennato all'inizio, questa modifica è attualmente disponibile nelle build giornaliere e sarà nella prossima build settimanale. Sentiti libero di scaricare e testare in anticipo, poiché vorremmo che il maggior numero possibile di potenziali problemi venissero eliminati prima del rilascio. Più utenti attivi su questo, meglio è.
Dopo un forte 2019 con Kali, questo è un cambiamento importante per iniziare il nostro ciclo di sviluppo 2020. Aspettati di più con il passare dell'anno. Come sempre, sentiti libero di unirti al bug tracker, ai forum o a git per contribuire e far parte del futuro di Kali.