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

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

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

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

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

Категории

Все категории
Loading categories
reditrap — Минимальный honeypot для Redis, обнаруживающий эксплойты RediShell (CVE-2025-49844). | Kitploit
Инструменты/GitHubGitHub/srozb/reditrap
Анализ уязвимостейСетевая безопасностьРазведка угрозОбнаружение ВторженийАнализ Журналов
GitHubsrozb/reditrap

reditrap

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

Репозиторий
811 месяцев назадЕщё не проверено

Популярное

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

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

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

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

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

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

    root@kitploit:~
    python3 reditrap.py --host 0.0.0.0 --port 6379 --log-file logs/redis-honeypot-events.ndjson
    

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

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

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

    root@kitploit:~
    docker build -t reditrap .
    # или: podman build -t reditrap .
    

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

    root@kitploit:~
    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):

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

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

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

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

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

    root@kitploit:~
    {
      "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 в зависимости от вашей среды.
    Скачать инструмент