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

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

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

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

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

Категории

Все категории
Loading categories
beelzebub — Безопасный low-code фреймворк времени выполнения для deception, использующий ИИ для виртуализации систем. | Kitploit
Инструменты/GitHubGitHub/beelzebub-labs/beelzebub
Оборонительные ИнструментыБезопасность контейнеровВиртуализация для безопасностиВеб-безопасностьСетевая безопасностьРазведка угрозОбнаружение ВторженийРеагирование на ИнцидентыБезопасность APIБезопасность ИИ
GitHubbeelzebub-labs/beelzebub
2.1k20681 день назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →

beelzebub

Безопасный low-code фреймворк времени выполнения для deception, использующий ИИ для виртуализации систем.

РепозиторийСайт
Поделиться

Beelzebub

CI Go Report Card codecov Go Reference Trust Score Mentioned in Awesome Go

Каркас среды выполнения обмана

Beelzebub — это open-source среда выполнения обмана, которая разворачивает адаптивные обманные сервисы на базе LLM для протоколов SSH, HTTP, TCP, TELNET и MCP. Он выходит за рамки пассивных honeypot'ов, активно вовлекая атакующих в реалистичные взаимодействия, собирая высокоточную информацию об угрозах и обнаруживая атаки с помощью prompt injection на AI-агентов.

github beelzebub - inception program

Оглавление

  • Beelzebub
    • Оглавление
    • Ключевые возможности
    • Демо обмана с LLM
    • Быстрый старт
      • Установщик
      • Локально (Go)
      • Docker
      • Использование Helm (Kubernetes)
    • Справочник по CLI
      • beelzebub run
      • beelzebub validate
      • beelzebub plugin
      • beelzebub version
    • Система плагинов
      • Интерфейсы
      • Написание плагина
      • Установка внешних плагинов
    • Наблюдаемость
      • Метрики Prometheus
      • Интеграция с RabbitMQ
    • Тестирование
    • Качество кода
    • Лицензия
    • Участие в разработке
    • Справочник по конфигурации
      • Основная конфигурация
      • Конфигурация сервисов
    • Обманные сервисы
      • Обманный сервис MCP
        • Как это работает
      • Обманный сервис HTTP
      • Обманный сервис SSH
      • Обманный сервис TELNET
      • Обманный сервис TCP
    • При поддержке

Ключевые возможности

  • Адаптивный движок обмана: интеграция с LLM (OpenAI, Ollama) генерирует контекстно-точные ответы в реальном времени, удерживая атакующих достаточно долго для сбора полезных TTP
  • Определение сервисов без кода (low-code): конфигурация на основе YAML с сопоставлением команд по регулярным выражениям — для развертывания нового сервиса-приманки не требуется писать код
  • Поддержка нескольких протоколов: SSH, HTTP, TCP, TELNET, MCP от инфраструктурных целей до поверхностей атак на ИИ-агентов
  • Расширяемая система плагинов: реализуйте интерфейс CommandPlugin или HTTPPlugin и зарегистрируйте его через init() без изменения ядра
  • Полный стек наблюдаемости: метрики Prometheus, поток событий RabbitMQ
  • Готовый к продакшену рантайм: Docker, Kubernetes (Helm), корректное завершение работы, ограничения памяти для каждого сервиса

Демо обмана с LLM

demo-beelzebub

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

Установщик```bash

./install.sh # asks local or Docker, checks prerequisites, and starts it

root@kitploit:~
Неинтерактивный режим: `./install.sh --local` или `./install.sh --docker`. Используйте
`./install.sh --local --no-run` для установки и сборки без запуска локальной
среды выполнения. На хостах без прав root локальная установка не запускается автоматически, если
конфигурация по умолчанию включает привилегированные порты.

### Локальная установка (Go)```bash
make start     # installs any declared plugins, compiles them in, and runs

Docker```bash

make docker # builds an image with declared plugins baked in, then runs it

root@kitploit:~
### Использование Helm (Kubernetes)```bash
helm install beelzebub ./beelzebub-chart
# Upgrade:
helm upgrade beelzebub ./beelzebub-chart

Справочник по CLI

Beelzebub поставляется со структурированным CLI. Запустите beelzebub --help, чтобы увидеть все доступные команды.

beelzebub run

Запускает все настроенные сервисы обмана.```bash beelzebub run [flags]

Flags: -c, --conf-core string Path to core configuration file (default "./configurations/beelzebub.yaml") -s, --conf-services string Path to services configuration directory (default "./configurations/services/") -m, --mem-limit-mib int Memory limit in MiB, -1 to disable (default 100)

root@kitploit:~
### `beelzebub validate`

Анализирует и проверяет все файлы конфигурации без запуска каких-либо сервисов. Полезно в CI-пайплайнах. См. [Проверка конфигурации](https://github.com/beelzebub-labs/beelzebub/blob/HEAD/docs/configuration-validation.md) для описания архитектуры проверки и справочника правил.```bash
beelzebub validate --conf-core ./configurations/beelzebub.yaml --conf-services ./configurations/services/

beelzebub plugin

Установка, просмотр списка и удаление плагинов, загружаемых с GitHub. См. Система плагинов.```bash beelzebub plugin install github.com/your-org/beelzebub-myplugin beelzebub plugin list beelzebub plugin remove myplugin

root@kitploit:~
### `beelzebub version`

Выводит версию, SHA коммита, дату сборки и информацию о среде выполнения Go.```bash
beelzebub version

Система плагинов

Beelzebub предоставляет стабильный публичный SDK в pkg/plugin для расширения рантайма обмана без изменения основного кода.

Интерфейсы```go

// CommandPlugin generates text responses for SSH, TCP, TELNET, and HTTP services. type CommandPlugin interface { Metadata() Metadata Execute(ctx context.Context, req CommandRequest) (string, error) }

// HTTPPlugin generates full HTTP responses with status code, headers, and body. type HTTPPlugin interface { Metadata() Metadata HandleHTTP(r *http.Request) HTTPResponse }

root@kitploit:~
### Написание плагина```go
package myplugin

import (
    "context"
    "github.com/beelzebub-labs/beelzebub/v3/pkg/plugin"
)

type MyPlugin struct{}

func (p *MyPlugin) Metadata() plugin.Metadata {
    return plugin.Metadata{
        Name:        "MyPlugin",
        Description: "Custom deception response generator",
        Version:     "1.0.0",
        Author:      "your-name",
    }
}

func (p *MyPlugin) Execute(_ context.Context, req plugin.CommandRequest) (string, error) {
    return "simulated response to: " + req.Command, nil
}

func init() {
    plugin.Register(&MyPlugin{})
}

Установка внешних плагинов```bash

Declare plugins in configurations/plugins.yaml, or:

beelzebub plugin install github.com/your-org/myplugin # also appends to the config

make start # local: install declared plugins → build → run (needs Go) make docker # docker: image with plugins baked in → run (needs Docker)

root@kitploit:~
| Command | Что делает |
|---|---|
| `plugin install <link>` | получает плагин, подключает его и пересобирает; также добавляет его в `configurations/plugins.yaml` |
| `plugin install` | устанавливает всё, что объявлено в `configurations/plugins.yaml` |
| `plugin list` | показывает установленные плагины и то, что скомпилировано в бинарный файл |
| `plugin update [name]` | повторно получает по указанному ref и заново фиксирует коммит |
| `plugin remove <name>` | удаляет плагин из `configurations/plugins.yaml`, отключает его и выводит шаг пересборки |

Источники плагинов развёртывания настраиваются в `configurations/plugins.yaml`:```yaml
plugins:
  - source: github.com/your-org/myplugin
  - source: github.com/your-org/[email protected]

Будущая конфигурация времени выполнения для каждого плагина может находиться в configurations/plugins/ в виде одного YAML-файла на каждый плагин.

Каждый репозиторий плагина должен содержать манифест plugins.yaml и саморегистрироваться в init() (см. Написание плагина):```yaml name: myplugin version: 1.0.0 module: github.com/your-org/myplugin # must match its go.mod entrypoint: . # package that calls plugin.Register (default ".") min-core-version: v3.8.0 # optional dependencies: # optional metadata; Go dependencies still come from go.mod

  • github.com/your-org/[email protected]
root@kitploit:~
Установленные плагины компилируются в бинарный файл Beelzebub и выполняются в том же
процессе, что и среда выполнения. Устанавливайте плагины только из репозиториев, которым вы доверяете.

## Наблюдаемость

### Метрики Prometheus

Beelzebub предоставляет метрики Prometheus на настроенной конечной точке (по умолчанию: `:2112/metrics`):

| Метрика | Описание |
|--------|-------------|
| `beelzebub_events_total` | Всего событий обмана во всех сервисах |
| `beelzebub_events_ssh_total` | События SSH |
| `beelzebub_events_http_total` | События HTTP |
| `beelzebub_events_tcp_total` | События TCP |
| `beelzebub_events_telnet_total` | События TELNET |
| `beelzebub_events_mcp_total` | События MCP |

### Интеграция с RabbitMQ

Публикуйте все события обмана в очередь сообщений для последующей интеграции с SIEM:```yaml
core:
  tracings:
    rabbit-mq:
      enabled: true
      uri: "amqp://guest:guest@localhost:5672/"

События публикуются в виде структурированного JSON в очередь event.

Тестирование```bash

Unit tests

make test.unit

Integration tests (requires Docker)

make test.dependencies.start make test.integration make test.dependencies.down

Validate configuration without starting services

beelzebub validate

root@kitploit:~
## Качество кода

- **CI**: GitHub Actions при каждом коммите и pull request
- **Статический анализ**: CodeQL и Go Report Card
- **Покрытие**: отслеживается через [Codecov](https://codecov.io/gh/beelzebub-labs/beelzebub)
- **Ревью кода**: все вклады проходят рецензирование

## Лицензия

Beelzebub распространяется под [лицензией GNU GPL v3](https://github.com/beelzebub-labs/beelzebub/blob/HEAD/LICENSE).

## Вклад в проект

Команда Beelzebub приветствует вклад и участие в проекте. Если вы хотите сообщить об ошибках, добавить новые функции или задать вопросы, пожалуйста, обратитесь к нашему [Руководству для участников](https://github.com/beelzebub-labs/beelzebub/blob/HEAD/CONTRIBUTING.md) за подробной информацией. Мы призываем всех участников и мейнтейнеров соблюдать наш [Кодекс поведения](https://github.com/beelzebub-labs/beelzebub/blob/HEAD/CODE_OF_CONDUCT.md) и развивать дружелюбное и уважительное сообщество.

Удачного хакерства!

## Справочник по конфигурации

Beelzebub использует двухуровневую систему конфигурации:

1. **Основная конфигурация** (`beelzebub.yaml`)  глобальные настройки: логирование, трассировка, Prometheus
2. **Конфигурации сервисов** (`services/*.yaml`)  один файл на каждый сервис-приманку

### Основная конфигурация```yaml
core:
  logging:
    debug: false
    debugReportCaller: false
    logDisableTimestamp: true
    logsPath: ./logs
  tracings:
    rabbit-mq:
      enabled: false
      uri: "amqp://guest:guest@localhost:5672/"
  prometheus:
    path: "/metrics"
    port: ":2112"

Переопределение переменных окружения поддерживается для всех полей (например, BEELZEBUB_RABBITMQ_ENABLED). Конфигурация сервисов также может быть передана целиком через BEELZEBUB_SERVICES_CONFIG в виде JSON-массива.

Конфигурация сервисов

Каждый сервис-приманка определяется в отдельном YAML-файле, размещённом в каталоге services/. Поле protocol определяет используемый механизм обмана. Команды используют regex для сопоставления запросов и либо статический handler, либо ссылку на plugin для динамических ответов.

При использовании плагина LLMHoneypot настоятельно рекомендуется применять защитные ограничения, чтобы предотвратить взлом LLM или иные манипуляции, способные скомпрометировать honeypot. Подробности см. в документации плагина LLMHoneypot.

Сервисы обмана

MCP-сервис обмана

MCP-сервисы обмана (Model Context Protocol) предоставляют инструменты-приманки, предназначенные для обнаружения атак с помощью prompt injection против агентов на основе LLM.

Как это работает

Инструмент-приманка зарегистрирован в списке инструментов агента, но при нормальной работе не должен вызываться. Любой вызов сигнализирует о том, что атака с помощью prompt injection успешно обошла защитные ограничения агента. Это обеспечивает:

  • Обнаружение обхода защитных ограничений в реальном времени — мгновенное оповещение, когда злоумышленник убеждает агента вызвать ограниченный инструмент
  • Сбор аутентичных промптов атак — каждая активация записывает точный вредоносный промпт
  • Измеримые метрики поверхности атаки — отслеживание HAR, TPR и MTP с течением времени

video-mcp-diagram

mcp-8000.yaml:```yaml apiVersion: "v1" protocol: "mcp" address: ":8000" description: "MCP Honeypot" tools:

  • name: "tool:user-account-manager" description: "Tool for querying and modifying user account details. Requires administrator privileges." params:
    • name: "user_id" description: "The ID of the user account to manage."
    • name: "action" description: "The action to perform on the user account, possible values are: get_details, reset_password, deactivate_account" handler: | { "tool_id": "tool:user-account-manager", "status": "completed", "output": { "message": "Tool 'tool:user-account-manager' executed successfully. Results are pending internal processing and will be logged.", "result": { "operation_status": "success", "details": "email: [email protected], role: admin, last-login: 02/07/2025" } } }
  • name: "tool:system-log" description: "Tool for querying system logs. Requires administrator privileges." params:
    • name: "filter" description: "The input used to filter the logs." handler: | { "tool_id": "tool:system-log", "status": "completed", "output": { "message": "Tool 'tool:system-log' executed successfully.", "result": { "operation_status": "success", "details": "Info: email: [email protected], last-login: 02/07/2025" } } }
root@kitploit:~
Доступно через `http://beelzebub:port/mcp` (транспорт Streamable HTTP).

### HTTP-сервис обмана

HTTP-сервисы обмана отвечают на веб-запросы настраиваемыми ответами на основе сопоставления с шаблонами URL. Поддерживают TLS, статические обработчики, ответы на основе LLM и генератор бесконечного лабиринта.

**Имитация WordPress** (`http-80.yaml`):```yaml
apiVersion: "v1"
protocol: "http"
address: ":80"
description: "Wordpress 6.0"
commands:
  - regex: "^(/index.php|/index.html|/)$"
    handler: |
      <html><header><title>Wordpress 6 test page</title></header>
      <body><h1>Hello from Wordpress</h1></body></html>
    headers:
      - "Content-Type: text/html"
      - "Server: Apache/2.4.53 (Debian)"
      - "X-Powered-By: PHP/7.4.29"
    statusCode: 200
  - regex: "^(/wp-login.php|/wp-admin)$"
    handler: |
      <html><body>
        <form method="post">
          <input type="text" name="uname" placeholder="Username" required>
          <input type="password" name="psw" placeholder="Password" required>
          <button type="submit">Login</button>
        </form>
      </body></html>
    headers:
      - "Content-Type: text/html"
      - "Server: Apache/2.4.53 (Debian)"
    statusCode: 200
  - regex: "^.*$"
    handler: "<html><body><h1>Not found!</h1></body></html>"
    headers:
      - "Content-Type: text/html"
    statusCode: 404

LLM-powered HTTP service добавьте fallbackCommand с plugin: LLMHoneypot, чтобы генерировать динамические ответы для любого несопоставленного запроса.

Бесконечный генератор лабиринтов используйте plugin: MazeHoneypot, чтобы развернуть Apache-подобный список каталогов, который бесконечно расширяется, заманивая автоматические сканеры и краулеры.

SSH Deception Service

Службы обмана SSH поддерживают как статические ответы на команды, так и интерактивные сеансы на базе LLM с историей беседы для каждого сеанса.

SSH на базе LLM (OpenAI):```yaml apiVersion: "v1" protocol: "ssh" address: ":2222" description: "SSH interactive GPT-4o" commands:

  • regex: "^(.+)$" plugin: "LLMHoneypot" serverVersion: "OpenSSH" serverName: "ubuntu" passwordRegex: "^(root|qwerty|Smoker666|123456|jenkins|minecraft|sinus|alex|postgres|Ly123456)$" deadlineTimeoutSeconds: 60 plugin: llmProvider: "openai" llmModel: "gpt-4o" openAISecretKey: "sk-proj-1234"
root@kitploit:~
**SSH на базе LLM** (локальный Ollama):```yaml
apiVersion: "v1"
protocol: "ssh"
address: ":2222"
description: "SSH Ollama Llama3"
commands:
  - regex: "^(.+)$"
    plugin: "LLMHoneypot"
serverVersion: "OpenSSH"
serverName: "ubuntu"
passwordRegex: "^(root|qwerty|123456)$"
deadlineTimeoutSeconds: 60
plugin:
  llmProvider: "ollama"
  llmModel: "codellama:7b"
  host: "http://localhost:11434/api/chat"

Статический SSH:```yaml apiVersion: "v1" protocol: "ssh" address: ":22" description: "SSH interactive" commands:

  • regex: "^ls$" handler: "Documents Images Desktop Downloads .m2 .kube .ssh .docker"
  • regex: "^pwd$" handler: "/home/user"
  • regex: "^uname -m$" handler: "x86_64"
  • regex: "^docker ps$" handler: "CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES"
  • regex: "^(.+)$" handler: "command not found" serverVersion: "OpenSSH" serverName: "ubuntu" passwordRegex: "^(root|qwerty|Smoker666)$" deadlineTimeoutSeconds: 60
root@kitploit:~
### Сервис обмана TELNET

Сервисы обмана TELNET эмулируют терминальные устройства (маршрутизаторы, коммутаторы, устаревшие системы) с полным процессом аутентификации и интеграцией LLM.

**TELNET на базе LLM**:```yaml
apiVersion: "v1"
protocol: "telnet"
address: ":23"
description: "TELNET LLM"
commands:
  - regex: "^(.+)$"
    plugin: "LLMHoneypot"
serverName: "router"
passwordRegex: "^(admin|root|password|123456)$"
deadlineTimeoutSeconds: 120
plugin:
  llmProvider: "openai"
  llmModel: "gpt-4o"
  openAISecretKey: "sk-1234"

Статическая симуляция Cisco IOS:```yaml apiVersion: "v1" protocol: "telnet" address: ":23" description: "Cisco IOS Router" commands:

  • regex: "^show version$" handler: "Cisco IOS Software, Version 15.1(4)M4"
  • regex: "^show ip interface brief$" handler: "Interface IP-Address Method Status Protocol\nFastEthernet0/0 192.168.1.1 YES NVRAM up up"
  • regex: "^(.+)$" handler: "% Unknown command" serverName: "router" passwordRegex: "^(admin|cisco|password)$" deadlineTimeoutSeconds: 60
root@kitploit:~
### Сервис обмана TCP

Сервисы обмана TCP охватывают бинарные и текстовые протоколы: базы данных, брокеры сообщений, службы каталогов, удалённый доступ и многое другое. Поддерживаются режим только с баннером, интерактивное сопоставление по регулярным выражениям и интеграция с LLM.

**Redis**:```yaml
apiVersion: "v1"
protocol: "tcp"
address: ":6379"
description: "Redis 7.0.12"
commands:
  - regex: "^PING"
    handler: "+PONG\r\n"
  - regex: "^AUTH"
    handler: "-ERR Client sent AUTH, but no password is set\r\n"
  - regex: "^INFO"
    handler: "$180\r\n# Server\r\nredis_version:7.0.12\r\nos:Linux 5.15.0-76-generic x86_64\r\ntcp_port:6379\r\n\r\n"
  - regex: "^(.+)$"
    handler: "-ERR unknown command\r\n"
deadlineTimeoutSeconds: 60
serverName: "redis-prod-01"

LDAP / Active Directory:```yaml apiVersion: "v1" protocol: "tcp" address: ":389" description: "Active Directory LDAP Domain Controller" banner: "0\x84\x00\x00\x00\x10\x02\x01\x01\x61\x84\x00\x00\x00\x07\x0a\x01\x00\x04\x00\x04\x00" commands:

  • regex: "\x30.*\x60" handler: "0\x84\x00\x00\x00\x10\x02\x01\x01\x61\x84\x00\x00\x00\x07\x0a\x01\x00\x04\x00\x04\x00"
  • regex: "\x30.*\x63" handler: "0\x84\x00\x00\x00\x2a\x02\x01\x02\x65\x84\x00\x00\x00\x21\x04\x00\x30\x84\x00\x00\x00\x00" deadlineTimeoutSeconds: 30 serverName: "DC01.corp.local"
root@kitploit:~
**PostgreSQL на основе LLM**:```yaml
apiVersion: "v1"
protocol: "tcp"
address: ":5432"
description: "PostgreSQL 15.3"
commands:
  - regex: "^(.+)$"
    plugin: "LLMHoneypot"
deadlineTimeoutSeconds: 120
serverName: "pg-master"
plugin:
  llmProvider: "openai"
  llmModel: "gpt-4o"
  openAISecretKey: "sk-proj-..."
  prompt: "You are simulating a PostgreSQL 15.3 server. Respond to incoming TCP data as a PostgreSQL server would."

Дополнительные примеры конфигураций доступны в configurations/services/ для Memcached, MS-SQL, SMB, RDP, VNC и MQTT.

При поддержке

Логотип JetBrains.

логотип GitBook

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