Estas informações destinam-se aos programadores com uma app que contém a vulnerabilidade da interface de JavaScript confidencial.
O que está a acontecer
Consulte o aviso na Play Console.
Ação necessária
- Abra a notificação enviada por email do Google Play para o endereço de email do proprietário da conta para ver quais as apps afetadas e os prazos para resolver estes problemas.
- Atualize as apps afetadas e corrija a vulnerabilidade.
- Envie as versões atualizadas das aplicações afetadas.
Depois de voltar a enviar, a sua aplicação será revista novamente. Este processo pode demorar várias horas. Se a aplicação passar na revisão e for publicada com êxito, não será necessária qualquer ação adicional. Se a app falhar na revisão, a nova versão da mesma não é publicada e recebe uma notificação por email.
Detalhes adicionais
De acordo com a Política de Abuso na Rede e em Dispositivos, "As apps ou o código de terceiros (por exemplo, SDKs) com JavaScript carregado no tempo de execução não podem permitir potenciais violações das Políticas para Programadores do Google Play".
Neste artigo, referimo-nos a qualquer objeto que exponha a funcionalidade a um WebView através do método addJavascriptInterface
de um WebView como interface de JavaScript, conforme descrito no blogue do Google Developers, Criação de apps Web no WebView.
Esta classe de vulnerabilidade permite a ocorrência de potenciais violações de dados do utilizador e de software malicioso através de interfaces de JavaScript. Dependendo das interfaces expostas, tal pode originar a recolha e exfiltração inesperadas de dados, juntamente com aplicações potencialmente prejudiciais, sem o conhecimento do programador da app ou do SDK.
Recomendamos que impeça esta vulnerabilidade de uma das seguintes formas:
Opção 1: certifique-se de que os componentes WebView não adicionam Objetos à interface de JavaScript
Deve certificar-se de que não existem objetos adicionados à interface de JavaScript de qualquer WebView que carrega conteúdo Web não fidedigno. Pode fazê-lo de duas formas:
- Garanta que nunca são adicionados objetos à interface de JavaScript através de chamadas para addJavascriptInterface.
-
Remova os objetos da interface de JavaScript em shouldInterceptRequest através de removeJavascriptInterface antes de o componente WebView efetuar o carregamento de conteúdo não fidedigno.
Opção 2: certifique-se de que a funcionalidade confidencial não é exposta através de uma interface de JavaScript
Certifique-se de que nenhuma funcionalidade confidencial (como chamadas API do Android que requerem autorizações) é adicionada às interfaces de JavaScript. Tal inclui a não recolha de dados confidenciais, como informações sobre o utilizador/dispositivo, ou a não exposição de APIs, como acessibilidade ou mensagens SMS. Existem várias formas de resolver a vulnerabilidade:
- Implemente novamente qualquer funcionalidade que exija autorizações confidenciais ou recolha informações confidenciais de modo a ser chamada de código comprimido na aplicação. Certifique-se de que a divulgação proeminente é fornecida aos utilizadores.
- Remova todas as funções que dão acesso a funcionalidades confidenciais ou dados do utilizador acessíveis a partir da interface.
Opção 3: certifique-se de que o seu WebView não está a expor funcionalidades confidenciais a conteúdo não fidedigno
Se o seu WebView contém uma funcionalidade confidencial, este não pode carregar JavaScript arbitrário de fontes desconhecidas e tem de incluir uma divulgação destacada dos dados ou da funcionalidade em utilização. Certifique-se de que apenas os URLs de âmbito e o conteúdo pertencente ao programador da app são carregados para o WebView.
Se a vulnerabilidade não for solucionada, será considerado que a app inclui potenciais violações da Política do Google Play.
Estamos aqui para ajudar
Se verificou a política e considera que a nossa decisão está incorreta, contacte a nossa equipa do apoio técnico de políticas. Voltaremos a entrar em contacto consigo dentro de 2 dias úteis.
Agradecemos o seu apoio contínuo para ajudar a tornar o Google Play uma experiência positiva para programadores e consumidores.