Tieto informácie sú určené vývojárom aplikácií, v ktorých je nedostatočne zabezpečené citlivé rozhranie JavaScriptu.
Čo sa deje
Prečítajte si oznámenie v službe Play Console.
Vyžaduje sa akcia
- Otvorte e‑mailové upozornenie služby Google Play odoslané na e‐mailovú adresu vlastníka účtu a pozrite si, ktorých aplikácií sa to týka a dokedy je potrebné problémy vyriešiť.
- Aktualizujte príslušné aplikácie a nedostatok zabezpečenia odstráňte.
- Odošlite aktualizované verzie dotyčných aplikácií.
Po opätovnom odoslaní bude vaša aplikácia znova skontrolovaná. Tento proces môže trvať niekoľko hodín. Ak aplikácia úspešne prejde kontrolou a bude zverejnená, nie je potrebné vykonať žiadne ďalšie kroky. Ak aplikácia neprejde kontrolou, jej nová verzia sa nezverejní a dostanete upozornenie e‑mailom.
Ďalšie podrobnosti
Podľa pravidiel proti zneužitiu zariadení a sietí nesmú aplikácie ani kód tretej strany (napríklad súpravy SDK) s JavaScriptom načítaným v čase spustenia umožňovať potenciálne porušenia pravidiel pre vývojárov služby Play.
V tomto článku máme na mysli akýkoľvek objekt, ktorý prvku WebView odhaľuje funkcie prostredníctvom metódy addJavascriptInterface
(ktorá je súčasťou prvku WebView) ako rozhranie JavaScriptu tak, ako je opísané v blogu na webe Google Developers s názvom Vytváranie webových aplikácií v prvku WebView.
Táto trieda nedostatku zabezpečenia potenciálne umožňuje porušovať pravidlá týkajúce sa údajov používateľov a malvéru v rozhraniach JavaScriptu. V závislosti od miery odhalenia daných rozhraní to môže viesť k nepredvídanému zhromažďovaniu údajov a ich vynášaniu, ako aj vzniku potenciálne škodlivých aplikácií bez vedomia vývojára príslušnej aplikácie alebo súpravy SDK.
Tento nedostatok zabezpečenia odporúčame vyriešiť jedným z nasledujúcich spôsobov:
1. možnosť: zaistite, aby prvky WebView nepridávali objekty do rozhrania JavaScriptu
Zaistite, aby neboli pridané žiadne objekty do rozhrania JavaScriptu ľubovoľného prvku WebView, ktorý načítava nedôveryhodný webový obsah. Môžete to spraviť dvoma spôsobmi:
- Zaistite, aby sa už nikdy nepridali žiadne objekty do rozhrania JavaScriptu prostredníctvom volaní parametra addJavascriptInterface.
-
Odstráňte objekty z rozhrania JavaScriptu v parametri shouldInterceptRequest prostredníctvom metódy removeJavascriptInterface ešte predtým, ako prvok WebView načíta nedôveryhodný obsah.
2. možnosť: zaistite, aby rozhranie JavaScriptu neodhaľovalo citlivé funkcie
Uistite sa, že do rozhraní JavaScriptu nie sú pridané žiadne citlivé funkcie (napríklad volania rozhrania API pre Android, ktoré vyžadujú povolenia). Patrí sem aj podmienka, že nesmú byť zhromažďované citlivé údaje, ako sú informácie o používateľoch a zariadeniach, ani odhaľované rozhrania API, napríklad prostredníctvom dostupnosti alebo správ SMS. Existuje niekoľko možností, ako môžete tento nedostatok zabezpečenia vyriešiť týmto spôsobom:
- Znova implementujte všetky funkcie vyžadujúce citlivé povolenia alebo tie, ktoré zhromažďujú citlivé údaje, aby k volaniu dochádzalo z kódu, ktorý je súčasťou aplikácie. Zaistite, aby boli používateľom viditeľne sprístupnené informácie.
- Odstráňte všetky funkcie, ktoré umožňujú prístup k citlivým prvkom alebo údajom používateľov v prípade, že sú dostupné v rozhraní.
3. možnosť: zaistite, aby prvok WebView neodhaľoval citlivé funkcie nedôveryhodnému obsahu
Ak WebView obsahuje citlivé funkcie, nemusí načítať ľubovoľný JavaScript z neznámych zdrojov a musí uvádzať viditeľné sprístupnenie informácií o používaných údajoch a funkciách. Zaistite, aby boli do prvku WebView načítané iba webové adresy s presne stanoveným rozsahom a obsah, ktorého vlastníkom je vývojár aplikácií.
Ak nedostatok zabezpečenia neodstránite, aplikácia bude posúdená ako potenciálne porušujúca pravidlá služby Play.
Radi vám pomôžeme
Ak ste si pravidlá prečítali a domnievate sa, že naše rozhodnutie by mohlo byť chybné, obráťte sa na náš tím podpory pre pravidlá. Odpovieme vám do dvoch pracovných dní.
Ďakujeme vám za neustálu podporu pri zlepšovaní služby Google Play, čím prispievate k tomu, že sa stáva pozitívnym prostredím pre vývojárov aj spotrebiteľov.