Критическая уязвимость в драйвере ADOdb SQLite3 позволяет выполнять произвольные SQL-запросы

vulnerability

В популярной PHP-библиотеке для работы с базами данных ADOdb обнаружена опасная уязвимость, позволяющая злоумышленникам выполнять произвольные SQL-запросы. Проблема затрагивает драйвер SQLite3 и может привести к компрометации данных в приложениях, использующих эту систему управления базами данных.

Характеристики уязвимости

Уязвимости присвоен идентификатор CVE-2025-54119, а её уровень опасности оценён как критический (CVSS v3.1: 9.1). Атака возможна через сеть, не требует специальных привилегий или взаимодействия с пользователем и может затронуть не только уязвимый компонент, но и связанные с ним ресурсы.

Проблема связана с некорректной обработкой параметров в трёх методах драйвера SQLite3: metaColumns(), metaForeignKeys() и metaIndexes(). Если в качестве имени таблицы передаётся специально сформированная строка, злоумышленник может внедрить произвольный SQL-код, который будет выполнен на стороне базы данных.

Потенциальные последствия

Эксплуатация уязвимости может привести к утечке конфиденциальной информации, изменению данных или выполнению административных операций в базе. Наибольшему риску подвержены приложения, которые динамически генерируют запросы к метаданным на основе пользовательского ввода. Это может касаться систем управления контентом (CMS), инструментов администрирования баз данных и других решений, использующих интроспекцию SQLite3.

Исправление и рекомендации

Разработчики ADOdb устранили проблему в версии 5.22.10 (коммит 5b8bd52cdcffefb4ecded1b399c98cfa516afe03). Организациям, использующим библиотеку, рекомендуется немедленно обновиться до последней версии.

Если обновление невозможно, временным решением может стать строгая валидация данных, передаваемых в параметр $table уязвимых методов. Это предотвратит возможность внедрения SQL-кода, однако полной защиты такой подход не гарантирует.

Ответственное раскрытие

Уязвимость была обнаружена независимым исследователем безопасности Марко Наппи (Marco Nappi, @mrcnpp), который сообщил о ней через официальные каналы. Информация о проблеме была опубликована два дня назад одним из основных разработчиков ADOdb, dregad (Швейцария), известным также своей работой над проектом Mantis Bug Tracker.

Этот случай в очередной раз подчеркивает важность аудита безопасности в открытом ПО, особенно в библиотеках, используемых в критически важных веб-приложениях. Компаниям следует проверить свои проекты на наличие уязвимой версии ADOdb и принять меры для защиты от потенциальных атак.

Ссылки

Комментарии: 0