Rješavanje ranjivosti umetanja SQL koda

Ove su informacije namijenjene razvojnim programerima aplikacija koje su izložene opasnosti od umetanja SQL koda.

Što se događa

Jedna ili više vaših aplikacija sadrže ranjivost SQL Injection koju je potrebno ukloniti. Pogledajte obavijest na Play konzoliAplikacije koje budu sadržavale neriješene sigurnosne ranjivosti nakon rokova prikazanih na vašoj Play konzoli mogu se ukloniti s Google Playa.

Potrebna je radnja​

  1. Prijavite se na Play konzolu i u odjeljku Upozorenja pogledajte koje su aplikacije podložne ranjivostima i koji su rokovi za rješavanje tih poteškoća.
  2. Ažurirajte zahvaćene aplikacije i uklonite ranjivosti.
  3. Pošaljite ažurirane verzije ranjivih aplikacija.

Nakon slanja ponovo ćemo pregledati vašu aplikaciju. Taj postupak može trajati nekoliko sati. Ako aplikacija prođe pregled i uspješno se objavi, ne morate više ništa poduzimati. Ako aplikacija ne prođe pregled, nova verzija aplikacije neće se objaviti i dobit ćete obavijest e-poštom.

Dodatne pojedinosti

Implementacije query, update i delete u izvezenim ContentProviderima mogu biti ranjive na SQL Injection ako dodaju neočišćene unose u SQL izjave. Zlonamjerna aplikacija može dostaviti posebno izrađene unose za pristup privatnim podacima ili oštećivanje sadržaja baze podataka. Problem možete riješiti na sljedeće načine:

Ako pogođeni ContentProvider ne mora biti izložen drugim aplikacija:

Ako pogođeni ContentProvider treba biti izložen drugim aplikacijama:

  • SQL Injection u SQLiteDatabase.query možete spriječiti tako da upotrijebite način strict uz projection map. Način "strict" pruža zaštitu od zlonamjernih uvjeta odabira, a projection map od zlonamjernih uvjeta projekcije. Morate upotrijebiti obje značajke kako bi vaši upiti bili sigurni.
  • SQL Injection u SQLiteDatabase.update i SQLiteDatabase.delete možete spriječiti tako da upotrijebite uvjet odabira koji koristi "?" kao zamjenjivi parametar i zaseban niz argumenata odabira. Uvjet odabira ne smije biti sastavljen od nepouzdanih unosa.

Obratite nam se ako vam zatreba pomoć

Ako imate tehničkih pitanja o toj ranjivosti, možete objaviti post na Stack Overflowu uz oznaku "android-security". Ako vam je potrebno pojašnjenje postupka za rješavanje te poteškoće, možete se obratiti našem timu za podršku razvojnim programerima.

false
Glavni izbornik
10727866101173073880
true
Pretraži Centar za pomoć
true
true
true
true
true
5016068
false
false