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

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

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

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

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

Категории

Все категории
Loading categories
gitea-CVE-2026-28699 — Лабораторная работа + анализ для CVE-2026-28699: Обход проверки областей OAuth2 в Gitea через базовую аутентификацию HTTP | Kitploit
Инструменты/GitHubGitHub/alardiians/gitea-cve-2026-28699
Аутентификация и авторизацияАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийCTFТестирование на ПроникновениеОбучение и ОбразованиеЛаборатории и Практика

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
GitHub
alardiians/gitea-cve-2026-28699

gitea-CVE-2026-28699

Лабораторная работа + анализ для CVE-2026-28699: Обход проверки областей OAuth2 в Gitea через базовую аутентификацию HTTP

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

CVE-2026-28699: Обход области OAuth2 в Gitea через HTTP Basic Auth

Токен доступа OAuth2 Gitea, ограниченный только read:user, может выполнять полные операции записи, если он отправлен как Authorization: Basic base64(<token>:x-oauth-basic), а не как Bearer-токен. Проверка области пропускается для любого токена, переданного через Basic auth.

Затронуты: <= 1.26.1. Исправлено в 1.26.2. Уведомление: GHSA-9r5x-wg6m-x2rc. CWE-863. Серьёзность: высокая.

Полное описание: WRITEUP.md

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

root@kitploit:~
pip install -r requirements.txt   # requests
python fetch_binaries.py          # pulls vulnerable 1.26.1 + patched 1.26.2 for your OS
python poc.py 1.26.1              # vulnerable: Basic-auth write succeeds (scope bypassed)
python poc.py 1.26.2              # patched: Basic-auth write blocked (403)

poc.py поднимает временную Gitea на SQLite в временной директории системы, выполняет поток кода авторизации OAuth2 для выпуска токена только с read:user, затем вызывает конечную точку записи как через Bearer, так и через Basic и выводит результат. Установите POC_DEBUG=1, чтобы увидеть шаги потока аутентификации.

Ожидаемый вывод

Vulnerable 1.26.1:

root@kitploit:~
[Bearer] PATCH /api/v1/user/settings -> HTTP 403   (blocked)
[Basic ] PATCH /api/v1/user/settings -> HTTP 200   (ALLOWED -- scope BYPASSED)
>>> VULNERABLE: read:user token performed a write via Basic auth.

Patched 1.26.2:

root@kitploit:~
[Bearer] PATCH /api/v1/user/settings -> HTTP 403   (blocked)
[Basic ] PATCH /api/v1/user/settings -> HTTP 403   (blocked)
>>> PATCHED: scope enforced on both Bearer and Basic.

Первопричина в одной таблице

Файл services/auth/basic.go устанавливал IsApiToken, но не ApiTokenScope для токенов OAuth2. Промежуточное ПО tokenRequiresScopes досрочно завершается, если область отсутствует, поэтому ничего не проверяется. Исправление в 1.26.2 добавляет недостающую строку store.GetData()["ApiTokenScope"] = accessTokenScope.

Файлы

Только для авторизованного использования

Для обучения и авторизованного тестирования безопасности: ваша собственная лаборатория, машины CTF и HTB, цели в рамках программы bug bounty. PoC запускает свою собственную одноразовую Gitea, поэтому направляйте её только на то, что вам принадлежит.

Скачать инструмент
Представление аутентификацииIsApiTokenApiTokenScopeобласть применена?
Токен OAuth2 через Bearertrueустановленда
Токен OAuth2 через Basictrueотсутствуетнет (отказ в открытом состоянии)
Персональный токен доступаtrueустановленда
ФайлНазначение
WRITEUP.mdАнализ первопричин, влияние, исправление, обнаружение
fetch_binaries.pyСкачивает бинарные файлы 1.26.1 / 1.26.2 для вашей ОС/архитектуры
poc.pyРазвёртывает Gitea, выпускает токен read:user, тестирует Bearer vs Basic
requirements.txtrequests