Luka w SQLite umożliwiająca zdalny atak na Chrome przez WebSQL

Badacze bezpieczeństwa z chińskiej firmy Tencent przedstawili nowa wersja podatności Magellan (CVE-2019-13734), umożliwiającej wykonanie kodu podczas przetwarzania w bazie danych SQLite w określony sposób sformatowanych konstrukcji SQL. Podobna podatność była opublikowane odkryta przez tych samych badaczy rok temu. Podatność jest szczególnie istotna, ponieważ umożliwia zdalny atak na przeglądarkę Chrome, co pozwala na przejęcie kontroli nad systemem użytkownika przy otwieraniu złośliwych stron internetowych.

Atak na Chrome/Chromium przeprowadzany jest przez API WebSQL, którego obsługa opiera się na kodzie SQLite. Atak na inne aplikacje jest możliwy jedynie, jeśli pozwalają na przesyłanie do SQLite konstrukcji SQL pochodzących z zewnątrz, np. wykorzystują SQLite jako format wymiany danych. Firefox nie jest podatny na te luki, ponieważ firma Mozilla zrezygnowali zrezygnowała z implementacji WebSQL w korzystając z API IndexedDB.

Google usunął problem w wydaniu Chrome 79. W bazie kodu SQLite problem został naprawiony naprawiono 17 listopada, a w bazie kodu Chromium — 21 listopada.
Problem występuje w kodzie silniku pełnotekstowego wyszukiwania FTS3 i poprzez manipulację z tabelami pomocniczymi (shadow tables, szczególny rodzaj tabel wirtualnych z możliwością zapisu) może prowadzić do uszkodzenia indeksu i przepełnienia bufora. Szczegółowe informacje na temat techniki ataku zostaną opublikowane za 90 dni.

Nowa wersja SQLite z poprawką na razie nie została wydana (oczekiwane 31 grudnia). Jako obejście zabezpieczające od wersji SQLite 3.26.0 można stosować tryb SQLITE_DBCONFIG_DEFENSIVE, który zabrania zapisu w tabelach pomocniczych i jest zalecany do włączenia przy przetwarzaniu zewnętrznych zapytań SQL w SQLite. W dystrybucjach podatność w bibliotece SQLite wciąż pozostaje nieusunięta w Debian, Ubuntu, RHEL, openSUSE/SUSE, Arch Linux, Fedora, FreeBSD. Chromium we wszystkich dystrybucjach już zostało zaktualizowane i nie jest podatne na tę lukę, ale problem może obejmować różne przeglądarki i aplikacje stron trzecich korzystające z silnika Chromium, a także aplikacje na Androida oparte na Webview.

Dodatkowo w SQLite wykryto также 4 mniej niebezpieczne problemy (CVE-2019-13750, CVE-2019-13751, CVE-2019-13752, CVE-2019-13753), które mogą prowadzić do wycieku informacji i omijania ograniczeń (mogą być używane jako czynniki towarzyszące ataku na Chrome). Wskazane problemy zostały rozwiązane w kodzie SQLite 13 grudnia. Łącznie problemy te pozwoliły badaczom przygotować działający exploit, umożliwiający wykonanie kodu w kontekście procesu Chromium odpowiedzialnego za renderowanie.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster