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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/srozb/reditrap
Анализ уязвимостейСетевая безопасностьРазведка угрозОбнаружение ВторженийАнализ Журналов
GitHubsrozb/reditrap

reditrap

Минимальный honeypot для Redis, обнаруживающий эксплойты RediShell (CVE-2025-49844).

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

Популярное

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

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

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

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

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

RediTrap Honeypot

RediTrap — это минималистичный Redis-хоніпот, предназначенный для раннего обнаружения попыток эксплуатации CVE-2025-49844 («RediShell»), критической уязвимости удаленного выполнения кода, описанной исследователями Wiz Research. Эксплойт злоупотребляет 13-летней ошибкой use-after-free во встроенном движке Lua: Redis сохранял имя Lua-чанка, не закрепляя его в стеке, что позволяло циклу сборки мусора освободить строку, пока C-код всё ещё использовал указатель. Патч Redis d5728cb исправляет проблему, помещая имя чанка в стек Lua (через setsvalue2s/incr_top) перед парсингом и извлекая его после, предотвращая устаревший указатель и закрывая примитив RCE.

Поскольку опубликованный путь эксплуатации relies на отправке вредоносных Lua-скриптов через EVAL, EVALSHA или SCRIPT LOAD, хоніпот фокусируется на выявлении этих взаимодействий, притворяясь незапатченным узлом Redis.

Что он делает

  • Прослушивает TCP-порт Redis (по умолчанию 6379) и поддерживает небольшое подмножество RESP, чтобы базовые проверки проходили успешно (PING, INFO, AUTH и т.д.).
  • Записывает каждую команду в JSON-lines файл журнала с дополнительным контекстом для активности Lua-скриптов (SHA-1 дайджест, длина, эвристики токенов, превью).
  • Помечает команды, ориентированные на скрипты, как подозрительные и возвращает безопасные ответы об ошибках, чтобы недоверенные полезные нагрузки никогда не выполнялись.
  • Имитирует поведение старых версий Redis (например, отклонение HELLO), чтобы побудить атакующих продолжить свой рабочий процесс.

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

python3 reditrap.py --host 0.0.0.0 --port 6379 --log-file logs/redis-honeypot-events.ndjson

Используйте --verbose для дополнительного вывода в stdout во время разработки.

Использование контейнера

Соберите компактный образ (база Alpine):

docker build -t reditrap .
# или: podman build -t reditrap .

Запустите его с открытым портом Redis и смонтированным каталогом журналов на хосте:

mkdir -p honeypot-logs
docker run -d --name reditrap \
  -p 6379:6379 \
  -v "$(pwd)/honeypot-logs:/data" \
  reditrap

Контейнер по умолчанию использует --host 0.0.0.0 --port 6379 --log-file /data/redis-honeypot-events.ndjson, поэтому журналы попадают на хост в honeypot-logs/redis-honeypot-events.ndjson.

Podman работает аналогично (при необходимости добавьте флаг SELinux):

podman run -d --name reditrap \
  -p 6379:6379 \
  -v "$(pwd)/honeypot-logs:/data:Z" \
  reditrap

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

docker run --rm -p 6379:6379 reditrap --redis-version 7.0.15 --log-file /data/attempts.ndjson

Просмотр событий

Каждый входящий запрос становится записью NDJSON. Подозрительная активность Lua включает эвристики для упрощения триажа. Например:

{
  "action": "lua_eval",
  "args": ["return debug.getregistry()", "0"],
  "command": "EVAL",
  "info": {
    "arg_count": 2,
    "heuristics": {
      "length": 26,
      "matched_tokens": ["debug."],
      "preview": "return debug.getregistry()"
    },
    "key_count": "0",
    "script_hash": "763200efa15885c9fa970d45cc2b11711c739c13"
  },
  "remote": {"host": "203.0.113.42", "port": 58231},
  "timestamp": "2025-10-07T15:04:12.123456+00:00"
}

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

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

  • Хоніпот никогда не выполняет полученные Lua-скрипты; он немедленно возвращает строку ошибки после записи попытки в журнал.
  • Крупные bulk-строки ограничены 8 МиБ, а массивы — 128 элементами, чтобы снизить нагрузку на память со стороны вредоносных клиентов.
  • Запускайте хоніпот в изолированном сетевом сегменте и перенаправляйте трафик порта Redis на него с помощью правил межсетевого экрана, зеркалирования портов или NAT в зависимости от вашей среды.
Скачать инструмент