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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-32746 — Доказательство концепции эксплуатации переполнения буфера до аутентификации в GNU InetUtils telnetd (CVE-2026-32746), включая лабораторную среду Docker и скрипт обнаружения для авторизованного тестирования безопасности. | Kitploit
Инструменты/GitHubGitHub/chosenonehacks/cve-2026-32746
Анализ уязвимостейЭксплуатацияСетевая безопасностьТестирование на ПроникновениеОбучение и ОбразованиеЭксплуатация Бинарных Файлов
GitHubchosenonehacks/cve-2026-32746

CVE-2026-32746

Доказательство концепции эксплуатации переполнения буфера до аутентификации в GNU InetUtils telnetd (CVE-2026-32746), включая лабораторную среду Docker и скрипт обнаружения для авторизованного тестирования безопасности.

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

Популярное

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

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

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

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

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

CVE-2026-32746 — Переполнение буфера SLC в LINEMODE telnetd

Удалённое выполнение кода до аутентификации через переполнение буфера в обработчике SLC (Set Local Characters) режима LINEMODE в telnetd из GNU InetUtils.

CVSS 3.1: 9.8 (Critical) | CWE: CWE-120, CWE-787

Обзор

Функция add_slc() в telnetd/slc.c добавляет 3 байта на каждый триплет SLC в фиксированный буфер размером 108 байт (slcbuf) без проверки границ. Неаутентифицированный злоумышленник может отправить специально сформированную субопцию SLC с 40+ триплетами (коды функций > 18/NSLC) во время согласования опций — до появления приглашения входа — что приведёт к переполнению буфера, повреждению указателя slcptr в BSS и достижению произвольной записи, когда end_slc() использует повреждённый указатель.

Затронутые версии

  • GNU InetUtils telnetd до 2.7 включительно (все версии)
  • Любой telnetd, производный от кодовой базы BSD SLC
  • Патч ожидается до 1 апреля 2026 года
  • Что делает этот PoC

    • ✅ Вызывает переполнение буфера и аварийное завершение telnetd (подтверждает уязвимость)
    • ❌ НЕ выполняет код (без шеллкода/ROP-цепочки)

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

    root@kitploit:~
    # Сборка уязвимой лабораторной среды
    docker compose up -d
    
    # Обнаружение (без разрушения)
    python3 detect.py 127.0.0.1 2323
    
    # Эксплуатация (вызывает аварийное завершение telnetd — подтверждает уязвимость)
    python3 exploit.py 127.0.0.1 2323
    
    # Очистка
    docker compose down
    

    Лабораторная среда

    Docker-настройка запускает контейнер Debian с inetutils-telnetd 2.4 под xinetd, доступный на порту 2323. Полностью изолирована — ничего не затрагивает вашу хост-систему.

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

    1. Подключение к telnetd и завершение начального согласования опций
    2. Клиент активно отправляет WILL LINEMODE для запуска согласования LINEMODE
    3. Сервер отвечает DO LINEMODE и переходит к обработке субопции SLC
    4. Клиент отправляет специально сформированную субопцию SLC, содержащую 40–60 триплетов с кодами функций > 18 (NSLC)
    5. add_slc() помещает ответ «не поддерживается» (3 байта) для каждого триплета в буфер размером 104 байта
    6. После ~35 триплетов буфер переполняется, повреждая slcptr и соседние данные BSS
    7. end_slc() записывает маркер конца субопции через повреждённый slcptr (произвольная запись)
    8. telnetd аварийно завершается (или хуже, в зависимости от содержимого переполнения)

    Файлы

    ФайлОписание
    exploit.pyPoC-эксплойт для аварийного завершения/DoS
    DockerfileЛабораторная среда с уязвимым telnetd
    docker-compose.ymlНастройка лаборатории одной командой
    xinetd-telnet.confКонфигурация службы xinetd
    detect.pyСкрипт неразрушающего определения версии

    Разработка RCE-цепочки

    Чтобы выйти за рамки DoS, вам потребуется:

    1. Составить карту BSS-раскладки (смещение slcbuf → slcptr)
    2. Контролировать значение, которое end_slc() записывает через повреждённый slcptr
    3. Перезаписать запись GOT или указатель на функцию
    4. Перенаправить выполнение на шеллкод или ROP-цепочку

    Ссылки

    • Dream Advisory
    • Раскрытие GNU bug-inetutils
    • The Hacker News
    • NVD

    Отказ от ответственности

    Этот инструмент предоставляется только для авторизованного тестирования безопасности и образовательных целей. Не используйте его против систем, которыми вы не владеете или на тестирование которых у вас нет явного разрешения. Автор не несёт ответственности за неправомерное использование.

    Авторы

    • Уязвимость обнаружена: Adiel Sol, Arad Inbar, Erez Cohen, Nir Somech, Ben Grinberg, Daniel Lubel (DREAM Security Research Team)

    Лицензия

    MIT

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