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

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

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

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

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

Категории

Все категории
Loading categories
DECEIVE — DECeption with Evaluative Integrated Validation Engine (DECEIVE): пусть LLM сделает всю тяжёлую работу по созданию honeypot! | Kitploit
Инструменты/GitHubGitHub/cisco-talos/deceive
Оборонительные ИнструментыСетевая безопасностьРазведка угрозОбнаружение ВторженийБезопасность ИИАнализ Журналов
GitHubcisco-talos/deceive

DECEIVE

DECeption with Evaluative Integrated Validation Engine (DECEIVE): пусть LLM сделает всю тяжёлую работу по созданию honeypot!

Репозиторий
28841174 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

DECEIVE

Киберпреступник взаимодействует с призрачной ИИ-управляемой системой-ловушкой

DECEIVE, DECeption with Evaluative Integrated Validation Engine (система обмана с интегрированной оценочной проверкой), — это высокоинтерактивная honeypot-система, не требующая больших усилий. В отличие от большинства высокоинтерактивных honeypot-систем, DECEIVE не предоставляет атакующим доступ к какой-либо реальной системе. ИИ выполняет всю работу по симуляции реалистичной honeypot-системы на основе настраиваемого системного промпта, который описывает, какой тип системы вы хотите симулировать. В отличие от многих других высокоинтерактивных honeypot-систем, требующих значительных усилий для наполнения реалистичными пользователями, данными и приложениями, ИИ-бэкенд DECEIVE сделает всё это за вас автоматически.

Эта версия DECEIVE симулирует Linux-сервер по протоколу SSH. Она логирует весь пользовательский ввод, ответы, возвращаемые LLM-бэкендом, а также сводку по каждой завершённой сессии. Она даже сообщит, если считает сессию пользователя безвредной, подозрительной или откровенно вредоносной.

⛔️⛔️ DECEIVE — это проект уровня proof-of-concept. Он не имеет production-качества. Пробуйте, учитесь на нём, но будьте осторожны при развёртывании в производственной среде. ⛔️⛔️

Поддерживаемые хост-платформы

DECEIVE в первую очередь разрабатывается на MacOS 15 (Sequoia), но должен работать в любой UNIX-подобной системе, способной запускать Python3. Это включает другие версии MacOS, Linux и даже Windows (через Windows Subsystem for Linux).

Установка

Получите последнюю версию кода из GitHub

Вы можете получить последнюю версию с помощью следующей команды:

git clone https://github.com/splunk/DECEIVE

В остальных инструкциях предполагается, что после завершения клонирования вы перешли в каталог репозитория.

Установка зависимостей

DECEIVE использует uv для управления Python-зависимостями и виртуальным окружением. Если uv ещё не установлен, установите его с помощью автономного установщика Astral:

curl -LsSf https://astral.sh/uv/install.sh | sh

Затем синхронизируйте окружение проекта из корня репозитория:

uv sync

Файлы pyproject.toml и uv.lock являются источником истины для зависимостей. Этот проект намеренно не поддерживает запасной вариант requirements.txt.

Создание SSH-ключа хоста

SSH-серверу требуется пара ключей TLS для защищённой связи. Из корневого каталога репозитория создайте пару SSH-ключей следующей командой:

ssh-keygen -t rsa -b 4096 -f SSH/ssh_host_key

Копирование шаблона файла конфигурации

Скопируйте файл SSH/config.ini.TEMPLATE в SSH/config.ini:

Редактирование файла конфигурации

Откройте файл SSH/config.ini и просмотрите настройки. При необходимости обновите значения, уделяя особое внимание значениям в секции [llm], где настраивается используемый LLM-бэкенд, и в секции [user_accounts], где можно настроить имена пользователей и пароли, которые должна поддерживать honeypot-система.

Расскажите DECEIVE, что она эмулирует

Отредактируйте файл SSH/prompt.txt, указав краткое описание типа системы, которой она должна притворяться. Здесь не обязательно вдаваться в детали, хотя чем больше деталей вы укажете, тем лучше будет симуляция. Можно описать систему на высоком уровне, например:

You are a video game developer's system. Include realistic video game source and asset files.

При желании вы можете добавить любые дополнительные детали, которые сочтёте полезными. Например:

You are the Internet-facing mail server for bigschool.edu, a state-sponsored university in Virginia. Valid user accounts are "a20093887", "a20093887-admin", and "mxadmin". Home directories are in "/home/$USERNAME".  Everyone's default shell is /bin/zsh, except mxadmin's, which is bash. Mail spools for all campus users (be sure to include email accounts that are not valid for logon to this server) are in /var/spool/mail. Be sure to simulate some juicy emails there, but make them realistic.  Some should be personal, but some should be just about the business of administering the school, dealing with students, applying for financial aid, etc. Make the spool permissions relaxed, simulating a misconfiguration that would allow anyone on the system to read the files.

Запуск honeypot-системы

Чтобы запустить honeypot-сервер DECEIVE, сначала убедитесь, что заданы все переменные окружения, необходимые выбранному LLM-бэкенду. Например, если вы используете любую из моделей OpenAI, задайте переменную OPENAI_API_KEY следующим образом:

export OPENAI_API_KEY="<your secret API key>"

Затем запустите SSH-honeypot из корня репозитория:

uv run python SSH/ssh_server.py

Можно также перейти в каталог SSH и выполнить:

uv run python ssh_server.py

Сервер запустится и будет ожидать входящие SSH-подключения на настроенном порту. Он не выводит никаких сообщений, но продолжает работать в foreground-режиме.

Проверка работы

Когда сервер запущен (это может занять несколько секунд), подключитесь к нему на настроенном порту. Если вы работаете в Linux или UNIX-подобной системе, попробуйте следующую команду (подставьте "localhost" и "8022" в соответствии с вашей конфигурацией):

ssh guest@localhost -p 8022

Запуск автоматических тестов

После выполнения uv sync запустите все тесты из корня репозитория:

uv run pytest

Чтобы запустить только SSH-интеграционные тесты:

uv run pytest tests/test_ssh_integration.py

Интеграционные тесты запускают настоящий SSH-сервер на локальном случайном порту, подключаются к нему SSH-клиентом и используют детерминированный фейковый LLM-бэкенд, чтобы проверки не зависели от реального вывода модели.

Логирование

Логи записываются в файл, указанный в параметре конфигурации log_file. Относительные пути log_file разрешаются относительно каталога, содержащего загруженный файл конфигурации, поэтому значение по умолчанию из шаблона записывает логи в SSH/ssh_log.log.

Логи DECEIVE хранятся в формате JSON Lines, где каждая строка является полным JSON-документом.

Ниже приведён полный пример простой SSH-сессии, в которой пользователь выполнил две команды (pwd и exit):

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