JavaScripti liidese delikaatse turvaaugu parandamine

See teave on mõeldud arendajatele, kelle rakendus sisaldab delikaatse JavaScripti liidese turvaauku.

Mis toimub?

Vaadake Play Console'is olevat teatist. 

Pärast Play Console'is kuvatud tähtaegade möödumist võidakse Google Playst eemaldada kõik rakendused, mis sisaldavad parandamata turvaauke.

Toiming on vajalik

  1. Avage konto omaniku meiliaadressile saadetud Google Play meiliteavitus, et vaadata, millised rakendused on mõjutatud ja mis on probleemide lahendamise tähtajad.
  2. Värskendage oma mõjutatud rakendusi ja parandage turvaauk.
  3. Esitage mõjutatud rakenduste värskendatud versioonid.

Pärast uuesti esitamist vaadatakse teie rakendus uuesti üle. See protsess võib võtta mitu tundi. Kui rakendus läbib ülevaatuse ja see avaldatakse, siis ei pea te rohkem midagi tegema. Kui rakendus ülevaatust ei läbi, siis rakenduse uut versiooni ei avaldata ja saate selle kohta meiliteatise.

Lisaüksikasjad

Seadmete ja võrkude väärkasutuse eeskirjade kohaselt: „Rakendused või kolmanda osapoole kood (nt SDK-d), mille puhul laaditakse käitusajal JavaScript, ei tohi võimaldada Play arendaja eeskirjade rikkumist.“ 

Selles artiklis nimetame igat objekti, mis avalikustab WebView'le funktsioone WebView' meetodi addJavascriptInterface kaudu, JavaScripti liideseks, nagu on kirjeldatud Google Developersi blogi artiklis Veebirakenduste loomine WebView's.

See turvaaugu tüüp võimaldab JavaScripti liideste kaudu kasutajaandmete ja pahavara rikkumisi teha. Olenevalt mõjutatud liidesest võib see tähendada ilma rakenduse või SDK arendaja teadmiseta ootamatut andmete kogumist ja varastamist ning potentsiaalselt kahjulikke rakendusi.

Soovitame turvaaugu parandada ühel järgmistest viisidest.

1. valik: veenduge, et WebViews ei lisaks JavaScripti liidesesse objekte

Veenduge, et JavaScripti liidesesse ei oleks lisatud ühtegi WebView' objekti, mis laadib ebaturvalist veebisisu. Seda saate teha kahel viisil.

  1. Veenduge, et mitte ühtegi objekti ei lisataks kunagi JavaScripti liidesesse atribuudi addJavascriptInterface kutsungi kaudu.
  2. Eemaldage enne seda, kui WebView ebausaldusväärse sisu laadib, objektid JavaScripti liidesest atribuudis shouldInterceptRequest käskluse removeJavascriptInterface kaudu.

2. valik: kontrollige, et delikaatne funktsioon poleks JavaScripti liidese kaudu ärakasutatav

Veenduge, et delikaatseid funktsioone (näiteks Androidi API-päringud, mis vajavad lube) ei lisataks JavaScripti liidestesse. See tähendab, et JavaScripti liideste kaudu ei tohi delikaatseid isikuandmeid (nt kasutaja/seadme teavet) koguda ega API-sid (nt juurdepääsetavuse või SMS-sõnumside API-dsid) avalikustada. Turvaaugu sel viisil lahendamiseks on mitu võimalust.

  1. Juurutage uuesti funktsioonid, mis vajavad delikaatseid lubasid või koguvad tundlikku teavet, selliselt, et neid kutsutakse rakendusse pakitud koodist. Veenduge, et kasutajatele oleks esitatud silmapaistev avalikustamine.
  2. Eemaldage liidese kaudu juurdepääsetavad funktsioonid, mis pakuvad juurdepääsu delikaatsetele funktsioonidele või kasutajaandmetele.

3. valik: veenduge, et teie WebView ei avalikustaks delikaatseid funktsioone ebausaldusväärsele sisule

Kui teie WebView sisaldab delikaatseid funktsioone, ei tohi see juhuslikku JavaScripti tundmatutest allikatest laadida ja peab silmapaistvalt avalikustama andmed või funktsioonid, mida kasutatakse. Veenduge, et WebView'sse laaditakse ainult rangelt määratud ulatusega URL-id ja rakenduse arendajale kuuluv sisu.

Kui turvaauku ei parandata, siis võetakse Play eeskirjade võimaliku rikkumise tõttu rakenduse suhtes meetmeid.

Oleme valmis teid aitama

Kui vaatasite eeskirjad üle ja arvate, et meie otsus võib olla ekslik, võtke ühendust meie eeskirjade tugitiimiga. Võtame teiega kahe tööpäeva jooksul ühendust.

Täname teid, et aitate meil jätkuvalt Google Play kasutuskogemust nii arendajate kui ka tarbijate jaoks meeldivaks muuta.

 

Kas see oli ab?

Kuidas saame seda täiustada?
Otsing
Kustuta otsing
Sule otsing
Peamenüü
6556556719254658648
true
Abikeskusest otsimine
true
true
true
true
true
92637
false
false