Odpravljanje ranljivosti za skriptno izvajanje v več aplikacijah

Te informacije so namenjene razvijalcem aplikacij, ki vsebujejo ranljivost za skriptno izvajanje v več aplikacijah.

Kaj se dogaja?

Ena ali več aplikacij vsebuje težavo s skriptnim izvajanjem v več aplikacijah, ki lahko zlonamernim aplikacijam omogoča krajo uporabnikovih piškotkov in drugih podatkov. Preberite obvestilo v Konzoli PlayMorebitne aplikacije, ki imajo po rokih, navedenih v Konzoli Play, še vedno varnostne ranljivosti, bodo morda odstranjene iz Googla Play.

Potrebno ukrepanje​

  1. Prijavite se v Konzolo Play in pojdite v razdelek Opozorila, kjer si lahko ogledate aplikacije, na katere se to nanaša, in roke, do katerih je treba odpraviti težave.
  2. Posodobite aplikacije, ki jih to zadeva, in odpravite ranljivost.
  3. Pošljite posodobljene različice aplikacij, ki jih to zadeva.

Dokler zahteva ne bo pregledana, bo imela vaša nova aplikacija ali posodobitev aplikacije stanje čakanje na objavo. Če aplikacija ni ustrezno posodobljena, bo opozorilo še naprej prikazano.

Dodatne informacije

Spletne poglede, ki omogočajo JavaScript in nalagajo podatke, prebrane iz zaupanja nevrednih namenov, lahko zlonamerne aplikacije pretentajo, da izvedejo kodo JavaScripta v kontekstu, ki ni varen. Priporočamo, da to ranljivost preprečite na enega od teh načinov:

1. možnost: Poskrbite, da ne izvozite dejavnosti, na katere vpliva ranljivost.

Poiščite dejavnosti s spletnimi pogledi, na katere vpliva ranljivost. Če tem dejavnostim ni treba uporabljati namenov Intent iz drugih aplikacij, lahko v manifestu za dejavnosti nastavite android:exported=false. S tem poskrbite, da zlonamerne aplikacije ne morejo pošiljati škodljivih vnosov nobenemu spletnim pogledu v teh dejavnostih.

2. možnost: Zaščitite spletne poglede v izvoženih dejavnostih.

Če želite nastaviti dejavnost s spletnim pogledom, na katerega vpliva ranljivost, priporočamo, da opravite te spremembe:

  1. Zaščitite klice metodama evaluateJavascript in loadUrl

    Poskrbite, da so parametri za metodo evaluateJavascript vedno zaupanja vredni. Klicanje metode evaluateJavascript z neprečiščenim vnosom iz zaupanja nevrednih namenov Intent napadalcem omogoča izvajanje škodljivih skriptov v spletnem pogledu, na katerega vpliva ranljivost. Prav tako klicanje metode loadUrl z neprečiščenim vnosom, ki vsebuje javascript: URL-ji sheme, napadalcem omogoča izvajanje škodljivih skriptov.

  2. Preprečite nalaganje datotek, ki niso varne

    Poskrbite, da spletni pogledi, na katere vpliva ranljivost, ne morejo naložiti podatkovne zbirke piškotkov. Spletne poglede, ki nalagajo neprečiščene URL-je »file://« iz zaupanja nevrednih namenov Intent, lahko zlonamerne aplikacije napadejo v dveh korakih. Prvi korak: Zlonamerna spletna stran lahko napiše oznake <script> v podatkovno zbirko piškotkov. Drugi korak: To spremenjeno datoteko podatkovne zbirke piškotkov je mogoče naložiti, če zlonamerna aplikacija pošlje namen Intent z URL-jem »file://«, ki kaže na podatkovno zbirko piškotkov spletnega pogleda, ali če zlonamerna spletna stran sama preusmeri vaš spletni pogled v URL datoteke. Zlonamerne oznake <script>, shranjene v podatkovni zbirki piškotkov, se bodo naložile in izvedle, to pa lahko ukrade podatke seje.

    Na tri načine lahko poskrbite, da spletni pogledi, na katere vpliva ranljivost, ne morejo naložiti podatkovne zbirke piškotkov spletnega pogleda.

    1. Onemogočite dostop do vseh datotek.
    2. Zagotovite, da spletni pogled naloži samo URL-je »file://«, in preverite, ali vsi naloženi URL-ji »file://« kažejo na varne datoteke. Upoštevajte, da lahko napadalec uporabi simbolično povezavo, da preslepi preverjanja na poti URL-ja. Če želite preprečiti tovrsten napad, pred nalaganjem preverite kanonično pot zaupanja nevrednih URL-jev »file://«, ne pa zgolj poti URL-jev.
    3. Če želite omogočiti URL-je »http://« in URL-je »file://«, uporabite preverjanje URL-ja »file://« z vrednostma shouldOverrideUrlLoading in shouldInterceptRequest pri možnosti WebViewClient. To zagotavlja, da so preverjeni vsi URL-ji, naloženi v spletni pogled – preverjanje ni omejeno na URL-je, ki so neposredno posredovani v klic funkcije loadUrl().

Tukaj smo, da vam pomagamo
Če imate tehnična vprašanja glede ranljivosti, jih objavite v skupnosti Stack Overflow in uporabite oznako »android-security«. Če potrebujete pojasnilo postopka, ki ga morate uporabiti, če želite odpraviti to težavo, se lahko obrnete na skupino za podporo razvijalcem.

false
Glavni meni
16189671175125957550
true
Iskanje v centru za pomoč
true
true
true
true
true
5016068
false
false