GFI Languard

Ciao a tutti,

come da titolo oggi andrmo a drscrivere uno dei Vulneability Scanner più famosi che si vedono in rete , stiamo parlando del GFI-Languard , (attualmente alla versione 2.0) , inserito da sempre , in BackTrack nell’ apposita sezione del “Vulnerability Identification“.

GFI-Languard è un prodotto della GFI Security & Messaging Software , è molto famoso e diffuso , grazie alla sua versatilità.

In BackTrack GFI-Languard si avvia grazie all’ ausilio di Wine , infatti già dalla prima apertura del programma l’interfaccia grafica in winz style , è ampiamente riconoscibile.

Il pregio di un programma del genere è quello di racchiudere dentro di se più tools , in grado di metterci nelle migliori condizioni per fare il test delle vulnerabilità note di più domini o server , di ricercare patch mancanti eccetera…

Voglio specificare subito che GFI-Languard può essere usato per identificazione delle vulnerabilità da parte di admin e non per creare attacchi e quindi eseguire pentesting , anche se dopo una scansione effettuata si può decidere di compiere lo stesso un attacco , ma vedrete dalle righe che seguono eventuali opzioni da prendere in considerazione.

Avendo in locale il mio Server , facciamo con GFI-Languard una prova per vedere come funziona e che risultato ci fornisce.

Passiamo quindi a fare il nostro scanning , non prima naturalmente di aver messo a posto delle opzioni…

Innanzitutto bisogna selezionare l’ host da scannerizzare , che potrebbero essere anche più di uno , potremmo effettuare delle scansioni di interi network , su un intero dominio Windows ad esempio e dal risultato in basso , in formato html , riusciremo a vedere tutte le informazioni raccolte , host per host.

Nel mio caso , avendo nella mia Lan un Server all’ indirizzo 29.230.6.75 , inserirò quest’ IP nello spazio indicato in alto , tenendo conto di tenermi l’ host anche per futuri esperimenti , dandogli quindi un nome , un eventuale commento e salvando il tutto.

Ma andiamo avanti…

Nella selezione degli Alerts , l’ icona con il punto esclamativo , vengono inserite tutte quelle vulnerabilità che a noi più interessano , ma che GFI-Languard seleziona automaticamente tutte in blocco.

Questa l’interfaccia dopo la scannerizzazione del server..

***

***

Come possiamo vedere dall’ immagine , GFI-Languard ci ha restituito un ampio e dettagliato risultato , dagli header del sito che si trova sul server , all’ intero range di informazioni che il server usa per i DNS e la Subnet che uso io.

Lo scanning , bisogna dirlo , non è durato molto , ed ha restituito un buon numero di informazioni , dal MAC-Address , a tutti i servizi aperti , porta per porta , che nel nostro caso sono stati individuati:

Il servizio Samba , il webserver Apache con tipo di protocollo , (SSH – HTTP-secure) , PHP alla versione 5.2.1 , Il tipo di server WinServer2003 Spk.2 , la versione , e 5 porte aperte con tanto di servizio incluso.

La caratteristica principale di un prodotto quale GFI-Languard , è quella di evitare all’ utente di verificare servizio per servizio tutte le possibili “aperture” sconsiderate e che potrebbero causare problemi legati a vulnerabilità “note” , con un notevole risparrmio di tempo e di lavoro.

La rilevazioni che GFI-Languard tiene in considerazione principalmente sono:

Il tipo di Server , la versione ed eventuale Service Pack.—>Nel nostro caso ripeto: WinServ.2003 – Spk.2 – con il Mac-Address riportato , il nome del Workgroup ed il nome dell’ host.

Le eventuali patch di sicurezza mancanti

I punti di accesso Wireles.

Condivisioni in linea e porte aperte.

—>Nel nostro caso ha trovato: Samba , Subnet , 5 porte aperte con servizi annessi e nessun utente “loggato”

Naturalmente volendo possiamo “maneggiare” tutti i tipi di alert , solo per fare un esempio ho lasciato selezionata la spunta sul controllo CGI , (Common Gateway Interface) , perché l’ host da scannerizzare conteneva un webserver , ma nel caso sia stato una situazione diversa , per risparmio di tempo e di lettura risultato , avrei benissimo potuto togliere la spunta di selezione.

Il tutto è stato eseguito nel mio caso per la prima volta con GFI-Languard , la prossima volta potrò tenere il profilo salvato con le stesse condizioni di utilizzo.

Una caratteristica , importante , che GFI-Languard ci mette a disposizione è l’ accesso da remoto sul computer/server con delle credenziali determinate… …esempio:

***

***

Nel caso indicato in figura , possiamo vedere che le impostazioni di accesso sono quelle che GFI-Languard usa di default , ma che noi possiamo cambiare a seconda della situazione in cui ci troviamo.

Sul mio server , non posso ovviamente accedervi senza credenziali , sono nella mia subnet , abbastanza sicura , ma per accedervi devo usare username e password dell’ account administrator oppure di un utente guest o altro.

Questa particolare scelta ci permette di avere dal risultato della scansione molte cose utili in più alla scansione già effettuata in precedenza , come ad esempio il test della complessità della password usata , , per i sistemi UNIX della KEY , mettendoci in condizioni tali da poterla eventualmente cambiare.

Quando in questo caso GFI-Languard esegue una scansione , le credenziali di accesso da remoto sono quelle che caratterizzano il sistema su cui GFI-Languard è in esecuzione , intese come “default”.

Queste credenziali che GFI-Languard ci fa inserire sono , come detto sopra , salvabili all’ interno di ogni profilo , in questo modo ci possiamo connettere ad ogni server con delle credenziali diverse , ognuna contenuta in un profilo diverso, eseguibile ad ogni scansione singolarmante e tutti insieme , tanto il risultato sarà sempre descrittivo host – per – host , server per server , dominio per dominio.

GFI-Languard è un’ ottimo tool per la scansione di Servizi aperti e di Eventuali possibili falle su sistemi , ma come pentesting , (inteso come vero attacco) , bisogna rendersi conto di più fattori , come , giusto per fare qualche esempio , il fatto che GFI-Languard lascia log sui sistemi scannerizzati , avverte in modo chiaro gli admin dei ping ricevuti , non performa i ping dopo che l’ host in ricezione ha rigettato lo stesso , considerandolo down , spento… …ma non credo sia questo il suo scopo.

Per ciò per cui è stato creato , è un ottimo tool senza ombra alcuna , in caso di BUG “noti” , GFI-Languard ci fornisce addirittura la natura della patch e dove poterla reperire , questo è propriamente il suo ruolo a cui credo adempia ampiamente , pensiamo ad un admin aziendale , che deve tenere sott’ occhio una cinquantina di pc magari su più domini , non credo che sia un programma di cui si possa fare a meno.

Il mio server , creato per consentirmi di fare pentesting , quindi BUGato se preso all’ interno della mia subnet , non è stato oggetto di verifica da parte di GFI-Languard , la versione di PHP che utilizzo insieme alla versione di apache porta un BUG , (anche vecchio e molto conosciuto) , ma che non è risultato nella scansione.

Nel compenso GFI-Languard è stato in grado di enumerarmi tutta la subnet e l’ ha fatto in maniera velocissima , e soprattutto è stato in grado di riportarmi tutte le informazioni che un admin , su WinServer 2003 , avrebbe scoperto con molto più tempo e lavoro.

Un altro dei tanti ottimi prodotti inseriti in BackTrack , che usato allo scopo giusto , ci evita di spendere una granparte di tempo e fatica.

I risultati di scansione sono organizzati in categorie , e visibili comodamente all’ occhio tramite delle icone , di cui ne riporto un solo esempio:

  • Icona che indica una vulnerabilità
  • Vulnerabilità Potenziale
  • Condivisioni attive sull’ host
  • Applicazioni trovate in esecuzione
  • Schede di rete , MAC-Address , eccetera
  • Porte TCP aperte
  • Stato dell’applicazione di patch nel sistema
  • NETBIOS con name e tutto il resto
  • Computer
  • Gruppi trovati
  • Utenti
  • Utenti connessi
  • Sessioni aperte
  • Servizi
  • Processi
  • Orario da remoto

Da qui possiamo già capire che se abbiamo bisogno di scannerizzare e tenere sotto controllo 2/3 domini , GFI-Languard è quello che fa al caso nostro.

La grande veersatilità di configurazione poi di cui gode GFI-Languard è a dir poco eccezionale , secondo ogni criterio è possibile fare una configurazione diversa della nostra scansione , facendo riferimento ad una scansione predefinita con un determinato profilo salvato , GFI-Languard ci mette al corrente delle diversità tra più scansioni e lo fa con le caratteristiche di cui gode maggiormente , velocità ed efficacia di analisi settore per settore , servizio per servizio , con orario di login di eventuali utenti connessi e tutto ciò che serve ad un admin per poter tenere sotto controllo il proprio network , il tutto comodamente salvato in un file html.

***

***

Ciao a tutti e alla prossima.

Annunci

Installazione e configurazione di Nessus in BackTrack

nessus.jpg

Ciao a tutti,

eccomi , e anche dopo brevissimo tempo , a scrivere un altro tutorial , e lo faccio sull’ installazione e la configurazione in backtrack di uno strumento importantissimo , il Nessus.

Ma cos’é il Nessus?

Il Nessus è un programma per lo scanning di vulnerabilità , completo , sicuro e userfriendly , e vi assicuro che è tra i migliori in circolazione. A mio avviso il Nessus è uno strumento unico , a cui un user non può rinunciare , presenta una caratteristica di lavoro non facile da trovare su altri tool , e cioé la possibilità di avere a disposizione un tool che ci faccia lavorare in stile client – server senza alcun tipo di problema Il server può risiedere sul proprio pc in localhost oppure in remoto , e non credo ci siano molti strumenti simili oggi in circolazione.

Il Nessus è un prodotto della Tenable , ed è disponibile oltre che per la nostra backtrack , (naturalmente parlo del fomato pacchettizzato per la Slackware-12.0) , tramite un processo determinato che ora descriverò , anche per altre piattaforme , da Windows a BSD ed altri.

Parlare del Nessus come un semplice scanner è sbagliato , perché il Nessus tramite tutti i suoi plugin , si parla dell’ ordine delle migliaia , e le sue funzioni , è un vero e proprio strumento indispensabile per coloro che lavorano nel campo della sicurezza , e non è facilmente sostituibile.

Il Nessus esegue uno scanning delle vulnerabilità , servendo l’utente con delle informazioni dettagliate a riguardo delle vulnerabilità trovate durante lo scanning avvalendosi anche di link esterni sempre aggiornati per le informazioni , evidenziando e classificando le vulnerabilità una ad una , ed è per questo che non può essere definito solo uno scanner , e che non può mancare in una distro al top come backtrack.

Purtroppo i problemi di licenza non possono essere discussi da noi , ma solo giudicati , ed una casa come la Tenable che non usa la licenza GPL-2 , impedendo al remote-exploit di inserire il Nessus in backtrack-3beta , a mio modestissimo parere , ci perde qualcosina , anche se il Nessus , come tool , non ha bisogno di altri commenti.

Nella versione 2 di backtrack , ricordo che dovetti registrarmi alla Tenable , ed ottenere un serial number , questa volta non sono sicuro che serva ancora , ma io ce l’ho , fossi in voi , mi registrerei , non ci costa nulla d’altronde , e in più sul suto di Tenable Network ci sono delle guide ed un DEMO , a cui in caso di necessità o anche solo per approfondire la cosa , possiamo sempre far riferimento.

Già in qualche articolo precedente ho fatto presente la mia totale approvazione nell’ inserire in backtrack3beta il nuovo server grafico Xorg , cosa che ci permette di avere tutti i programmi che possono attualmente girare su Slackware-12.0 , e al contrario della versione 2 della backtrack , con la quale per avere il Nessus ricordo che dovetti compilarmi tutti e 5 i pacchetti con il 30/40% delle librerie mancanti , questa volta possiamo prenderci benissimo i pacchetti Slackware-12.0 direttamente dai repository di Slacky.eu , i miei preferiti.

La prima cosa da fare quindi per avere il Nessus correttamente installato sulla nostra macchina è andarci a scaricare i seguenti pacchetti , che potete lasciare benissimo nella vostra /root.

libnasl-2.2.10-i486-1sl.tgzslackware_logo.gif

nessus-client-1.0.2-i486-1sl.tgz

nessus-core-2.2.10-i486-1sl.tgz

nessus-libraries-2.2.10-i486-1sl.tgz

nessus-plugins-2.2.10-i486-1sl.tgz

Una volta che tutti i pacchetti sono stati scaricati nella vostra /root , directory di download di default in backtrack , andate in konsole e digitate il comando:

installpkg *.tgz

In questo modo tutti i pacchetti nell’ ordine di sistema verranno installati nella vostra macchina , e alla fine avrete il vostro Nessus in attesa di configurazione.

Naturalmente dovete stare attenti a non avere nessun altro pacchetto con estensione *.tgz nella vostra /root , altrimenti verrà installato o reinstallato , quindi se ne avete qualcuno come residuo , spostatevelo in un’ altra directory.

Ora , una volta che abbiamo il nostro Nessus , vediamo come poterlo configurare.

Una volta aperto il Nessus si presenta con una buona interfaccia grafica , e subito ci viene chiesto di eseguire un login , che va eseguito inserendovi i propri dati. Per inserire questi dati però è necessario crearsi degli utenti da aggiungere alla lista di Nessus , e gli user per Nessus vanno creati tramite terminale con il comando:

nessus-adduser

Una volta eseguito il comando si seguono le indicazioni del sistema , in backtrack essendo utente root non si deve fare altro che premere invio appena settati user e password , e l’utente abilitato ad eseguire il login per il Nessus è stato creato.

Ora creiamo una certificazione per Nessus , che praticamente è solo un documento che abilita Nessus in connessione SSL , che anche se può sembrare strano , date le domande private , sono informazioni che non vengono rivelate a nessuno ma risiedono nel database di Nessus che si trova sulla nostra macchina , e precisamene in questa posizione:

Nessus Server :
Certificate = /usr/com/nessus/CA/servercert.pem
Private key = /usr/var/nessus/CA/serverkey.pem

risposta che vi viene data in konsole alla fine della configurazione/creazione del certificato , quindi potete stare tranquilli…

il comando per la creazione del certificato è:

nessus-mkcert

Ora dobbiamo passare alla configurazione finale di Nessus , e cominciamo con il fargli caricare tutti i plugin , ( sono 15020 ) , dando da konsole il comando:

nessusd -D
aspettiamo che Nessus si carichi i propri plugin e diamo da konsole il comando per farlo partire:

nessus

(Anche se installato correttamente il Nessus , è possibile che non si sia inserita nel menu di KDE , basta lanciarlo da konsole con il semplice comendo nessus).

ccc.png

Come potete vedere sono “loggato”, ossia sono riuscito , ad avviare da utente root (root solo per il nome) , il Nessus , che al primo login subito si è preso altri 50/60 secondi per ripetersi la scansione dei plugin.

Una volta eseguito il login ci verrà mostrato il certificato , e all’ accettazione dello stesso possiamo partire con il nostro Nessus. Ricordo che è meglio fare in modo che ad ogni avvio Nessus aggiorni tutti i plugins , per migliorare lo scanning ed avere sempre a propria disposizione tutti gli strumenti sempre aggiornati.

—–>Nella prima tabella , Nessusd Host , abbiamo , come specificato all’ inizio dell’articolo , la possibilità di inserire un host remoto , oppure come è la scelta di default , di lasciare l’ host locale per avviare lo scanning dalla nostra postazione.

—–>Nella seconda tabella invece , quella dei Plugins , possiamo selezionare tutti quei plugins che a noi più interessano , cercando di tralasciare tutti quelli che invece sono di troppo , non dimentichiamo che oltre a risparmiare tempo , un minor numero di plugins , nel limite del possibile , è necessario perché nel Nessus sono inseriti dei plugins che durante la scansione delle vulnerabilità su di un determinato host possono creare dei seri problemi all’ host stesso , non ultimo un Denial Of Service o anche un crash del sistema.

—–>La terza tabella Credential , serve per fare il setting appunto delle credenziali , e cioé immettere tutti quei dati che se in nostro possesso , possono servirci per l’ingresso ad esempio in un determinato database , e possono essere immessi come dati per il protocollo SSL , Kerberos , Samba eccetera…

—–>La quarta tabella invece riguarda lo Scan Options , ovvero le opzioni di scanning , di cui noi possiamo servirci in vari modi a seconda delle nostre necessità , possiamo inserire una sola porta da scannerizzare inserendo il numero della porta , oppure possiamo inserire una serie di porte separandole tra loro con una virgola ,(–>20,80) , se invece le porte sono diverse e possono essere collocate inserie , ovvero con numero ricorsivo , possiamo inserire la serie di porte separando il numero della prima porta e l’ ultima con un trattino (–> 20-80) , possiamo inserire la PATH da scannerizzare , se diversa da quella di default /cgi-bin:/scripts , possiamo inserire inoltre il metodo di scanning, infatti nella parte bassa della finestra possiamo inserire delle opzioni che ci possono permettere di usare l’ amap , di effettuare o meno dei ping sull’ host remoto , e tutte queste opzioni sono utilizzabili singolarmente , (e anche settando un tempo di timeout) , essendo tutte parte dei plugins.

—–>La quinta tabella è dedicata invece al Target , l’ obbiettivo da scannerizzare , che può essere immesso come IP oppure come nome dell’ host , nel caso in cui dovessimo fare un lavoro più complesso quale ad esempio lo scanning di una rete intera basta inserire tutti gli indirizzi-IP/nomi-host , separandoli oppure aggregandoli come per le porte viste in precedenza , tramite uno slash “/” o una virgola , e.g.: 192.168.122/188 per un intero network oppure 192.168.122.9,192.168.1.7 per due target.

– —->La sesta tabella definisce invece le Regole da applicare all’ user creato prima con il comando dato tramite konsole.

—–>La settima riguarda le Tecniche di scanning , il tuning , e altre opzioni , come quella di poter fare un detecting del firewall , lo scanning delle porte in ordine casuale o meno (random-mode) , la possibilità di un eventuale congestione del sistema target , e anche opzioni da configurare per i tool da adoperare se selezionati nelle tabelle precedenti come l’ amap , a cui possiamo dare l’ abilitazione o meno del SSL , dell’ RPC o altro. Importante in questa tabella da configurare è anche l’ eventualità , sempre e solo se inserita , del HYDRA , che richiede logicamente altrettante configurazioni oppure anche dei files *.txt contenenti dizionari per l’ azione di Bruteforce.

—–>L’ottava e La nona tabella riguardano rispettivamente la nostra volontà o meno di salvare i dati eventualmente ricevuti , e i credit’s della Tenable , a cui vanno i nostri complimenti , magari con la speranza di assunzione di una nuova licenza che possa permetterci di avere Nessus nella backtrack-3final , ma non voglio dilungarmi a riguardo , del resto le licenze sono fatte apposta per non essere sottoposte a giudizio , quindi se la Tenable ha deciso di non aderire alla GPL-2 , noi non possiamo che augurarci solo un cambiamento

Come possiamo vedere da tutte le opzioni e dalla possibilità di utilizzare interi tool all’ interno dello stesso Nessus , stiamo parlando di un prodotto davvero unico , e che se configurato correttamente può diventare uno strumento a cui non si può fare a meno.

ciao a tutti e alla prossima.