
Meinungsstarke organisationszentrierte OSINT-Fußabdruckermittlung, inspiriert von recon-ng und Maltego
Hinweis
Dieses Projekt ist nur teilweise abgeschlossen und ich habe noch viele der Funktionen, die in dem folgenden Blogbeitrag beschrieben sind, nicht implementiert: https://penafieljlm.com/2017/07/14/inquisitor/.
Inquisitor ist ein einfaches Werkzeug, um Informationen über Unternehmen und Organisationen mithilfe von Open-Source-Intelligence-Quellen (OSINT) zu sammeln. Es ist stark inspiriert von der Funktionsweise von Maltego und recon-ng, und das Tool implementiert einige der Funktionen dieser Tools neu, fügt aber eine zusätzliche Schicht von meinungsbasierter Semantik auf Asset-Typen hinzu, um einen einfach zu bedienenden Workflow zu schaffen.
Die wichtigsten Funktionen von Inquisitor sind:
Das gesamte Konzept von Inquisitor dreht sich um die Idee, Informationen aus offenen Quellen zu extrahieren, basierend auf dem, was bereits über eine Zielorganisation bekannt ist. Im Kontext von Inquisitor werden diese als „Transforms“ bezeichnet. Verwandte Informationen können auch sofort von einem bekannten Asset abgerufen werden, basierend auf Metadaten, die ebenfalls aus offenen Quellen wie Whois und Internetregistern abrufbar sind.
Die Konzepte werden in diesem Blogartikel ausführlicher erläutert: https://penafieljlm.com/2017/07/14/inquisitor/
Um Inquisitor zu installieren, klone einfach das Repository, wechsle in das Verzeichnis und führe das Installationsskript aus.``` pip install Cython click git clone [email protected]:penafieljlm/inquisitor.git cd inquisitor python setup.py install
## Verwendung
Inquisitor hat fünf grundlegende Befehle, die `scan`, `status`, `classify`, `dump` und `visualize` umfassen.```
usage: inq [-h] {scan,status,classify,dump,visualize} ...
optional arguments:
-h, --help show this help message and exit
command:
{scan,status,classify,dump,visualize}
The action to perform.
scan Search OSINT sources for intelligence based on known
assets belonging to the target.
status Prints out the current status of the specified
intelligence database.
classify Classifies an existing asset as either belonging or
not belonging to the target. Adds a new asset with the
specified classification if none is present.
dump Dumps the contents of the database into a JSON file
visualize Create a D3.js visualization based on the contents of
the specified intelligence database.
Im Scan-Modus führt das Tool alle verfügbaren Transformationen für alle Assets aus, die Sie in Ihrer Intelligence Database haben. Stellen Sie sicher, dass Sie API-Schlüssel für die unten angegebenen verschiedenen OSINT-Quellen erstellen und diese dem Skript zur Verfügung stellen, damit die Transformationen, die diese Quellen verwenden, nicht übersprungen werden. Stellen Sie außerdem sicher, dass Sie Ihre Intelligence Database mit einigen bekannten eigenen Ziel-Assets seeden, indem Sie zuerst den Befehl classify verwenden, denn wenn die Datenbank keine eigenen Assets enthält, gibt es nichts zu transformieren.```
usage: inq scan [-h] [--google-dev-key GOOGLE_DEV_KEY]
[--google-cse-id GOOGLE_CSE_ID]
[--google-limit GOOGLE_LIMIT]
[--shodan-api-key SHODAN_API_KEY]
[--shodan-limit SHODAN_LIMIT]
DATABASE
positional arguments: DATABASE The path to the intelligence database to use. If specified file does not exist, a new one will be created.
optional arguments: -h, --help show this help message and exit --google-dev-key GOOGLE_DEV_KEY Specifies the developer key to use to query Google Custom Search. Visit the Google APIs Console (http://code.google.com/apis/console) to get an API key. If notspecified, the script will simply skip asset transforms that involve Google Search. --google-cse-id GOOGLE_CSE_ID Specifies the custom search engine to query. Visit the Google Custom Search Console (https://cse.google.com/cse/all) to create your own Google Custom Search Engine. If not specified, the script will simply skip asset transforms that involve Google Search. --google-limit GOOGLE_LIMIT The number of pages to limit Google Search to. This is to avoid exhausting your daily quota. --shodan-api-key SHODAN_API_KEY Specifies the API key to use to query Shodan. Log into your Shodan account (https://www.shodan.io/) and look at the top right corner of the page in order to view your API key. If not specified, the script will simply skip asset transforms that involve Shodan. --shodan-limit SHODAN_LIMIT The number of pages to limit Shodan Search to. This is to avoid exhausting your daily quota.
### Status
Im Statusmodus gibt das Tool einfach eine kurze Zusammenfassung des Status Ihrer Scandatenbank aus.```
usage: inq status [-h] [-s] DATABASE
positional arguments:
DATABASE The path to the intelligence database to use. If specified
file does not exist, a new one will be created.
optional arguments:
-h, --help show this help message and exit
-s, --strong Indicates if the status will be based on the strong ownership
classification.
Im Klassifizierungsmodus können Sie manuell Assets hinzufügen und bereits vorhandene Assets in der Intelligence-Datenbank neu klassifizieren. Sie sollten diesen Befehl verwenden, um Ihre Intelligence-Datenbank mit bekannten, im Besitz befindlichen Ziel-Assets zu befüllen.``` usage: inq classify [-h] [-ar REGISTRANT [REGISTRANT ...]] [-ur REGISTRANT [REGISTRANT ...]] [-rr REGISTRANT [REGISTRANT ...]] [-ab BLOCK [BLOCK ...]] [-ub BLOCK [BLOCK ...]] [-rb BLOCK [BLOCK ...]] [-ah HOST [HOST ...]] [-uh HOST [HOST ...]] [-rh HOST [HOST ...]] [-ae EMAIL [EMAIL ...]] [-ue EMAIL [EMAIL ...]] [-re EMAIL [EMAIL ...]] [-al LINKEDIN [LINKEDIN ...]] [-ul LINKEDIN [LINKEDIN ...]] [-rl LINKEDIN [LINKEDIN ...]] DATABASE
positional arguments: DATABASE The path to the intelligence database to use. If specified file does not exist, a new one will be created.