Уязвимость в SQLite с максимальным баллом CVSS позволяет удалённо выполнить код

SQLite

В библиотеке SQLite версии 3.41 обнаружена ошибка управления памятью, которая открывает возможность удалённого выполнения произвольного кода. Проблема связана с логикой вычисления выражений и может быть проэксплуатирована через специально сформированный SQL-запрос. Разработчики SQLite из консорциума уже выпустили исправление.

Уязвимость CVE-2026-51302

Уязвимость получила идентификатор CVE-2026-51302 и оценку 10,0 балла по шкале CVSS v3.1 - максимально возможный уровень опасности. Причина - использование после освобождения (use-after-free) в двух функциях: "sqlite3ReleaseTempReg" и "exprComputeOperands". Первая из них некорректно освобождает временные регистры, а вторая продолжает обращаться к уже освобождённой памяти при вычислении операндов выражений.

Для эксплуатации злоумышленнику достаточно передать вредоносный SQL-запрос на сервер или приложение, использующее уязвимую версию библиотеки. Никаких дополнительных привилегий или взаимодействия с пользователем не требуется. В случае успешной атаки возможны три сценария: отказ в обслуживании (DoS), раскрытие чувствительной информации или выполнение произвольного кода с правами процесса, в который встроен SQLite.

Особую озабоченность вызывает широкая распространённость библиотеки. SQLite является одним из самых популярных встраиваемых движков баз данных. Она используется в миллионах устройств и приложений - от браузеров и мобильных ОС до промышленного ПО и корпоративных систем. Проблема затрагивает не только прямое использование SQLite через СУБД, но и косвенное - через пакеты с встроенными зависимостями, например, Node.js и Rust.

Механизм эксплуатации относится к типу CWE-825 (разыменование устаревшего указателя). Описание из бюллетеня Red Hat уточняет: если устаревший указатель используется в операции чтения, злоумышленник может контролировать считываемые данные; если в операции записи или вызове функции - возможен запуск произвольного кода. Технически атака не требует сложных векторов: достаточно одного запроса, не прошедшего проверку корректности выражения.

Разработчики SQLite Consortium уже выпустили обновлённую версию библиотеки, устраняющую проблему. Пользователям и администраторам систем, использующих SQLite напрямую или в составе дистрибутивов, рекомендуется обновить пакеты до актуальных сборок. Для пользователей Red Hat необходимо дождаться выхода официальных исправлений в каналах обновлений - на момент публикации бюллетеня для большинства затронутых продуктов патчи ещё не были выпущены, статус указан как "Affected" (подвержен) без готового errata.

Уязвимость CVE-2026-51302 примечательна не только максимальной оценкой, но и тем, что она демонстрирует сохраняющуюся проблему даже в зрелых и широко используемых компонентах. Логика работы с памятью в SQLite прошла многолетнюю проверку, однако ошибки в управлении временными ресурсами возвращаются вновь. Своевременное обновление встроенных библиотек остаётся одной из ключевых мер защиты для инфраструктуры любого масштаба - от встраиваемых устройств до облачных платформ.

Ссылки

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