Kaitseuurijad Hiina ettevõttest Tencent uus versioon haavatavusest (), mis võimaldab koodi täitmist, kui eraldi vormindatud SQL-konstruktsioone töödeldakse SQLite andmebaasihalduris. Sarnane haavatavus ilmus sama uurijate poolt aastaga tagasi. Haavatavus on märkimisväärne, kuna see võimaldab kauglöökide tegemist Chrome brauserile ja seadme täielikku ülevõtmist pahatahtliku veebilehe avamise kaudu.
Chrome'i/Chromium'i rünnak toimub läbi WebSQL API, mille töötleja põhineb SQLite koodil. Muudes rakendustes on rünnak võimalik vaid juhul, kui need võimaldavad SQL-konstruktsioonide edastamist SQLite'sse väljastpoolt, näiteks kasutades SQLite't andmevahetuse formaadina. Firefox ei ole haavatav, kuna Mozilla ei ole rakendanud WebSQL IndexedDB API-le.
Google lahendas probleemi väljaandes . SQLite koodipõhjas oli probleem 17. novembril, samas kui Chromiumi koodipõhjas — .
Probleem esineb FTS3 täistekstiotsingu mootoris ja varjatud tabelitega (shadow tables), mis on eriline sort virtuaaltabelitest, millel on kirjutamisvõime, võib põhjustada indeksi kahjustamist ja puhverülevoolu. Tehnikate üksikasjad avaldatakse 90 päeva jooksul.
Uut SQLite väljaannet koos parandusega ei ole veel ( 31. detsembril). Kaitseks võib alates SQLite 3.26.0-st kasutada režiimi SQLITE_DBCONFIG_DEFENSIVE, mis tõkestab kirjutamise varjatud tabelitesse ja on soovitatav lubada väliste SQL-päringute töötlemisel SQLite's. Haavatavus SQLite teeki jagamistes jääb endiselt lahendamata , , , , , , . Chromium on kõikides jagamistes juba uuendatud ja ei ole haavatav, kuid probleem võib ulatuda erinevatesse kolmandate osapoolte brauseritesse ja rakendustesse, mis kasutavad Chromiumi mootorit, samuti Android-rakendustesse, mis põhinevad Webview-l.
Lisaks on SQLite-s tuvastatud veel 4 vähem ohtlikku probleemi (, , , ), mis võivad põhjustada teabe leket ja piirangutest möödumist (vaid kasutada kaasnevate teguritena Chrome'i rünnakuks). Need probleemid on lahendatud SQLite koodis 13. detsembril. Kokkuvõttes andsid probleemid uurijatele võimaluse koostada töötav eksploit, mis võimaldab koodi täitmist Chromiumi protsessi kontekstis, mis vastutab renderdamise eest.
Allikas: opennet.ru
