Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/nict-csl/exist
Управление индикаторами компрометации (IOC)OSINT (Разведка открытых источников)Фиды и агрегаторы угрозАнализ уязвимостейСбор информацииРазведка угрозОбучение и ОбразованиеРеагирование на ИнцидентыАнализ ЖурналовArchived
GitHubnict-csl/exist

exist

152295 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

EXIST — это веб-приложение для агрегирования и анализа данных о киберугрозах.

Репозиторий

EXIST (Система агрегации внешней информации о киберугрозах)

⚠️ Этот репозиторий не поддерживается / архивирован. Проблемы безопасности не будут исправлены.

EXIST — веб-приложение для агрегации и анализа CTI (информации о киберугрозах).

EXIST написан с использованием следующего ПО:

  • Python 3
  • Django 1.11

Концепция

EXIST — это веб-приложение для агрегации CTI, которое помогает операторам безопасности расследовать инциденты на основе связанных индикаторов.

EXIST автоматически получает данные из нескольких CTI-сервисов и Twitter через их API и фиды. Вы можете выполнять перекрёстный поиск индикаторов через веб-интерфейс и API.

Если у вас есть серверы, регистрирующие сетевое поведение клиентов (например, логи DNS и HTTP-прокси и т. д.), вы сможете анализировать логи, сопоставляя их с данными в EXIST. Если вы реализуете некоторые программы с использованием API, вы сможете реализовать автоматизированный центр управления безопасностью на основе CTI.

overview

Варианты использования

Сценарий 1: Исследование домена, обнаруженного IDS

Просто введите домен в форму поиска.

lookup_domain

Сценарий 2: Доступ к вредоносному URL от имени пользователя и получение изображения браузера и контента для загрузки

Просто введите URL в форму поиска.

lookup_url

Сценарий 3: Мониторинг киберугроз

Просто добавьте ключевые слова в Threat Hunter или Twitter Hunter.

twitter_hunter

Возможности

Tracker

Tracker автоматически собирает потоки данных из нескольких CTI-сервисов.

  • Threat Tracker
  • Reputation Tracker
  • Twitter Tracker
  • Exploit Tracker
  • News Tracker
  • Vuln Tracker

Hunter

Hunter позволяет задавать запросы для сбора данных из нескольких CTI-сервисов и Twitter.

  • Twitter Hunter
  • Threat Hunter
  • News Hunter

Lookup

Lookup извлекает информацию, связанную с конкретными данными (например, IP-адрес, домен), из нескольких интернет-сервисов (например, whois).

  • IP-адрес
  • Домен
  • URL
  • Хеш файла

Инструменты

Инструмент для аннотирования твитов из Twitter Tracker.

  • Инструмент аннотирования

Web API

Предоставляет данные, хранящиеся в базе данных EXIST, через веб-API.

  • reputation
  • twitter
  • exploit
  • threatEvent
  • threatAttribute
  • news
  • vuln

Начало работы

Далее я предполагаю окружение CentOS 7 или Ubuntu 18.04 LTS. При развёртывании в другой среде действуйте на свой страх и риск.

Установка модулей Python

root@kitploit:~
$ sudo pip install -r requirements.txt

Установка MariaDB

  • CentOS 7
root@kitploit:~
$ curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
$ sudo yum install MariaDB-server MariaDB-client
  • Ubuntu 18.04 LTS
root@kitploit:~
$ sudo apt install mariadb-server mariadb-client

Запуск базы данных

root@kitploit:~
$ sudo systemctl start mariadb
$ sudo systemctl enable mariadb

Настройка базы данных

  • Создайте базу данных и пользователя.
  • Создайте .env по образцу .env.example. И отредактируйте в соответствии с настройками вашей БД.

Генерация секретного ключа для Django

Секретный ключ для Django должен быть записан в файл .env.

Сначала запустите генератор ключей:

root@kitploit:~
$ python keygen.py
(example)> 70mm6h)()h3r&*b9xq$e52=-7($p=5983gfoyz%$d-j-gd7u5@

и запишите секретный ключ в файл .env:

root@kitploit:~
...
# EXIST Application Settings
EXIST_SECRET_KEY="70mm6h)()h3r&*b9xq$e52=-7($p=5983gfoyz%$d-j-gd7u5@"
...

Миграция базы данных

root@kitploit:~
$ python manage.py makemigrations exploit reputation threat threat_hunter twitter twitter_hunter news news_hunter vuln
$ python manage.py migrate

Установка Redis-сервера

Reputation Tracker использует Redis в качестве серверной части кеша для Celery.

  • CentOS 7
root@kitploit:~
$ sudo yum install redis
$ sudo systemctl start redis
$ sudo systemctl enable redis
  • Ubuntu 18.04 LTS
root@kitploit:~
$ sudo apt install redis-server
$ sudo systemctl start redis-server
$ sudo systemctl enable redis-server

Настройка Celery

Reputation Tracker использует Celery как асинхронную очередь задач.

  • Создайте конфигурацию Celery. Рекомендую разместить конфиг по следующим путям:
    • CentOS 7: /etc/sysconfig/celery
    • Ubuntu 18.04 LTS: /etc/celery.conf
root@kitploit:~
# Name of nodes to start
# here we have a single node
CELERYD_NODES="w1"
# or we could have three nodes:
#CELERYD_NODES="w1 w2 w3"

# Absolute or relative path to the 'celery' command:
CELERY_BIN="/path/to/your/celery"

# App instance to use
# comment out this line if you don't use an app
CELERY_APP="intelligence"
# or fully qualified:
#CELERY_APP="proj.tasks:app"

# How to call manage.py
CELERYD_MULTI="multi"

# Extra command-line arguments to the worker
CELERYD_OPTS="--time-limit=300 --concurrency=8"

# - %n will be replaced with the first part of the nodename.
# - %I will be replaced with the current child process index
# and is important when using the prefork pool to avoid race conditions.
CELERYD_PID_FILE="/var/run/celery/%n.pid"
CELERYD_LOG_FILE="/var/log/celery/%n%I.log"
CELERYD_LOG_LEVEL="INFO"
  • Создайте скрипт управления службой Celery в /etc/systemd/system/celery.service. Также необходимо указать путь к вашему конфигурационному файлу Celery в EnvironmentFile.
root@kitploit:~
[Unit]
Description=Celery Service
After=network.target

[Service]
Type=forking
User=YOUR_USER
Group=YOUR_GROUP
EnvironmentFile=/etc/sysconfig/celery
WorkingDirectory=/path/to/your/exist
ExecStart=/bin/sh -c '${CELERY_BIN} multi start ${CELERYD_NODES} \
-A ${CELERY_APP} --pidfile=${CELERYD_PID_FILE} \
--logfile=${CELERYD_LOG_FILE} --loglevel=${CELERYD_LOG_LEVEL} ${CELERYD_OPTS}'
ExecStop=/bin/sh -c '${CELERY_BIN} multi stopwait ${CELERYD_NODES} \
--pidfile=${CELERYD_PID_FILE}'
ExecReload=/bin/sh -c '${CELERY_BIN} multi restart ${CELERYD_NODES} \
-A ${CELERY_APP} --pidfile=${CELERYD_PID_FILE} \
--logfile=${CELERYD_LOG_FILE} --loglevel=${CELERYD_LOG_LEVEL} ${CELERYD_OPTS}'

[Install]
WantedBy=multi-user.target
  • Создайте каталоги для логов и запуска Celery.
root@kitploit:~
$ sudo mkdir /var/log/celery; sudo chown YOUR_USER:YOUR_GROUP /var/log/celery
$ sudo mkdir /var/run/celery; sudo chown YOUR_USER:YOUR_GROUP /var/run/celery
  • Создайте файл конфигурации в /etc/tmpfiles.d/exist.conf
root@kitploit:~
#Type  Path               Mode  UID        GID         Age  Argument
d      /var/run/celery    0755  YOUR_USER  YOUR_GROUP  -
  • Запустите Celery
root@kitploit:~
$ sudo systemctl start celery.service
$ sudo systemctl enable celery.service

Запуск веб-сервера

root@kitploit:~
$ python manage.py runserver 0.0.0.0:8000
  • Откройте в браузере http://[YourWebServer]:8000.
  • WebAPI: http://[YourWebServer]:8000/api/

Примечание: Рекомендую использовать Nginx и uWSGI при запуске в производственной среде.

Сбор фидов

Скрипты для вставки фидов в базу данных находятся в scripts/insert2db/*/insert2db.py.

Настройка insert2db

  • Файлы конфигурации находятся в scripts/insert2db/conf/insert2db.conf. Создайте его по образцу insert2db.conf.template.
  • Если вы используете MISP, укажите URL MISP и API-ключ в insert2db.conf.
  • Если вы используете Malshare, укажите свой API-ключ в insert2db.conf.
  • Создайте учётную запись Twitter API на https://developer.twitter.com/ для отслеживания с помощью EXIST.
  • Создайте приложение для EXIST.
  • Получите Consumer API key (CA), Consumer API secret key (CS), Access token (AT), Access token secret (AS).
  • Укажите CA, CS, AT, AS в insert2db.conf.

Запуск скриптов

root@kitploit:~
$ python scripts/insert2db/reputation/insert2db.py
$ python scripts/insert2db/twitter/insert2db.py
$ python scripts/insert2db/exploit/insert2db.py
$ python scripts/insert2db/threat/insert2db.py
$ python scripts/insert2db/news/insert2db.py
$ python scripts/insert2db/vuln/insert2db.py

Примечание: Для автоматизации сбора информации добавьте их в cron.

Настройка Hunter

Twitter Hunter

Twitter Hunter может обнаруживать твиты, содержащие определённые ключевые слова и идентификаторы пользователей. При необходимости вы можете отправлять уведомления в Slack.

  • Файлы конфигурации находятся в scripts/hunter/conf/hunter.conf. Создайте его по образцу hunter.conf.template.
  • Если вы используете Slack, укажите свой токен Slack в hunter.conf.
  • Создайте учётную запись Twitter API на https://developer.twitter.com/.
  • Создайте 18 приложений для EXIST.
  • Получите 18 Consumer API key (CA), Consumer API secret key (CS), Access token (AT), Access token secret (AS).
  • Укажите CA, CS, AT, AS для auth-hunter[00-18] в hunter.conf.
  • Заставьте scripts/hunter/twitter/tw_watchhunter.py выполняться каждую минуту через cron, чтобы сделать Twitter Hunter постоянным.

Threat Hunter

Threat Hunter может обнаруживать события угроз, содержащие определённые ключевые слова. При необходимости вы можете отправлять уведомления в Slack.

  • Файлы конфигурации находятся в scripts/hunter/conf/hunter.conf. Создайте его по образцу hunter.conf.template.
  • Если вы используете Slack, укажите свой токен Slack в hunter.conf.
  • Заставьте scripts/hunter/threat/th_watchhunter.py выполняться каждую минуту через cron, чтобы сделать Threat Hunter постоянным.

Другие необходимые инструменты и настройки

VirusTotal API

EXIST использует VirusTotal API.

  • Создайте учётную запись VirusTotal.
  • Укажите свой API-ключ в conf/vt.conf.

Примечание: Вы получите больше информации, если у вас есть приватный API-ключ.

GeoIP БД

Lookup IP / Domain использует GeoLite2 Database.

  • Загрузите GeoIP БД с http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.mmdb.gz
  • Укажите путь к GeoLite2-City.mmdb в вашем conf/geoip.conf.

wkhtmltopdf и Xvfb

Lookup URL использует wkhtmltopdf и Xvfb.

  • Загрузите и установите wkhtmltopdf с https://wkhtmltopdf.org/downloads.html
  • Установите Xvfb.
root@kitploit:~
$ sudo yum install xorg-x11-server-Xvfb

Если вы разворачиваете EXIST на Ubuntu 18.04 LTS, вы можете установить эти пакеты с помощью apt.

root@kitploit:~
$ sudo apt install wkhtmltopdf xvfb

Очистка старых данных

  • Файлы конфигурации находятся в scripts/url/url.conf. Создайте его по образцу url.conf.template.
  • Заставьте scripts/url/delete_webdata.sh выполняться каждый день через cron, чтобы очищать старые данные Lookup URL.
  • Заставьте scripts/url/delete_oldtaskresult.sh выполняться каждый день через cron, чтобы очищать старые данные Celery.

AnnotationTool

Инструмент аннотирования для создания обучающих данных для твитов. Этот инструмент предназначен для исследователей машинного обучения.

Как использовать

  1. Проверьте цель аннотирования. annotation_target
  2. Нажмите кнопку Annotation. annotation_button
  3. Выберите слово для маркировки. annotation_labeled
  4. Нажмите кнопку метки.
  5. Сохраните.

Сообщение об уязвимостях

Пожалуйста, напишите нам, если вы обнаружите какие-либо уязвимости.

Шаблон отчёта об уязвимости

Благодарности

Этот продукт включает данные GeoLite2, созданные MaxMind, доступные на https://www.maxmind.com.

Лицензия

MIT License © Cybersecurity Laboratory, NICT

Скачать инструмент