Odkrita je bila nova tehnika za izkoriščanje ranljivosti v SQLite

ranljive različice SQLite

P Raziskovalci Check Pointa so nedavno razkrili na konferenci DEF s podrobnostmi nove tehnike, ki je bila odkrita, to je uporabljeno strZa napad na programe, ki uporabljajo ranljive različice SQLite.

Metoda Check Point vidi datoteke zbirke podatkov kot priložnost za vključitev scenarijev izkoriščanja ranljivosti v različnih notranjih podsistemih SQLite, ki niso dostopni za izkoriščanje čela. Raziskovalci so razvili tudi tehniko izkoriščanja ranljivosti s kodiranjem exploit v obliki niza poizvedb SELECT v zbirki podatkov SQLite, ki omogoča izogibanje ASLR.

O ranljivosti

Raziskovalci Check Point to podrobno opisujejo za uspešen napad mora biti napadalec sposoben spremeniti datoteke zbirke podatkov napadljenih aplikacij, ki omejuje način napada na aplikacije, ki uporabljajo zbirke podatkov SQLite kot obliko za tranzitne in vhodne podatke.

Pa čeprav razkrivajo tudi, da se metoda lahko uporablja tudi za razširitev že pridobljenega lokalnega dostopa, na primer za vključitev skritih zadnjih vrat v uporabljene programe, pa tudi za izogibanje raziskovalcem varnosti pri analizi zlonamerne programske opreme.

Operacija po lažnem predstavljanju datoteke se izvede takrat, ko aplikacija izvede prvo zahtevo SELECT za tabelo v spremenjeni zbirki podatkov.

Kot primer je bila dokazana zmožnost izvajanja kode na iOS-u pri odpiranju imenika, datoteka z bazo podatkov «Naslovnik.sqlitedb»Ki je bil spremenjen s predlagano metodo.

Za napad, v funkciji fts3_tokenizer je bila uporabljena ranljivost (CVE-2019-8602, zmožnost preusmerjanja kazalca), popravljeno v posodobitvi April SQLite 2.28, skupaj z drugo ranljivostjo pri izvajanju okenskih funkcij.

Poleg tega, prikazuje uporabo metode za daljinsko zaseg zalednega strežnika od napadalcev, napisanih v PHP, ki kopiči prestrežena gesla med delovanjem zlonamerne kode (prestrežena gesla so bila prenesena v obliki baze podatkov SQLite).

Metoda napada temelji na uporabi dveh tehnik, ugrabitve poizvedb in programiranja, usmerjenega na poizvedbe, ki omogočata izkoriščanje poljubnih težav, ki vodijo do poškodb pomnilnika v motorju SQLite.

Bistvo "ugrabitve poizvedbe" je zamenjava vsebine polja "sql" v servisni tabeli sqlite_master, ki določa strukturo baze podatkov. Navedeno polje vsebuje blok DDL (jezik definicije podatkov), ki se uporablja za opis strukture objektov v bazi podatkov.

Opis je nastavljen z uporabo običajne sintakse SQL, tj. Konstrukt "USTVARI TABELO", ki se izvede med inicializacijo baze podatkov (med prvo izvedbo funkcije sqlite3LocateTable), se uporablja za ustvarjanje notranjih struktur, povezanih s tabelo v pomnilniku.

Ideja je, da kot rezultat zamenjave "Ustvari mizo" in "Ustvari pogled, je možen nadzor kakršnega koli dostopa do baze podatkov z opredelitvijo njenega pogleda.

Po drugi strani pa je z uporabo ukaza "CREATE VIEW" tabeli pritrjena operacija "SELECT", ki bo poklicana namesto "CREATE TABLE" in omogoča napadalcu dostop do različnih delov tolmača SQLite.

Poleg tega bi bilo najlažje napasti klic funkcije "load_extension", ki napadalcu omogoča, da lahko s pripono naloži poljubno knjižnico, vendar je ta funkcija privzeto onemogočena.

Za izvedbo napada v pogojih zmožnosti izvedbe operacije SELECT je bila predlagana tehnika poizvedbeno usmerjenega programiranja, ki omogoča izkoriščanje težav v SQLite, ki vodijo do okvare pomnilnika.

Tehnika spominja na povratno usmerjeno programiranje (ROP), vendar uporablja neobstoječe delčke strojne kode, vendar je vstavljena v nabor podpoizvedb znotraj SELECT za izgradnjo verige klicev ("pripomočki").

vir: https://threatpost.com/


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Odgovoren za podatke: AB Internet Networks 2008 SL
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.