Va ser descoberta una nova tècnica per explotar vulnerabilitats en SQLite

versions vulnerables de SQLite

Els investigadors de Check Point van revelar recentment en la conferència DEF AMB els detalls d'una nova tècnica que va ser descoberta, Aquesta és utilitzada per a atacar aplicacions que fan servir versions vulnerables de SQLite.

el mètode Check Point considera els arxius de base de dades com una oportunitat per integrar escenaris d'explotació de vulnerabilitats en diversos subsistemes SQLite interns que no són accessibles per a l'explotació del front. Els investigadors també van preparar una tècnica per explotar vulnerabilitats amb codificació de gestes en forma d'una cadena de consultes SELECT en una base de dades SQLite, que permet evitar ASLR.

Sobre la vulnerabilitat

Els investigadors de Check Point detallen que per a un atac reeixit, un atacant ha de poder modificar els arxius de la base de dades de les aplicacions atacades, El que limita el mètode per atacar aplicacions que fan servir bases de dades SQLite com a format per al trànsit i les dades d'entrada.

Tot i que també donen a conèixer que el mètode també es pot utilitzar per expandir l'accés local ja obtingut, per exemple, per integrar portes posteriors ocultes en les aplicacions utilitzades, així com per evitar els investigadors de seguretat a l'analitzar malware.

L'operació després de la suplantació d'arxius es realitza en el moment en què l'aplicació executa la primera sol·licitud SELECT a la taula a la base de dades modificada.

Com a exemple, es va demostrar la capacitat d'executar codi en iOS a l'obrir la llibreta d'adreces, l'arxiu amb la base de dades «AddressBook.sqlitedb»Que es va modificar utilitzant el mètode proposat.

Per a l'atac, es va utilitzar una vulnerabilitat en la funció fts3_tokenizer (CVE-2019-8602, la capacitat de desreferenciar un punter), corregida en l'actualització SQLite 2.28 d'abril, juntament amb una altra vulnerabilitat en la implementació de funcions de finestra.

A més, demostra l'ús de l'mètode per a la confiscació a control remot d'un servidor backend d'atacants escrit en PHP, Que acumula contrasenyes interceptades durant l'operació de codi maliciós (les contrasenyes interceptades es van transferir en forma d'una base de dades SQLite).

El mètode d'atac es basa en l'ús de dues tècniques, Query Hijacking i Query Oriented Programming, que permeten explotar problemes arbitraris que condueixen a la corrupció de la memòria en el motor SQLite.

L'essència de l' «Segrest de consultes» està en reemplaçar el contingut de l'camp «sql» a la taula de servei sqlite_master que defineix l'estructura de la base de dades. El camp especificat conté el bloc DDL (Llenguatge de definició de dades) utilitzat per descriure l'estructura dels objectes a la base de dades.

La descripció s'estableix utilitzant la sintaxi SQL normal, és a dir. s'utilitza la construcció «CREATE TABLE", que es realitza durant la inicialització de la base de dades (durant la primera execució de la funció sqlite3LocateTable) per crear estructures internes associades amb la taula en la memòria.

La idea és que, com a resultat de reemplaçar «CREATE TABLE» i «CREATE VIEW, Sigui possible controlar qualsevol accés a la base de dades a través de la definició de la seva vista.

Per la seva banda fent servir la comanda «CREATE VIEW», s'adjunta una operació «SELECT» a la taula, que es dirà en lloc de «CREATE TABLE» i li permet a l'atacant poder accedir a diverses parts de l'intèrpret de SQLite.

A més d'això, la forma més fàcil d'atacar seria cridar a la funció «load_extension», que li permet a l'atacant poder carregar una biblioteca arbitrària amb l'extensió, però aquesta funció està inhabilitada per defecte.

Per realitzar un atac sota les condicions de la possibilitat de realitzar l'operació SELECCIONAR, es va proposar la tècnica de programació orientada a la consulta, que permet explotar problemes en SQLite que condueixen a la corrupció de la memòria.

La tècnica recorda a la Programació Orientada a la Tornada (ROP), però utilitza fragments de codi de màquina no existents, però s'insereix en un conjunt de subconsultes dins SELECT per construir una cadena de trucades ( «gadgets»).

font: https://threatpost.com/


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: AB Internet Networks 2008 SL
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.