- Comprendere il funzionamento di base dell'indicizzazione dei contenuti Web.
- Utilizzare gli operatori avanzati di Google per effettuare ricerche mirate.
- Comprendere il ruolo dei Google Dorks nelle attività OSINT e di information gathering.
- Riconoscere situazioni di esposizione involontaria di informazioni sul Web.
- Distinguere tra ricognizione passiva e interazione diretta con un sistema.
- Applicare tecniche di ricerca avanzata esclusivamente in scenari didattici e autorizzati.
- Documentare i risultati di una semplice attività di ricognizione passiva.
Che cosa sono i Google Dorks
Tag: Google Dorking | Tag: ricerca avanzata
Con l'espressione Google Dorking si indica l'utilizzo degli operatori avanzati del motore di ricerca Google per costruire interrogazioni più precise rispetto a una normale ricerca basata esclusivamente su parole chiave.
Un Google Dork è quindi una query di ricerca costruita utilizzando uno o più operatori avanzati.
Per esempio, è possibile chiedere a Google di mostrare solamente risultati appartenenti a uno specifico dominio:
site:example.com
Oppure è possibile restringere ulteriormente la ricerca a una determinata tipologia di documento:
site:example.com filetype:pdf
Google Dorking non è un programma da installare. È una tecnica di ricerca che utilizza funzionalità offerte direttamente dal motore di ricerca.
Crawling e indicizzazione
Tag: crawling | Tag: indicizzazione
Per comprendere il funzionamento dei Google Dorks è necessario capire, almeno a livello concettuale, come un motore di ricerca raccoglie e organizza le informazioni disponibili sul Web.
| Fase | Descrizione |
|---|---|
| Crawling | I crawler esplorano le risorse Web raggiungibili e seguono i collegamenti tra le pagine. |
| Indicizzazione | Le informazioni relative alle risorse individuate possono essere elaborate e inserite nell'indice del motore di ricerca. |
| Ricerca | La query dell'utente interroga l'indice per individuare risultati compatibili con i criteri specificati. |
Una risorsa raggiungibile sul Web e una risorsa indicizzata da Google non sono necessariamente la stessa cosa. Inoltre, la presenza di una risorsa nei risultati di ricerca non significa che il suo contenuto possa essere utilizzato liberamente per qualsiasi finalità.
Google Dorking e OSINT
Tag: OSINT | Tag: information gathering
L'acronimo OSINT significa Open Source Intelligence e identifica un insieme di tecniche utilizzate per raccogliere e analizzare informazioni provenienti da fonti pubblicamente accessibili.
Le ricerche avanzate sui motori di ricerca possono essere utilizzate durante una fase di information gathering, cioè di raccolta preliminare delle informazioni.
Quando la raccolta viene effettuata consultando informazioni già disponibili attraverso servizi esterni, senza effettuare direttamente scansioni del sistema analizzato, si parla generalmente di ricognizione passiva.
Un amministratore vuole controllare quali documenti PDF del proprio sito risultano facilmente individuabili attraverso Google. Una query avanzata permette di effettuare rapidamente questo controllo.
L'operatore site:
Tag: site | Tag: dominio
L'operatore site: limita la ricerca a uno specifico dominio.
site:example.com
È possibile aggiungere una parola chiave per restringere ulteriormente la ricerca:
site:example.com domain
Google limita i risultati al dominio specificato e applica gli eventuali altri criteri presenti nella query.
L'operatore filetype:
Tag: filetype | Tag: documenti
L'operatore filetype: permette di restringere la ricerca a una specifica tipologia di documento.
site:example.com filetype:pdf
Altri esempi:
site:example.com filetype:txt
site:example.com filetype:html
Sul proprio dominio, una ricerca per tipologia di file può aiutare l'amministratore a verificare quali documenti risultano pubblicamente individuabili attraverso il motore di ricerca.
Ricerca di una frase esatta
Tag: virgolette | Tag: ricerca esatta
Le virgolette permettono di specificare una sequenza di parole da ricercare come frase.
"Example Domain"
La ricerca può essere combinata con altri operatori:
site:example.com "Example Domain"
L'operatore intitle:
Tag: intitle | Tag: titolo
L'operatore intitle: permette di cercare un termine nel titolo delle pagine indicizzate.
site:example.com intitle:"Example Domain"
Il titolo di una pagina è una delle informazioni che possono essere utilizzate dal motore di ricerca per descrivere e classificare una risorsa.
L'operatore inurl:
Tag: inurl | Tag: URL
L'operatore inurl: permette di specificare un termine da ricercare all'interno dell'URL.
site:example.com inurl:example
La struttura degli URL può fornire informazioni sull'organizzazione logica delle risorse di un sito.
Un URL difficile da indovinare non deve essere considerato un sistema di protezione. Le risorse riservate devono utilizzare adeguati controlli di autenticazione e autorizzazione.
Combinare gli operatori
Tag: query | Tag: filtri
Gli operatori possono essere combinati per costruire query progressivamente più specifiche.
| Query | Significato |
|---|---|
site:example.com |
Limita la ricerca al dominio. |
site:example.com filetype:pdf |
Cerca documenti PDF indicizzati nel dominio. |
site:example.com "Example Domain" |
Cerca una frase nel dominio. |
site:example.com intitle:"Example Domain" |
Cerca la frase nel titolo. |
site:example.com inurl:example |
Cerca il termine nell'URL. |
Costruire le query progressivamente. Si parte da una ricerca semplice, si osservano i risultati e si aggiunge un solo operatore alla volta. Questo metodo permette di comprendere l'effetto di ogni filtro.
Sicurezza, privacy e autorizzazione
Tag: sicurezza | Tag: autorizzazione
Una ricerca avanzata può rendere più semplice individuare informazioni pubblicamente raggiungibili ma non necessariamente destinate a una diffusione ampia.
La presenza di un risultato nel motore di ricerca non costituisce un'autorizzazione ad accedere, raccogliere, utilizzare o diffondere informazioni riservate.
- Utilizzare esclusivamente i domini indicati dal docente.
- Non cercare credenziali o dati personali appartenenti a soggetti reali.
- Non tentare autenticazioni su servizi individuati attraverso una ricerca.
- Non eseguire scansioni o altre attività attive sui sistemi osservati.
- Non scaricare o diffondere eventuali informazioni sensibili incontrate accidentalmente.
- Utilizzare ambienti didattici o sistemi per i quali esiste un'autorizzazione esplicita.
Laboratorio: preparazione
Tag: laboratorio | Tag: Google Chrome
Aprire Google Chrome e raggiungere Google. Durante ogni attività annotare:
- la query utilizzata;
- l'operatore utilizzato;
- lo scopo della query;
- il risultato osservato;
- la differenza rispetto alla ricerca precedente.
Negli esempi viene utilizzato example.com, dominio destinato alla documentazione e agli esempi. Il docente può sostituirlo con un proprio dominio didattico appositamente predisposto.
Laboratorio 1: ricerca e dominio
Tag: site | Tag: ricognizione
Passo 1. Eseguire una ricerca tradizionale:
example domain
Passo 2. Limitare la ricerca al dominio:
site:example.com
Passo 3. Aggiungere una parola chiave:
site:example.com domain
Confrontare le tre ricerche e descrivere quale modifica è stata
introdotta dall'operatore site:.
Laboratorio 2: ricerca per tipo di file
Tag: filetype | Tag: documenti
Aggiungere alla query l'operatore filetype:.
site:example.com filetype:pdf
Modificare successivamente il formato:
site:example.com filetype:txt
Una query che non restituisce risultati non è necessariamente errata. È possibile che Google non disponga nel proprio indice di risorse compatibili con tutti i criteri specificati.
Laboratorio 3: query progressive
Tag: query composta | Tag: filtri
Eseguire le seguenti query una alla volta e osservare quale criterio viene aggiunto.
Query 1 - dominio:
site:example.com
Query 2 - frase:
site:example.com "Example Domain"
Query 3 - titolo:
site:example.com intitle:"Example Domain"
Query 4 - URL:
site:example.com inurl:example
Per ciascuna query indicare quale elemento viene utilizzato come filtro: dominio, testo, titolo oppure URL.
Laboratorio 4: costruisci la query
Tag: esercitazione | Tag: problem solving
Tradurre ogni richiesta nella corrispondente query. Utilizzare esclusivamente example.com.
| Richiesta | Query |
|---|---|
| Mostrare solamente risultati appartenenti a example.com. | Da completare |
| Cercare documenti PDF nel dominio. | Da completare |
| Cercare la frase esatta Example Domain nel dominio. | Da completare |
| Cercare pagine con Example Domain nel titolo. | Da completare |
| Cercare pagine con example nell'URL. | Da completare |
site:example.com
site:example.com filetype:pdf
site:example.com "Example Domain"
site:example.com intitle:"Example Domain"
site:example.com inurl:example
Troubleshooting
Tag: errori | Tag: query
| Problema | Possibile causa | Soluzione |
|---|---|---|
| Troppi risultati | Query troppo generica | Aggiungere un filtro coerente. |
| Nessun risultato | Query troppo restrittiva | Rimuovere un operatore e riprovare. |
| Risultati non limitati al dominio | Operatore site: mancante o scritto in modo errato | Controllare la sintassi di site:. |
| La frase viene interpretata come parole separate | Mancano le virgolette | Inserire la frase tra virgolette. |
| Non vengono trovati file del formato richiesto | Il formato potrebbe non essere presente nell'indice | Ripetere la ricerca senza filetype:. |
Quando una query complessa non funziona come previsto, tornare alla versione più semplice e aggiungere nuovamente gli operatori uno alla volta.
Esposizione delle informazioni
Tag: information disclosure | Tag: rischio
Dal punto di vista difensivo, il Google Dorking permette di comprendere un principio importante della sicurezza Web: una risorsa pubblicamente raggiungibile non deve contenere informazioni che richiedono un controllo di accesso.
Non inserire un documento nel menu principale di un sito oppure assegnargli un nome difficile da indovinare non costituisce una misura di sicurezza.
| Situazione | Problema | Contromisura |
|---|---|---|
| Documento pubblicato accidentalmente | Possibile esposizione di informazioni | Controllare contenuto e permessi prima della pubblicazione. |
| Risorsa protetta solamente da un URL poco prevedibile | Manca un vero controllo di accesso | Implementare autenticazione e autorizzazione. |
| Documento rimosso dal menu ma ancora raggiungibile | La risorsa continua a essere pubblica | Rimuovere o proteggere realmente la risorsa. |
| Pubblicazione di informazioni non necessarie | Aumento della superficie informativa esposta | Applicare il principio di minimizzazione dei dati. |
Indicizzazione e controllo degli accessi
Tag: access control | Tag: difesa
Impedire l'indicizzazione di una risorsa e impedire l'accesso alla risorsa sono due problemi differenti.
Se un contenuto è riservato, il server deve verificare che l'utente abbia il diritto di accedervi attraverso opportuni meccanismi di autenticazione e autorizzazione.
Le impostazioni relative all'indicizzazione non sostituiscono i controlli di accesso. Un documento riservato deve essere protetto indipendentemente dalla sua presenza nei risultati di un motore di ricerca.
Report dell'attività
Tag: report | Tag: analisi
Al termine dell'attività compilare una breve scheda tecnica.
| Elemento | Informazione richiesta |
|---|---|
| Target autorizzato | Dominio utilizzato durante l'esercitazione. |
| Query | Query utilizzata. |
| Operatori | Operatori avanzati presenti nella query. |
| Obiettivo | Informazione che si voleva individuare. |
| Risultato | Descrizione sintetica del risultato ottenuto. |
| Interpretazione | Motivo per cui la query ha prodotto quel risultato. |
| Implicazione difensiva | Controllo che un amministratore dovrebbe effettuare sul proprio sito. |
Non è sufficiente conoscere la sintassi degli operatori. È necessario saper spiegare quale effetto produce ogni operatore sulla ricerca.
Verifica finale
Tag: verifica | Tag: consolidamento
- Che cosa si intende per Google Dorking?
- Qual è la differenza tra crawling e indicizzazione?
- Che cosa significa OSINT?
- Quale operatore limita la ricerca a un dominio?
- Quale operatore permette di selezionare una tipologia di file?
- Qual è la funzione delle virgolette?
- Che cosa cerca l'operatore
intitle:? - Che cosa cerca l'operatore
inurl:? - Perché il Google Dorking può essere utilizzato nella ricognizione passiva?
- Perché un URL difficile da indovinare non rappresenta un controllo di accesso?
- È l'utilizzo di operatori avanzati per costruire query di ricerca precise.
- Il crawling individua risorse Web; l'indicizzazione organizza informazioni sulle risorse nell'indice del motore.
- Open Source Intelligence.
site:.filetype:.- Permettono di specificare una frase da ricercare.
- Un termine nel titolo della pagina.
- Un termine nell'URL.
- Perché permette di consultare informazioni già raccolte e indicizzate senza effettuare direttamente una scansione tecnica del target.
- Perché, in assenza di autenticazione e autorizzazione, la scoperta dell'URL può rendere raggiungibile la risorsa.
Link utili
Tag: documentazione | Tag: approfondimento
- Google Search Help - documentazione relativa all'utilizzo del motore di ricerca.
- Google Search Central - documentazione tecnica relativa a crawling e indicizzazione.
- Example Domain - dominio utilizzabile per gli esempi didattici.
- Il Google Dorking utilizza operatori avanzati per costruire ricerche mirate.
- site: limita la ricerca a un dominio.
- filetype: limita la ricerca a una tipologia di file.
- Le virgolette permettono di specificare una frase.
- intitle: ricerca un termine nel titolo.
- inurl: ricerca un termine nell'URL.
- Gli operatori possono essere combinati per ottenere query più specifiche.
- Il Google Dorking può essere utilizzato nell'OSINT e nella ricognizione passiva.
- L'indicizzazione può rendere più facilmente individuabili informazioni pubblicamente esposte.
- La mancata indicizzazione non sostituisce autenticazione e autorizzazione.
- Le attività di cybersecurity devono essere effettuate esclusivamente su sistemi autorizzati.
- Come funzionano crawling, indicizzazione e ricerca.
- Che cosa sono i Google Dorks.
- Qual è la relazione tra Google Dorking, OSINT e information gathering.
- Come utilizzare
site:efiletype:. - Come utilizzare
intitle:einurl:. - Come utilizzare le virgolette per specificare una frase.
- Come combinare più operatori in una query.
- Come interpretare una ricerca avanzata dal punto di vista della cybersecurity.
- Perché indicizzazione e controllo degli accessi sono concetti differenti.
- Come documentare una semplice attività di ricognizione passiva.
Parole chiave
I termini principali introdotti in questa guida sono: