Уразлівасць у SQLite, якая дазваляе выдалена атакаваць Chrome праз WebSQL.

Даследчыкі бяспекі з кітайскай кампаніі Tencent прадставілі новы варыянт уразлівасці Magellan (CVE-2019-13734), якая дазваляе дамагчыся выкананні кода пры апрацоўцы ў СКБД SQLite вызначанай выявай аформленых SQL-канструкцый. Падобная ўразлівасць была апублікаваная тымі ж даследчыкамі год таму. Уразлівасць характэрна тым, што дазваляе выдалена атакаваць браўзэр Chrome і дамагчыся атрыманні кантролю над сістэмай карыстача пры адкрыцці падкантрольных зламысніку web-старонак.

Атака на Chrome/Chromium ажыццяўляецца праз API WebSQL, апрацоўшчык якога засноўваецца на кодзе SQLite. Атака на іншыя прыкладанні магчымая толькі калі яны дапушчаюць перадачу ў SQLite SQL-канструкцый, якія паступаюць звонку, напрыклад, выкарыстаюць SQLite у якасці фармату для абмену дадзенымі. Firefox уразлівасці не схільны, бо кампанія Mozilla адмовіліся ад рэалізацыі WebSQL у карысць API IndexedDB.

Google ухіліў праблему ў выпуску Хром 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, Мяккая фетравы капялюш, 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

Дадаць каментар