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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-25126 — Доказательство концепции для CVE-2026-25126, демонстрирующее манипуляцию подсчётом голосов в PolarLearn через некорректную проверку параметра направления голосования на этапе выполнения, с деталями исправления. | Kitploit
Инструменты/GitHubGitHub/jvr2022/cve-2026-25126
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование безопасности APIТестирование на Проникновение
GitHubjvr2022/cve-2026-25126

CVE-2026-25126

Доказательство концепции для CVE-2026-25126, демонстрирующее манипуляцию подсчётом голосов в PolarLearn через некорректную проверку параметра направления голосования на этапе выполнения, с деталями исправления.

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

Популярное

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

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

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

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

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

CVE-2026-25126: Манипуляция подсчётом голосов в PolarLearn

Исследование: Joshua van Rijswijk

Описание

PoC для CVE-2026-25126 — уязвимости бизнес-логики высокой степени серьёзности в API голосования форума PolarLearn.

Конечная точка POST /api/v1/forum/vote не обеспечивает строгую проверку поля direction во время выполнения.

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

Это позволяет манипулировать подсчётом голосов путём создания так называемых призрачных голосов против.

Уязвимость

API доверяет телу JSON без проверки:

const body: VoteRequestBody = await request.json()
const { postId, direction } = body

const result = await VoteServer(postId, direction)

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

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

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

Требования

  • Node.js 18+ (встроенная поддержка fetch)
  • Действительный файл cookie аутентифицированной сессии
  • Доступ к ID поста форума для тестирования

Шаги

  1. Клонируйте репозиторий
git clone https://github.com/<your-username>/CVE-2026-25126-PoC.git
cd CVE-2026-25126-PoC
  1. Настройте PoC

Откройте poc.js и замените:

  • POST_ID на ID целевого поста форума
  • COOKIE на ваш файл cookie аутентифицированной сессии
  1. Запустите PoC
node poc.js
  1. Наблюдайте результат

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

Исправление

Исправлено путём внедрения строгой проверки во время выполнения:

  • Принимать только: "up", "down" или null
  • Отклонять все остальные значения с HTTP 400
  • Укрепить VoteServer против неожиданных сохранённых голосов

Ссылки

  • NVD - CVE-2026-25126
  • GitHub Advisory - GHSA-ghpx-5w2p-p3qp
Скачать инструмент