
Субъективная организация-центричная OSINT разведка, вдохновлённая recon-ng и Maltego
Уведомление
Этот проект завершён лишь частично, и многие функции, описанные в следующей статье моего блога, ещё предстоит реализовать: https://penafieljlm.com/2017/07/14/inquisitor/.
Inquisitor — это простой инструмент для сбора информации о компаниях и организациях с использованием источников открытых разведывательных данных (OSINT). Он во многом вдохновлён работой Maltego и recon-ng, и по сути перереализует некоторые возможности этих инструментов, добавляя дополнительный слой семантики, основанной на мнении, поверх типов активов, чтобы создать удобный рабочий процесс.
Ключевые возможности Inquisitor включают:
Вся концепция Inquisitor вращается вокруг идеи извлечения информации из открытых источников на основе того, что уже известно о целевой организации. В контексте Inquisitor это называется «трансформациями». Связанная информация может быть немедленно получена из известного актива на основе метаданных, которые также можно получить из открытых источников, таких как whois и интернет-реестры.
Подробнее эти концепции обсуждаются в статье блога: https://penafieljlm.com/2017/07/14/inquisitor/
Чтобы установить Inquisitor, просто клонируйте репозиторий, войдите в него и выполните скрипт установки.``` pip install Cython click git clone [email protected]:penafieljlm/inquisitor.git cd inquisitor python setup.py install
## Использование
Inquisitor имеет пять базовых команд, которые включают `scan`, `status`, `classify`, `dump` и `visualize`.```
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.
В режиме сканирования инструмент запускает все доступные трансформации для всех активов, имеющихся в вашей базе данных разведки. Убедитесь, что вы создали ключи API для различных источников OSINT, указанных ниже, и передали их скрипту, чтобы трансформации, использующие эти источники, не были пропущены. Кроме того, убедитесь, что вы первоначально заполнили свою базу данных разведки некоторыми известными принадлежащими вам целевыми активами с помощью команды classify, потому что если база данных не содержит принадлежащих активов, то нечего будет трансформировать.```
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.
### Статус
В режиме статуса инструмент просто выводит краткую сводку состояния вашей базы данных сканирования.```
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.
В режиме классификации вы сможете вручную добавлять активы и переклассифицировать уже существующие активы в базе данных разведданных. Вам следует использовать эту команду, чтобы заполнить свою базу данных разведданных известными собственными целевыми активами.``` 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.