Quando si avvia un’indagine sulla sicurezza informatica, la prima fase da affrontare è la ricognizione dei dati e la raccolta di informazioni sull’obiettivo. Una volta terminata la raccolta di informazioni sul vostro obiettivo, disporrete di tutte le informazioni necessarie, come indirizzi IP, nomi di dominio, server, tecnologie e molto altro, per poter finalmente condurre i vostri test di sicurezza.
Quali sono i migliori strumenti OSINT per ottenere queste preziose informazioni? State cercando di rintracciare persone e dati aziendali, domini, IP, server e software in esecuzione?
In questo articolo analizzeremo in dettaglio cinque tools molto usati in ambito osint e non solo.
Sherlock è un tool gratuito scritto in Python che può essere scaricato da Github e utilizzato gratuitamente.
Sherlock è utilizzato per trovare i nomi utente su oltre 400 siti social media. Molti utenti si registrano sulle piattaforme di social media utilizzando il proprio nome. Supponiamo di dover trovare qualcuno su un sito di social media come Facebook, Instagram, Youtube ecc.
Per farlo, dobbiamo andare su diversi siti web e cercare ogni volta una persona, ma con Sherlock possiamo trovare facilmente la presenza online di qualcuno sui social media, infatti, esegue una ricerca del nome utente su oltre 400 siti web di social media e fornisce il relativo link di quella piattaforma di social media.
SYNTAX
$ python3 sherlock --help usage: sherlock [-h] [--version] [--verbose] [--folderoutput FOLDEROUTPUT] [--output OUTPUT] [--tor] [--unique-tor] [--csv] [--site SITE_NAME] [--proxy PROXY_URL] [--json JSON_FILE] [--timeout TIMEOUT] [--print-all] [--print-found][--no-color] [--browse] [--local] [--nsfw] USERNAMES [USERNAMES ...] Sherlock: Find Usernames Across Social Networks (Version 0.14.2)
USAGE
$ python3 sherlock.py <target_username> -r --print-found
Il comando cercherà gli account in Internet con username specificato e stamperà solo i risultati trovati. In questo modo si ridurrà significativamente l’output, poiché la maggior parte delle interrogazioni avrà di solito esito negativo.
L’argomento, -r, organizza l’elenco degli account trovati in base ai siti web più popolari.
ADVANCED USAGE
Una delle opzioni di comando disponibili è salvare le ricerche effettuate in formato CSV.
Il formato CSV rappresenta uno dei modi più semplici per rappresentare dati in forma tabellare all’interno di un semplice file di testo.
Questo formato di file è uno dei primi ad essersi diffuso per l’interscambio di dati, e nonostante la presenza di altri formati altrettanto conosciuti ed utilizzati come XML, JSON o YAML, è ancora oggi diffuso in molte applicazioni. Un’altra estensione fruibile è XLSX che genera fogli di calcolo compatibili con Excel.
Un file in formato CSV è più dettagliato rispetto ad un file txt.
$ python3 sherlock.py target_username --timeout 1 --csv
--csv Crea un file CSV (Comma-Separated Values).
--cartellaoutput FOLDEROUTPUT, -fo FOLDEROUTPUT
Se si utilizzano più nomi utente, l'output dei risultati
verrà salvato in questa cartella.
--timeout TIMEOUT
Tempo (in secondi) di attesa per la risposta alle richieste.
Il timeout predefinito è infinito. Con un timeout più lungo
è più probabile ottenere risultati da siti lenti.
Per maggiori informazioni
Trape è uno tool di tracking OSINT che consente di tracciare ed eseguire attacchi intelligenti di social engineering in tempo reale.
Lo scopo principale della creazione di questo tool è stato quello di mostrare alle persone come un aggressore possa ottenere informazioni riservate, come la posizione delle vittime oltre ai loro indirizzi IP, senza conoscere la vittima.
Ci sono diversi modi per ottenere informazioni sul vostro obiettivo/cliente, uno dei quali è l’esecuzione di una scansione remota e la verifica di porte aperte o di eventuali vulnerabilità esposte.
Un modo alternativo che sta diventando molto comune è quello di effettuare attacchi mirati di ingegneria sociale verificando i servizi online per ottenere OSINT e inviando attacchi di phishing. Se siete interessati alla seconda opzione, Trape fa al caso vostro.
INSTALLAZIONE
Trape non è presente in Kali Linux pertanto va installato:
Apriamo la finestra del terminale e digitiamo il seguente comando e premiamo invio:
git clone https://github.com/jofpin/trape
Una volta completato il download, dobbiamo andare nella directory di trape usando il comando cd e poi controllare i file usando il comando ls. Qui uniremo questi comandi in un unico comando usando && in questo modo:
cd trape && ls
Per evitare roblemi nell’installazione del tool, legati a possibili conflitti tra le versioni di Python; è necessario eseguire un ambiente Python 2.7:
pip3 install virtualenv
virtualenv -p /usr/bin/python3 trape_env
source trape_env/bin/activate
Installare, infine, tutte le librerie che si trovano nel file requirements.txt
pip3 install -r requirements.txt
SYNTAX
$ python3 trape.py --help
usage: python3 trape.py -u <> -p <> [-h] [-v] [-u URL] [-p PORT]
[-ak ACCESSKEY] [-l LOCAL]
[--update] [-n] [-ic INJC]
optional arguments:
-h, --help show this help message and exit
-v, --version show program's version number and exit
-u URL, --url URL Put the web page url to clone
-p PORT, --port PORT Insert your port
-ak ACCESSKEY, --accesskey ACCESSKEY
Insert your custom key access
-l LOCAL, --local LOCAL
Insert your home file
-n, --ngrok Insert your ngrok Authtoken
-ic INJC, --injectcode INJC
Insert your custom REST API path
-ud UPDATE, --update UPDATE
Update trape to the latest version
Ora possiamo eseguire lo script python e controllare le opzioni usando il semplice comando seguente:
$ python3 trape.py --url http://example.com --port 8080
Dopo aver avviato il comando scritto sopra verrà nostrata a schermo una schermata simile a all’immagine sottostante:
Ora bisogna configurare un token Ngrok, registrandosi su https://ngrok.com
Il passo successivo è inserire il proprio token Ngrok, questi dati sono necessari per la generazione dei tunnel della rete pubblica.
È necessario registrarsi anche su Google Console e ottenere un’API per le mappe e un’altra per l’abbreviazione.
Disponendo di questi dati si completa la configurazione per poter usare Trap.
Login in google console e ottieni una Google Map API key https://console.cloud.google.com/apis/credentials
Inserire il google shortener API key, visitiamo il link e si ottiene un google shortener API key https://developers.google.com/url-shortener/v1/getting_started
Inserire la IP geolocation API key, visitare il seguente link e si ottiene un IP geolocation API key https://app.ipgeolocation.io/
Terminata la procedura di configurazione, avviamo il seguente comando che aprirà una semplice maschera in cui inserire il lure link ovvero il sito esca e la porta di ascolto.
$ python3 trape.py
dopo aver inserito i dati richiesti, verrà mostrato a schermo la sintesi delle Local Information.
e resterà in attesa che il nostro target visiti il sito esca ovvero il link contenuto in Lure for the Users.
Per eviatre che le vittime si insospettiscano, è possibile anche accorciare il link usando bit.ly, ad.fly, ed altri siti simili.
Ora, copiamo e incolliamo il link Control Panel nel browser ed inseriamo Your Access Key.
dopo un pò di social engineering inviamo il link Lure for the Users al nostro target e aspettiamo che visiti il link esca.
Potremo visualizzare tutti i profili del nostro target, l’IP, il tipo di device usato e molto altro ancora comodamente dal Control Panel di Trape.
Nel pulsante Process Hook, accanto alle Information, è possibile scaricare file, inviare messaggi e fare altre cose!
Se si vuole acquisire perfettamente il dispositivo del target, si può creare un sito web e fare in modo che il target venga reindirizzato al proprio sito web, oppure si può lasciare che scarichi un payload creato da Metasploit ed ottenere un’acquisizione completa.
BEST FEATURES
Le caratteristiche di questo tool sono molteplici e di seguito ne troverete solo alcune:
PROCESS HOOKS: Gestisce gli attacchi di ingegneria sociale o i processi nel browser dell’obiettivo.
— SEVERAL: è possibile sferrare un attacco di phishing di qualsiasi dominio o servizio in tempo reale, nonché inviare file dannosi per compromettere il dispositivo di un obiettivo.
— INJECT JS: si mantiene il codice JavaScript libero in tempo reale, in modo da poter gestire l’esecuzione di un keylogger o di funzioni personalizzate in JS che si rifletteranno nel browser dell’obiettivo.
— SPEECH: viene mantenuto un processo di creazione di audio che viene riprodotto nel browser dell’obiettivo, per mezzo del quale è possibile eseguire messaggi personalizzati in diverse voci con lingue in spagnolo e inglese.
NETWORK: È possibile ottenere informazioni sulla rete dell’utente.
— SPEED: visualizzazione della velocità di rete dell’obiettivo. (Ping, download, upload, tipo di connessione).
— HOSTS OR DEVICES: Qui è possibile ottenere una scansione di tutti i dispositivi collegati automaticamente alla rete di destinazione.
PROFILE: Breve riepilogo del comportamento dell’obiettivo e importanti informazioni aggiuntive sul dispositivo.
— GPU — ENERGY
SPECIAL FEATURES
Trape consente il riconoscimento della sessione offrendo la possibilità di sapere da remoto a quale servizio è connesso l’obiettivo.
In aggiunta è possibile eliminare i registri e visualizzare gli avvisi per ogni processo o azione eseguita contro ogni obiettivo.
Trape è un tool molto versatile che può essere utilizzato in diversi ambienti di operatività come penetration testing, phishing testing attack, e social engineering e vedere come l’obiettivo interagisce con i collegamenti.
Per maggiori informazioni
Uno strumento avanzato di scraping di Twitter e OSINT scritto in Python che non utilizza le API di Twitter,
che permette di raschiare i follower, i following, i tweet e altro ancora di un utente, eludendo la maggior parte delle limitazioni dell’API.
Indaga sulle e-mail e sui documenti di Google.
https://github.com/mxrch/GHunt
API, CLI e Web App per analizzare e trovare il profilo di una persona su oltre 400 siti web di social media.
https://github.com/qeeqbox/social-analyzer