eCPPT – CEH – CCNA – CCSA – CCSE – CCSP – FNSE – PCNSE

La raccolta delle Informazioni – Guida Definitiva 2019

L

NOVITA’ 2019!

Parliamoci chiaro: non puoi pensare di diventare un ETHICAL HACKER senza conoscere almeno un LINGUAGGIO DI PROGRAMMAZIONE!

Accedi adesso al corso “PYTHON PER HACKER – 2019”

Oltre 10 ORE di VIDEO LEZIONI e oltre 100 CODICI PRONTI DA ESEGUIRE!




In questo articolo ci soffermeremo sulla prima fase della metodologia del penetration testing. Questa fase è definita “raccolta delle informazioni”, cerchiamo di capirne meglio il motivo.

Esistono principalmente tre tipologie di penetration test:

  • BLACK BOX TESTING.
  • GREY BOX TESTING.
  • WHITE BOX TESTING.

Nel black box, colui che effettua il test di sicurezza, non è a conoscenza di alcun dettaglio sull’infrastruttura di rete che dovrà testare. Spesso viene solo fornito il sito web aziendale e nient’altro.

Nel white box, l’operatore è a conoscenza di tutte le informazioni della rete da esaminare o della parte che dovrà testare. Il grey box è una via di mezzo rispetto alle altre due categorie.

Supponiamo di dover effettuare un test di tipo “black box”. Non abbiamo alcuna conoscenza del bersaglio ed è per questo che abbiamo necessità di raccogliere più informazioni. E’ in scenari simili che si colloca la fase di raccolta delle informazioni.

In questo articolo analizzeremo nel dettaglio gli strumenti e la procedure per completare con successo questa fase.

Premetto subito che, devi prenderti tutto il tempo necessario a svolgere le varie attività: questa è una fase che va svolta accuratamente, senza fretta.

Prime considerazioni

La prima cosa che ci tengo a mostrarti, è che non esiste un metodo unico per procedere. Raccogliere le informazioni vuol dire indagare, approfondire e studiare tutto ciò che è legato al nostro bersaglio e questo, ovviamente, dipende molto anche dal tipo di business sul quale operiamo.

Immaginiamo di dover effettuare il test nei confronti di un’azienda di trasporti. Inizierò a raccogliere informazioni sui dipendenti, sui fornitori, su quali rapporti commerciali sono stati instaurati nel tempo, dati societari, ecc.

Ciò per ribadire, ancora una volta, che le mie attività saranno conseguenza della tipologia di bersaglio che tratterò. Tuttavia, possiamo riscontrare dei “passi comuni” a cui si può fare riferimento.

Possiamo schematizzarli come segue, in relazione al tipo di ricerca che vogliamo effettuare:

  • Utilizzo di Google Hacking – Google Dorks.
  • Utilizzo della Google Cache.
  • La “Wayback machine”.
  • Informazioni dai social media.
  • Le keyword negli annunci di lavoro.
  • L’estrazione dei metadati.
  • L’utilizzo di WHOIS.
  • L’interrogazione di un DNS.
  • La raccolta delle informazioni con Maltego.
  • La raccolta delle informazioni con Recon-ng.
  • La ricerca della vulnerabilità con Shodan.

Questo elenco non è completo e non potrà mai esserlo perchè dipende tutto dal nostro bersaglio. Risulta, tuttavia, un ottimo punto di partenza.

Google Hacking – Google Dorks

Google può essere utilizzato per interrogazioni particolari molto più specifiche e approfondite rispetto a quelle che normalmente eseguiamo.

Come si procede per effettuare queste interrogazioni? Utilizzando operatori di ricerca e stringhe particolari. Google fornisce come risultato quello che ritiene il più utile per il maggior numero di persone.

Ed è per questo che dobbiamo “istruire” il motore di ricerca affinchè ci offra i risultati più adatti ai nostri scopi.

Esaminiamo alcune di queste interrogazioni avanzate.

QUERY SU GOOGLE: site:hackerEtico.it

SPIEGAZIONE: viene restituito il numero di pagine indicizzate appartenenti ad un certo sito web. Lanciando questa query come risultato avremo il numero di pagine, indicizzate da Google, in relazione al sito web “hackerEtico.it”.

QUERY SU GOOGLE: allintitle:gandalf silmarillion

SPIEGAZIONE: questa interrogazione visualizza solo le pagine che contengono nel titolo di un documento le parole “Gandalf” e “Silmarillion”.

QUERY SU GOOGLE: inurl:casa

SPIEGAZIONE: questa interrogazione visualizza solo le pagine che contengono nell’URL la parola “casa”.

QUERY SU GOOGLE: cache:www.larepubblica.it

SPIEGAZIONE: In determinate circostanze, può essere utile recuperare la versione memorizzata nella cache, di una certa pagina web; per farlo si utilizza la parole chiave “cache”.

QUERY SU GOOGLE: filetype:doc casa

SPIEGAZIONE: la query in questione ci permette di ricercare determinati formati di documenti, come .doc o .pdf, in relazione ad una parola chiave da noi specificata. In questo caso la parola “casa.

Volendo spingersi più a fondo, possiamo sfruttare ancora una volta la keyword “site” ma questa volta per un’interrogazione molto più efficace.

Volendo spingersi più a fondo, possiamo sfruttare ancora una volta la keyword “site” ma questa volta per un’interrogazione molto più efficace.

QUERY SU GOOGLE: site:it casa

SPIEGAZIONE: qui ricerchiamo in tutti i siti appartenenti al dominio .it, la parola chiave “casa”. Quando siamo alla ricerca di un termine specifico all’interno di un certo dominio, questa è la query adatta.

Ti invito a sperimentare altre possibilità utilizzando l’operatore “site”.

Una tecnica molto utile in determinate circostanze è il “Directory Listings”, ovvero l’elenco delle cartelle e dei file all’interno di un certo sito web. Spesso una configurazione errata di questa funzionalità porta ad avere accesso a materiale sensibile, o che non dovrebbe essere divulgato.

Vediamo come implementare l’interrogazione:

QUERY SU GOOGLE:

  • intitle:index.of
  • intitle:index.of “parent directory
  • intitle:index.of name size

SPIEGAZIONE: utile provare tutte queste possibilità, così da evitare il rischio di informazioni poco accurate o mancanti.

Un altro modo per ricercare file o cartelle interessanti, è utilizzare congiuntamente l’operatore “inurl” e “filetype”.

Facciamo subito degli esempi pratici:

  • inurl:backup -> possibile elenco di cartelle di backup.
  • inurl:admin -> possibile elenco di cartelle amministrative.
  • inurl:admin intitle:login -> possibile elenco di pagine di login.
  • inurl:admin filetype:xls -> possibile file formato .xls dal nome “admin”.

Anche qui, sperimenta altre possibilità.

Ovviamente sarebbe complesso memorizzare tutte le possibili interrogazioni utili, da effettuare tramite Google.

Per questo motivo facciamo riferimento ad un database che raccoglie centinaia di interrogazioni: Google Hacking Database.

Sono presenti diverse categorie che ti permettono di selezionare con precisione, un determinato ambito della tua ricerca.

Fai attenzione: Google non vede di buon occhio l’utilizzo di queste interrogazioni e dopo un certo numero di tentativi potrebbe apparirti un captcha di controllo per verificare che tu non sia un bot o uno scanner automatico.

Google cache

La Google Cache è uno strumento utile che ti permette di visualizzare l’aspetto posseduto da una pagina web durante l’ultima visita effettuata da Google.

Per cui, se ci sono state delle modifiche successive, sarai in grado di visualizzarle e magari scoprire dettagli e dati sensibili, che sono stati erroneamente divulgati e poi oscurati.

Per visualizzarla si può procedere in due modi:

  • Tramite keyword Google.
  • Tramite siti web dedicati.

Se utilizziamo il primo metodo ci basta digitare il seguente comando: “cache:www.sitoweb.it”.

Se invece utilizziamo il secondo metodo, ti consiglio il sito CachedView.com.

La wayback machine

Hai mai avuto la curiosità di osservare come un certo sito web sia cambiato nel tempo?

Non è solo un’attivita intrinsecamente interessante, un sito web infatti, durante tutte le sue revisioni, potrebbe aver esposto documenti contenenti dettagli vitali per la nostra attività di raccolta delle informazioni.

Il servizio a cui faremo riferimento è la cosiddetta “Wayback Machine”.

Utilizzarlo è molto immediato: digitiamo l’URL e la data di nostro interesse e il sito ci porterà automaticamente indietro nel tempo.

Qui, ad esempio, facciamo riferimento al sito Google.com e selezioniamo la data di nostro interesse:

Informazioni dai canali social

Può sembrare banale, ma non lo è: spesso i profili social delle persone o delle aziende rivelano una quantità impressionante di informazioni, che sono state rese pubbliche in maniera inconsapevole.

Quindi, definito il vostro target, vi consiglio di effettuare un’attenta ricerca a partire dai dipendenti che fanno parte dell’azienda o società in questione, Linkedin in primis, fino ad analizzare i singoli post pubblicati su Facebook o Twitter.

Mi rendo conto che sia un’attività dispendiosa in termini di tempo, ma potrebbe fornire dei buoni risultati.

Le keyword negli annunci di lavoro

Quando un’azienda pubblica un annuncio di lavoro spesso vengono divulgate più informazioni di quelle generalmente suggerite dal buon senso.

Pensa ad una posizione lavorativa tecnica, magari orientata al settore informatico: spesso si fornisce un elenco delle tecnologie utilizzate dall’azienda in questione.

Si tratta di un suggerimento implicito relativamente a quali aspetti iniziare ad indagare.

Tre noti siti di annunci di lavoro sono:

  • Monster. https://www.monster.it/.
  • Infojobs. https://www.infojobs.it/.
  • Jobrapido. http://it.jobrapido.com/.

Di seguito un esempio estratto proprio da uno di questi:

Qui possiamo osservare che, oltre al nome esatto del software utilizzato, abbiamo anche le loro versioni.

La domanda è quindi spontanea: si tratta del software utilizzato in ambiente di produzione da questa azienda? La risposta, con buona probabilità, è si.

L’estrazione dei metadati

E’ inutile che ti dica quanti documenti si possono trovare facendo una semplice ricerca su internet.

La maggior parte delle persone si concentra sul contenuto del dato e ignora completamente tutto il resto, nello specifico i cosiddetti metadati.

Un metadato non è altro che un’informazione aggiuntiva inserita all’interno del documento e che potrebbe essere di varia utilità.

Pensa ad una fotografia digitale memorizzata all’interno di un file: quest’ultima contiene, come metadati, la data di creazione, l’autore, il tipo di macchina fotografica utilizzata e molto altro.

Quasi ogni tipologia di file contiene dei metadati, in quantità differenti, ma sempre presenti.

Uno degli strumenti software più utilizzati in questo contesto è ExifTool.

Questo strumento si occupa di estrarre e visualizzare i metadati a partire da un certo file inserito da noi.

L’utilizzo è molto semplice: basta inserire il nome del file, da riga di comando, e il software restituirà l’elenco dei metadati.

Facciamo un esempio con un file Excel:

Come puoi osservare le informazioni ricavate sono molteplici.

Puoi effettuare dei test anche con altri formati e confrontare i risultati ottenuti.

L’utilizzo di WHOIS

Nell’ambito della raccolta delle informazioni è significativo riuscire ad individuare e stabilire a quale provider internet (il fornitore del servizio di connettività) appartenga un determinato indirizzo IP o stringa URL, oltre che l’eventuale intestatario del dominio.

Whois è un protocollo di rete che assolve proprio a questo compito.

Whois si può consultare da riga di comando ma anche da applicazioni web che permettono di arricchire la ricerca.

Vediamo adesso entrambe le possibilità.

Interrogazione da riga di comando: basta digitare il comando “whois” seguito dal sito web o dall’indirizzo IP di nostro interesse.

Interrogazione tramite applicazione web. Utilizziamo per questo esempio il sito “whois.net”. Sarà sufficiente inserire semplicemente nella barra di ricerca il nome del sito di nostro interesse e premere “invio”.

Tengo a precisare che queste informazioni sono liberamente accessibili e si possono consultare senza alcun tipo di problema.

Utilizzo del DNS

Ora possiamo utilizzarlo allo scopo di ottenere altre informazioni sul nostro bersaglio.

L’operazione più semplice che si possa effettuare nei confronti di un DNS è la sua interrogazione.

Il comando è “nslookup” : la sua esecuzione permette di chiedere al DNS di mostrarci l’associazione tra hostname e indirizzo IP.

Un altro comando, dedicato ai sistemi Linux, è DIG.

Quest’ultimo ci permette di ottenere diverse informazioni, e l’interrogazione di base è molto semplice.

dig www.sitoweb.it

Adesso, senza perderci in dettagli teorici, cerchiamo di capire cos’è e come funziona il trasferimento di zona di un DNS.

Per effettuare una simulazione e rendersi conto di come funziona, si può provare a installare un DNS server su una macchina Windows Server.

Sul sito Microsoft potete trovare tutti i dettagli. I passi da eseguire su un sistema Windows Server 2012 sono i seguenti:

Una volta configurato, provate ad inserire dei record casuali come in figura:

L’operazione di “trasferimento di zona” consiste nell’elencare ogni record presente sul DNS server a cui viene fatta la richiesta.

In altre parole, con un comando specifico, noi possiamo chiedere al DNS di fornirci tutti i suoi record.

Inutile dire che, così facendo, otterremo una quantità notevole di dati utili per la nostra attività: ognuno di questi record e il relativo indirizzo IP ottenuto ci permetterà di avere una sorta di mappa della rete bersaglio, che utilizzeremo nei passi successivi.

Lo strumento di riferimento è DIG e il comando da lanciare per tentare il trasferimento di zona è:

  • dig @indrizzo_IP_DNS dominio AXFR
  • esempio: dig @192.168.2.10 azienda.local AXFR

Se il comando eseguito avrà successo, vedrete questo risultato:

Tuttavia può succedere che il trasferimento di zona non sia abilitato, come nel caso seguente:

Come puoi osservare nella figura, in questo caso il trasferimento di zona non è permesso e quindi lanciare il comando non ci fornirà una risposta positiva:

Risulta comunque sempre utile tentare questa strada.

Maltego e Recon-ng

Ci sono strumenti che permettono di automatizzare l’attività di raccolta delle informazioni. I tool che ti suggerisco sono:

  • Maltego.
  • Recon-ng.

Questi offrono molte possibilità e non sono semplicissimi da utilizzare, ma una volta fatta un po’ di pratica non potrai più farne a meno.

In pratica dobbiamo definire degli oggetti e, a partire da questi, possiamo effettuare le operazioni che ci servono (risoluzione del nome, individuazione del blocco di indirizzi IP, trasferimento di zona, ecc).

Shodan

Ques’ultimo non è altro che un potente motore di ricerca che ci permette di trovare vulnerabilità ed errori di configurazione sugli apparati che si espongono su Internet.

Questo strumento è raggiungibile dal sito web: https://www.shodan.io/.

Possiamo effettuare query di ogni tipo e per questo motivo ti invito a leggere la documentazione ufficiale.

Ad esempio, possiamo cercare tutti i dispositivi di tipo SCADA che hanno un web server esposto sulla porta 80 (HTTP).

Questa guida termina qui. Spero ti sia stata utile e nel caso ti invito a condividere questo articolo.

Alla prossima!

Aggiungi un commento

eCPPT – CEH – CCNA – CCSA – CCSE – CCSP – FNSE – PCNSE

Articoli recenti

Categorie