Тази информация е предназначена за програмисти, чиито приложения съдържат уязвимост от типа „поверителен JavaScript интерфейс“.
Какво се случва
Моля, вижте известието в Play Console.
Изисква се действие
- Отворете известието от Google Play, изпратено до имейл адреса на собственика на профила, за да видите кои приложения са засегнати, както и крайните срокове за отстраняване на тези проблеми.
- Актуализирайте засегнатите приложения и отстранете уязвимостта.
- Изпратете актуализираните версии на засегнатите приложения.
При повторно изпращане приложението ви ще бъде прегледано отново. Този процес може да отнеме няколко часа. Ако приложението премине проверката и бъде публикувано успешно, няма нужда да правите нищо повече. В противен случай новата му версия няма да бъде публикувана и ще получите известие по имейл.
Допълнителни подробности
Съгласно правилата относно злоупотребата с устройства и мрежи „приложения или код на трети страни (напр. SDK) със зареждане на JavaScript по време на изпълнение не трябва да допускат потенциални нарушения на правилата за програмисти в Google Play“.
Тази статия се отнася за всеки обект, който предоставя свободен достъп до функционалност в WebView чрез метода addJavascriptInterface
на WebView като JavaScript интерфейс, както е описано в публикацията в блога на Google Developers за създаване на уеб приложения в WebView.
Този клас уязвимост дава възможност чрез JavaScript интерфейс да възникват потенциални нарушения, свързани с потребителски данни и злонамерен софтуер. В зависимост от интерфейсите, които са свободно достъпни, това може да доведе до неочаквано събиране и неупълномощено прехвърляне на данни, както и до потенциално опасни приложения без знанието на програмиста на приложението или на SDK.
Препоръчваме ви да предотвратите тази уязвимост по един от следните начини:
Опция 1: Предотвратете добавянето на обекти към JavaScript интерфейса на компонентите WebView
Предотвратете добавянето на обекти към JavaScript интерфейса на компонентите WebView, които зареждат ненадеждно уеб съдържание. Това може да стане по два начина:
- Направете така, че към JavaScript интерфейса да не се добавят обекти чрез извиквания на addJavascriptInterface.
-
Премахнете обектите от JavaScript интерфейса в shouldInterceptRequest чрез removeJavascriptInterface, преди WebView да зареди ненадеждно съдържание.
Опция 2: Проверете дали не е предоставен свободен достъп до поверителна функция чрез JavaScript интерфейс
Предотвратете добавянето на поверителни функции (като например извиквания на API на Android, които изискват разрешения) към JavaScript интерфейс. Това включва ограничаване на събирането на чувствителни данни, като например информация за потребителя/устройството, и на свободния достъп до API, например такива за достъпност или за SMS съобщения. Има няколко начина за отстраняване на уязвимостта:
- Внедрете отново всички функции, които изискват разрешения с поверителен характер или събират поверителна информация, така че те да се извикват от кода, пакетиран в приложението. Проверете дали съответната информация е разкрита на потребителите по ясен начин.
- Премахнете всички функции, които осигуряват достъп до поверителна функционалност или до потребителски данни, достъпни от интерфейса.
Опция 3: Проверете дали WebView не излага поверителна функция на опасност от ненадеждно съдържание
Ако WebView съдържа поверителна функция, не бива да зарежда произволен JavaScript код от неизвестни източници и трябва да разкрива по ясен начин информация за използваните данни и функционалности. Уверете се, че в WebView се зареждат само строго ограничени URL адреси и съдържание, които са собственост на програмиста на приложението.
В случай че уязвимостта не бъде отстранена, на приложението ще бъдат наложени мерки за потенциални нарушения на правилата на Google Play.
На ваше разположение сме
Ако сте прегледали правилата и смятате, че е възможно да сме взели грешно решение, свържете се с екипа ни за поддръжка във връзка с правилата. Ще се свържем с вас в рамките на два работни дни.
Благодарим ви, че продължавате да ни помагате да подобряваме практическата работа с Google Play както за програмистите, така и за потребителите.