Уязвимост в SQLite, позволяваща отдалено да атакува Chrome чрез WebSQL

Изследователи по сигурността от китайската компания Tencent представиха нов вариант на уязвимостта Magellan (CVE-2019-13734), което позволява изпълнение на код при обработка на SQL конструкции в СУБД SQLite по определен начин. Подобна уязвимост беше е публикувана от същите изследователи преди година. Уязвимостта е забележителна с това, че позволява отдалечена атака на браузера Chrome и контрол над системата на потребителя при отваряне на уеб страници, контролирани от злонамерени лица.

Атаката на Chrome/Chromium се извършва чрез API WebSQL, обработчикът на който е основан на кода на SQLite. Атаката на други приложения е възможна само ако те допускат предаване на SQL конструкции в SQLite, получени от външни източници, например използват SQLite като формат за обмен на данни. Firefox не е подложен на уязвимостта, тъй като компания Mozilla отказа да реализира WebSQL в полза от API IndexedDB.

Google отстрани проблема в изданието Chrome 79. В кодовата база на SQLite проблемът беше отстранен на 17 ноември, а в кодовата база на Chromium — на 21 ноември.
Проблемът присъства в кода движка за пълнотекстово търсене FTS3 и чрез манипулация с т. нар. теневи таблици (shadow tables, особен вид виртуални таблици с възможност за запис) може да доведе до повреда на индекса и преливане на паметта. Подробна информация за техниката за експлоатация ще бъде публикувана след 90 дни.

Новото издание на SQLite със поправката все още не е оформено (очаква се до 31 декември). Като обходен начин за защита, започвайки от SQLite 3.26.0, може да се използва режим SQLITE_DBCONFIG_DEFENSIVE, който забранява запис в теневи таблици и се препоръчва за активиране при обработка на външни SQL заявки в SQLite. В дистрибутивите уязвимостта в библиотеката SQLite все още остава неизправена в Debian, Ubuntu, RHEL, openSUSE/SUSE, Arch Linux, Fedora, FreeBSD. Chromium във всички дистрибуции вече е актуализиран и не е подложен на уязвимостта, но проблемът може да обхваща различни независими браузери и приложения, използващи движка Chromium, както и Android приложения на базата на Webview.

Допълнително в SQLite също са открити 4 по-малко опасни проблеми (CVE-2019-13750, CVE-2019-13751, CVE-2019-13752, CVE-2019-13753), които могат да доведат до изтичане на информация и заобикаляне на ограниченията (могат да се използват като допълнителни фактори за атака срещу Chrome). Посочените проблеми са отстранени в кода на SQLite на 13 декември. В обобщение, проблемите са позволили на изследователите да подготвят работен експлоит, който позволява изпълнението на код в контекста на процеса Chromium, отговарящ за визуализацията.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster