Tieto informácie sú určené pre vývojárov aplikácií, ktoré obsahujú chybu zabezpečenia spočívajúcu vo vložení rozhrania JavaScriptu.
Čo sa deje
Informácie nájdete v oznámení v službe Play Console. Po termínoch uvedených v službe Play Console z nej môžu byť odstránené všetky aplikácie s nevyriešenými chybami zabezpečenia.
Vyžaduje sa akcia
- Prihláste sa do služby Play Console, prejdite do časti Upozornenia a zistite termíny, dokedy treba problémy vyriešiť, a aplikácie, ktorých sa to týka.
- Aktualizujte príslušné aplikácie a chybu 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
V súvislosti s vložením rozhrania JavaScriptu obsahujú chybu zabezpečenia prvky WebView, ktoré vystavujú objekty na úrovni aplikácie kódu JavaScript prostredníctvom parametra addJavascriptInterface a načítajú nedôveryhodný webový obsah. Tento obsah môže spustiť ľubovoľnú metódu vystavených objektov anotovanú parametrom @JavascriptInterface, čo spôsobí únik údajov, ich porušenie alebo dokonca spustenie náhodného kódu.
Túto chybu 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 removeJavascriptInterface ešte predtým, ako prvok WebView načíta nedôveryhodný obsah.
2. možnosť: zaistite, aby prvky WebView nenačítavali nedôveryhodný webový obsah
Ak vaša aplikácia potrebuje vystaviť objekty rozhraniu JavaScriptu určitého prvku WebView, zaistite, aby daný prvok WebView nenačítaval webový obsah cez nešifrované pripojenie. Môžete nastaviť parameter android:usesCleartextTraffic na možnosť false v manifeste alebo nastaviť konfiguráciu zabezpečenia siete, ktorá zakáže prenos dát cez protokol HTTP. Okrem toho môžete zaistiť, aby prvky WebView, ktorých sa to týka, nenačítavali žiadne webové adresy so schémami HTTP prostredníctvom parametra loadUrl.
Zaistite, aby prvky WebView s rozhraniami JavaScriptu nenačítavali neskontrolované webové adresy získané z nedôveryhodných zdrojov (napr. webové adresy získané z nedôveryhodných intencií).
Radi vám pomôžeme
V prípade technických otázok týkajúcich sa tejto chyby zabezpečenia môžete uverejniť príspevok na webe Stack Overflow. Použite v ňom značku „android-security“. Ak potrebujete ďalšie vysvetlenie postupu na vyriešenie tohto problému, kontaktujte tím podpory pre vývojárov.