ИБ-специалист обнаружил опасную уязвимость в SQLite, которая на протяжении 22 лет оставалась незамеченной

Ср 26 Октябрь 2022 06:58

Брешь в защите SQLite обнаружил и подробно описал ИБ-специалист Адреас Келлас. Ей присвоены идентификатор CVE-2022-35737 и оценка 7.5 из 10 по шкале CVSS. Уязвимость связана с переполнением целочисленного значения и затрагивает SQLite версий с 1.0.12 по 3.39.1.

Как говорится в описании CVE-2022-35737, SQLite 1.0.12 - 3.39.x до 3.39.2 иногда допускает переполнение границ массива, если миллиарды байт используются в строковом аргументе для C API. Злоумышленник может воспользоваться этим и выполнить произвольный код на пораженной системе.

Келлас пишет, что уязвимость возможно эксплуатировать только на 64-битных системах. Кроме того, последствия использования CVE-2022-35737 меняются в зависимости от того, как компилируется программа:

Злоумышленник может выполнить произвольный код при компиляции библиотеки без стековых канареек;

Произвольный код может быть не выполнен при наличии стековых канареек;

Отказ в обслуживании происходит во всех случаях.

Эксперт пояснил, что для использования уязвимости злоумышленники должны передать в функцию printf большие строковые входные данные, причем строка формата должна содержать тип подстановки: %Q, %q или %w. По словам Келласа, CVE-2022-35737 связана с переполнением целочисленного значения, которое возникает, когда функция sqlite3_str_vappendf получает большую строку и когда тип подстановки равен %q, %Q или %w.

Исследователь также обнаружил, что если строка формата содержит символ “!” – специальный символ, включающий сканирование символов юникода, то можно добиться выполнения произвольного кода или провести DoS-атаку.

Подводя итоги, Келлас сказал, что 22 года назад эта уязвимость, могла даже не казаться уязвимостью, так как почти все системы были 32-битными.

Статья уведена с www.securitylab.ru.

NetLan.ru жив уже 16 лет 254 дня 13 часов 15 минут 14 секунд
СМК NetLan (Nettlesome Landloper) — некоммерческий интернет-ресурс.
Весь данный интернет-ресурс и всё созданное или размещённое на нём используется в личных целях.