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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/douglas-042/douglas-042-hq
Оборонительные ИнструментыУправление индикаторами компрометации (IOC)Анализ уязвимостейФорензикаРазведка угрозОбнаружение ВторженийРеагирование на ИнцидентыАнализ Журналов
GitHubdouglas-042/douglas-042-hq

douglas-042-HQ

Центральная консоль для коллекторов Douglas-042 HEADQUARTERS. Сканирует парк хостов, сопоставляет результаты между хостами и управляет фидами IOC и доставкой в SIEM из одного места.

Репозиторий
1425 дней назадЕщё не проверено

Популярное

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

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

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

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

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

Douglas-042 HEADQUARTERS

Охота на угрозы и реагирование на инциденты на основе агентов — для инфраструктур, в которых нет EDR.

Просканируйте парк хостов Windows и Linux на признаки компрометации, решите, что действительно важно, и действуйте — из одной консоли, одной командой на хост.

Python FastAPI Agents Rules License

Douglas-042 console — fleet posture at a glance

Что это делает

Охота — это не сканирование. Douglas собирает артефакты, которые аналитик собирал бы вручную — процессы, службы, запланированные задачи, автозапуск, соединения, учётные записи, драйверы, журналы событий, cron, systemd, историю оболочки, веб-корни — и запускает по ним 201 встроенную детекцию, а также ваши собственные правила Sigma, YARA и пользовательские правила.

Затем он делает то, что большинство инструментов оставляют вам: он говорит, какие находки всё ещё требуют решения, на какой из шестидесяти внешних адресов смотреть в первую очередь, и позволяет что-то с этим сделать, не открывая сессию RDP.

root@kitploit:~
   разверните одной командой  ──▶  охота  ──▶  находки появляются в реальном времени
                                            │
                     ┌──────────────────────┼──────────────────────┐
                     ▼                      ▼                      ▼
              совпадение с IOC-фидом   оценка репутации        действия реагирования
              "это известный C2"       "92/100, 340 отчётов"   изоляция · завершение · сбор

Зачем это нужно

Инфраструктуры, которым охота нужнее всего, часто оказываются теми, где нет EDR: несколько десятков серверов, нет бюджета на агентов и инцидент, начавшийся три дня назад. Выбор обычно стоит между коммерческой платформой, которую никто не согласовал, и папкой скриптов PowerShell, которые кто-то запускает вручную.

Douglas находится между ними. На исследуемом хосте ничего не устанавливается — коллектор запускается один раз и завершается — и каждый результат попадает в одну консоль, которую можно передать тому, кто возьмётся за инцидент следующим.


Триаж: что ещё требует решения

Находки легко создавать и дорого читать. Этот экран существует, чтобы очередь оставалась достаточно короткой, чтобы кто-то всё ещё читал её на третьем проходе.

Triage — open work by severity, and the noisiest rules

Три исхода, и разница между ними важна полгода спустя:

РешениеЧто оно делает
ПодтвержденоРеально. Остаётся в оценке риска, хост остаётся красным.
Ложное срабатываниеУбирается из оценки только для этого хоста.
ПодавлениеПостоянное правило, скрывающее ту же находку при каждом будущем сканировании.

Ничего никогда не удаляется. Отзовите подавление — и всё, что оно скрывало, вернётся. Самые шумные правила находятся внизу, потому что их настройка очищает очередь быстрее, чем разбор её находка за находкой.


Детекции, которые можно читать, настраивать и отключать

Все 201 детекция сгруппированы в 15 категорий — переключаемых по одной или целым семейством сразу. Нажмите на любое правило, чтобы прочитать, что оно проверяет, как оно срабатывает легитимно и что делать дальше.

Built-in detections, grouped into categories

Различие, которое разъясняет экран, потому что ошибиться здесь легко:

Отключить правило — не то же самое, что подавить его. Отключено означает, что коллектор вообще не выполняет проверку — ничего не создаётся и нечего рассматривать. Подавление фиксирует находку и помечает её как решение, принятое кем-то, с указанием причины.

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

Прочерк в столбце Сработало обычно и есть здоровый ответ: DGL-014 срабатывает только когда журнал выглядит очищенным. Список — это то, что проверяет инструмент, а не то, что не так.


Пишите свои правила как текст

Форма быстрее для вашего первого правила и медленнее для двадцатого. Поэтому правила можно также писать как текст — с проверкой по мере ввода, по 11 таблицам артефактов и 13 операторам.

Writing a rule as text, with live validation

Поле под ним выполняет две задачи. Когда правило неверно, оно называет строку, а не правило:

root@kitploit:~
line 7: Condition 1: 'is_maybe' is not an operator.

Когда оно верно, оно говорит, чему правило на самом деле будет соответствовать — потому что правило, которое проходит проверку, а затем соответствует не тому, что имел в виду его автор, и есть та ошибка, которую стоит поймать:

Valid — ACME-001 Reads Services and matches when Signed is false and PathName does not contain 'Program Files' and PathName does not contain 'System32'

Импорт и экспорт в JSON, YAML или CSV. Круговой обмен гарантирован — наш собственный экспорт проходит наш собственный валидатор во всех трёх форматах.


Индикаторные фиды и репутация отвечают на разные вопросы

ВопросКогдаРезультат
IOC-фидЕсть ли что-то из этого списка C2 на моих хостах?Во время охотыDGL-IOC — подтверждённое совпадение, а не оценка
ОбогащениеЭтот хост общался с 60 адресами — с какими в первую очередь?После охоты92/100, 340 отчётов, известный C2 Cobalt Strike

Пятнадцать источников фидов поставляются готовыми к использованию — Feodo, ThreatFox, URLhaus, TweetFeed, USOM, SSL Blacklist, Emerging Threats, OpenPhish, MISP — плюс пользовательский фид, читающий любой URL, возвращающий данные в форме индикаторов.

Четыре провайдера репутации: AbuseIPDB, VirusTotal, ThreatFox (бесплатные тарифы) и GreyNoise (платный, по умолчанию отключён). Вердикты никогда не смешиваются в одно число — AbuseIPDB считает жалобы, VirusTotal считает движки, ThreatFox знает инфраструктуру, и среднее из них — это цифра, которую ни один из них не стал бы защищать. Значок показывает худший вердикт с указанием провайдера, который его выдал.

Бесплатные тарифы защищены: результаты кэшируются на 12 часов, 40 адресов за запуск и ежедневный счётчик, который останавливается раньше, чем провайдер. Приватные адреса никогда не отправляются.


Реагирование из консоли

Одиннадцать действий в трёх группах — смотреть, действовать, сдерживать. Пять только для чтения помечены иначе, чем шесть, изменяющих хост, и каждое изменяющее действие требует письменной причины.

Изоляция намеренно сохраняет доступность консоли: хост, отрезанный от собственного агента, нельзя освободить удалённо, и кому-то пришлось бы идти к нему. Цели, которые сломали бы машину, а не сдержали вторжение — lsass.exe, systemd, pid 1, Administrator, /bin/bash — отклоняются, а не сопровождаются предупреждением, потому что момент, когда это используется, — это момент, когда никто не читает предупреждения.

Вывод возвращается в виде структурированных карточек, а не дампа терминала, и строки действенны: в списке процессов есть кнопка Kill для каждой строки, у адреса — Reputation.


Sigma и YARA на обеих платформах

WindowsLinux
SigmaEvent Log + Sysmonauditd execve + auth/cron/syslog
YARAсодержимое файловсодержимое файлов

Правила Sigma для Linux, чей источник журнала не может быть прочитан, отклоняются при загрузке с указанием причины, а не загружаются и оставляются, чтобы никогда не сработать — пустой результат от правила, которое не могло выполниться, выглядит точно так же, как чистый хост.

Агент Linux проверяет, установлен ли auditd, запущен ли он и загружены ли в него правила, затем сообщает, чего не хватает и чего это стоит:

root@kitploit:~
   Detection capabilities on this host
     auditd    : NOT RUNNING
                 Nothing records what executes on this host, so execution
                 rules cannot fire and a clean result only means the sweep
                 could not look. Install it:
                   apt install auditd && systemctl enable --now auditd

Отправляйте туда, куда люди уже смотрят

Одиннадцать назначений в трёх группах:

  • SIEM — Wazuh/JSON, Splunk HEC, Microsoft Sentinel, Elasticsearch, QRadar LEEF, CEF, NDJSON
  • Уведомления — Slack, Microsoft Teams, PagerDuty
  • Кейсы — TheHive

Назначения для чата и пейджинга отображают предложение, а не запись, и ограничивают число находок в одном сообщении: канал, в который вставлено сто строк, — это канал, который люди отключают.


Быстрый старт

root@kitploit:~
git clone https://github.com/YOURNAME/douglas-042.git
cd douglas-042
pip install -r requirements.txt
uvicorn app.main:app --host 0.0.0.0 --port 8000

Или с Docker:

root@kitploit:~
docker compose up -d

Откройте http://your-server:8000

Вход по умолчанию

Имя пользователя: admin Пароль: douglas

Консоль принудительно требует смены пароля при первом входе — значение по умолчанию, зашитое в пакет, не должно оставаться незамеченным. Задайте DOUGLAS_CONSOLE_PASSWORD в .env перед первым запуском, если предпочитаете выбрать свой собственный.

.env читается только пока база данных пуста. После первого запуска сбросьте пароль командой python3 -m app.manage passwd admin.

При запуске вы получаете токен регистрации для следующего шага:

root@kitploit:~
Created the initial admin account: admin
The default password is still in use. Change it at first sign-in.
Enrollment token ready: dgl-enroll-xBAk8...
Douglas-042 console 1.0 ready

Добавление хоста

Deploy → выберите платформу → скопируйте одну команду.

Windows — PowerShell с повышенными правами:

root@kitploit:~
iex (irm 'http://console:8000/api/v1/reports/deploy/script?token=YOUR_TOKEN')

Linux — от имени root:

root@kitploit:~
curl -sSL 'http://console:8000/api/v1/reports/deploy/script?token=YOUR_TOKEN&platform=linux' | sudo bash

Шесть шагов транслируются в терминал: загрузка, регистрация, получение коллектора, установка службы, подтверждение, что она работает, первая регистрация. Если регистрация не удалась, ничего не устанавливается, и об этом сообщается.


Первый час

#ЭкранСделайте этоВы получите
1IOC-фидыДобавьте Feodo Tracker, нажмите RefreshДетекцию C2 — без написания правил
2Threat intelВставьте бесплатный ключ AbuseIPDB, нажмите TestПорядок триажа на графе
3FleetВыберите хост, запустите охотуНаходки в реальном времени
4Logs & eventsПоищите ошибки модулейМог ли сбор вообще что-то увидеть
5ТриажРазберите очередь, настройте самые шумные правилаСписок, который кто-то всё ещё читает
6My rulesЗагрузите 6 примеров, откройте одинКак писать свои собственные
7IntegrationsВебхук Slack, порог на HIGHВы узнаёте об этом, не наблюдая

Архитектура

root@kitploit:~
┌──────────────────────────────────────────────────────────┐
│  Консоль — FastAPI + SQLite, один процесс, без очереди    │
│  триаж · находки · граф · правила · реагирование · отчёты │
└───────────────▲──────────────────────────────────────────┘
                │ агенты опрашивают: heartbeat 20с, действия 5с
┌───────────────┴──────────────────────────────────────────┐
│  Агент  (PowerShell / shell)                              │
│    └── Коллектор — запускается, отчитывается, завершается │
│          201 встроенное правило + Sigma + YARA + ваши     │
└──────────────────────────────────────────────────────────┘
  • На исследуемом хосте ничего не устанавливается. Коллектор запускается и завершается; агент — это запланированная задача или unit systemd, который забирает работу.
  • Консоль никогда не подключается внутрь. Агенты опрашивают, поэтому хост за NAT или односторонним межсетевым экраном всё равно работает.
  • SQLite, один файл. Ни брокера, ни кластера, ни внешней базы данных. Миграции схемы выполняются при запуске и только добавляют.
Экраны консоли

Dashboard · Cases · Fleet · Hunts · Response · Findings · Triage · Frequency · Graph · MITRE matrix · Timeline · Diff · Built-in rules · My rules · Sigma · YARA · IOC feeds · Threat intel · Integrations · Schedules · Users · Deploy · Logs & events

Категории детекций

Целостность сбора · Автозапуск и запуск · Процессы и сеть · Службы и задачи · Механизмы персистентности · Безопасность конфигурации · Драйверы и ядро · Свидетельства выполнения · Аутентификация и учётные записи · Удалённый доступ · Sysmon, Kerberos и AD · Файлы, веб-шеллы и эксфильтрация · Активность пользователей и доверие · Rootkit и память · Совпадения индикаторов

Что читает коллектор

Обе платформы: локальные учётные записи и группы · запущенные процессы с подписями и хешами · TCP-соединения и внешние конечные точки · службы · недавно записанные файлы · код в памяти · веб-корни и шаблоны веб-шеллов

Windows: журналы событий · запланированные задачи · автозапуск · персистентность в реестре · подписки WMI · драйверы · общие ресурсы SMB · Prefetch · хранилища сертификатов

Linux: cron · unit-файлы systemd · файлы запуска оболочки · LD_PRELOAD · бинарники setuid · authorized_keys и конфигурация sshd · история оболочки · журналы аутентификации · загрязнение ядра · WordPress

Требования

Консоль: Python 3.11+, шесть зависимостей (FastAPI, uvicorn, SQLAlchemy, pydantic, python-multipart, PyYAML). Работает на виртуальной машине с 1 ГБ памяти.

Хосты Windows: PowerShell 5.1+, администратор. Больше ничего.

Хосты Linux: bash и curl. python3 включает живой прогресс и правила по содержимому файлов; auditd включает детекции выполнения. Консоль сообщает, чего не хватает на каком хосте.


Замечания по безопасности

  • Смена пароля принудительна при первом входе; учётные записи блокируются после повторных неудач.
  • Ключи сессий генерируются при первом запуске с правами 0600 — фиксированный ключ, поставляемый в пакете, был бы общим для всех, кто его скачал.
  • Действия реагирования ограничены ролями, аудируются и отклоняют цели, которые сломали бы хост.
  • Приватные адреса никогда не отправляются провайдерам репутации.
  • Экспорт правил нейтрализует инъекцию формул в электронные таблицы.

📄 Технический отчёт (PDF) — 14 страниц, охватывающих архитектуру, каждый экран консоли, все 37 модулей коллектора, модель детекций, действия реагирования и модель безопасности.

Лицензия

Лицензировано под MIT License. См. LICENSE.


Создано для инфраструктур, которым охота нужнее всего и которые могут позволить её меньше всего.
Скачать инструмент