CVE-2025-50341: SQL-инъекция в Axelor
CVE ID: CVE-2025-50341
Автор отчета: Milad Seddigh
Продукт: Axelor
Затронутые версии: v5.2.4
Воздействие: SQL-инъекция → извлечение содержимого базы данных.
Краткое описание
В параметре “_domain” продукта Axelor была обнаружена Boolean-based уязвимость SQL-инъекции. Злоумышленник
может манипулировать логикой SQL-запроса и определять условия true/false, что потенциально может привести к раскрытию данных или дальнейшей эксплуатации.
Шаги воспроизведения
1- Войдите в свою учетную запись.
2- Перехватите запросы, содержащие параметр “_domain” в теле.
3- Вставьте Boolean-пейлоад (or 1=1) в параметр “domain”.
4- Вставьте Boolean-пейлоад (or 1=2) в параметр “domain”.
5- Обратите внимание на разницу в ответе сервера для 1=1 и 1=2.
6- Извлеките всё содержимое базы данных.
Меры предотвращения
- Используйте параметризованные запросы / подготовленные выражения
Убедитесь, что все SQL-запросы построены с использованием параметризованных выражений или подготовленных запросов. Такой подход отделяет SQL-логику от пользовательского ввода и предотвращает инъекции.
- Применяйте ORM-библиотеки (где это уместно)
Использование современных ORM-библиотек (например, Sequelize, Prisma, TypeORM) может помочь абстрагироваться от сырого SQL и обеспечить безопасные практики выполнения запросов.
- Проверяйте и очищайте входные данные
Обеспечьте строгую проверку входных данных в зависимости от контекста (например, числовой ID должен содержать только цифры).
Отклоняйте или очищайте входные данные, не соответствующие ожидаемому формату.
Используйте белые списки, а не черные списки для валидации.