Tekniska bloggspel, Android-app-apk, tips och tricks

Nya tekniker hittade för att utnyttja sårbarheter i SQLite

den där Check Point-forskare avslöjades nyligen i DEF-konferensen MED detaljerna från nya upptäckta tekniker, detta är använt sakAtt attackera applikationer som använder sårbara versioner av SQLite.

Metod Check Point betraktar databasfiler som en möjlighet att integrera scenarier för utnyttjande av sårbarhet i vissa interna SQLite-delsystem som inte är tillgängliga för exploatering av pannan. Forskarna förberedde också tekniker för att utnyttja sårbarheter genom att utnyttja kodningar i form av en serie SELECT-frågor i SQLite-databasen, vilket gör det möjligt att undvika ASLR.

Om sårbarhet

Kontrollera forskarens punkt för den informationen för en framgångsrik attack måste angriparen kunna ändra databasfilen för den applikation som attackeras, som begränsar metoder för att attackera applikationer som använder SQLite-databasen som ett format för överföring och inmatning av data.

Även om de meddelade också att den här metoden också kunde användas för att utöka den lokala åtkomst som redan hade erhållits, till exempel för att integrera dolda bakdörrar i den applikation som används samt att undvika säkerhetsforskare när de analyserar skadlig programvara.

Åtgärden efter filimersonifiering utförs vid den tidpunkt då applikationen utför den första SELECT-begäran till tabellen i den modifierade databasen.

Till exempel visas möjligheten att köra kod på iOS genom att öppna adressboken, fil med databas “AddressBook.sqlitedb“Som har modifierats med den föreslagna metoden.

För attacken, Sårbarheten används i fts3_tokenizer-funktionen (CVE-2019-8602, förmåga att ändra pekarreferenser) korrigerades i S 2.2ite-uppdateringen i april 2.2, tillsammans med andra sårbarheter i implementeringen av fönsterfunktioner.

För visar användningen av metoden för fjärrbeslag av angriparens backendserver skriven i PHP, som samlar fångade lösenord under skadliga kodoperationer (avlyssnade lösenord överförs i form av en SQLite-databas).

Attackmetoden är baserad på användning av två tekniker, Query Hijacking och Query Oriented Programming, som gör det möjligt att utnyttja godtyckliga problem som orsakar minneskador på SQLite-motorn.

Hela punkten med “Query Hijacking” ersätter innehållet i “sql” -fältet i tjänsttabellen sqlite_master som bestämmer databasstrukturen. Det specificerade fältet innehåller ett DDL-block (Data Definition Language) som används för att beskriva strukturen för objekt i databasen.

Beskrivningen ställs in med den normala SQL-syntaxen, dvs. konstruktionen “CREATE TABLE” används, som utförs under databasinitieringen (under den första exekveringen av sqlite3LocateTable-funktionen) för att skapa interna strukturer relaterade till tabeller i minnet.

Tanken är att som ett resultat av att “CREATE TABLE” och “CREATE VIEW” ersätts, är det möjligt att kontrollera åtkomst till databasen genom att definiera din vy.

Å andra sidan, med hjälp av “CREATE VIEW” -kommandot, är “SELECT” -funktionen kopplad till tabellen, som kommer att kallas istället för “CREATE TABLE” och gör det möjligt för angriparen att få åtkomst till vissa delar av SQLite-tolkaren.

Dessutom är det enklaste sättet att attackera att kalla “load_extension” -funktionen, som gör det möjligt för angriparen att ladda godtyckliga bibliotek med tillägg, men denna funktion är inaktiverad som standard.

För att utföra attacker under villkoren för möjligheten att utföra SELECT-operationer föreslås en fråga-orienterad programmeringsteknik som möjliggör utnyttjande av problem i SQLite som orsakar minneskada.

Den här tekniken påminner om returorienterad programmering (ROP), men använder maskinkodfragment som inte finns, men är integrerade i en uppsättning underkällor i SELECT för att bygga en samtalskedja (“gadget”).

Källa: https://threatpost.com/

Table of Contents