Corrigir uma vulnerabilidade de File-based XSS

Estas informações destinam-se aos programadores com aplicações vulneráveis ao File-based Cross-Site Scripting.

O que está a acontecer

Uma ou mais das suas aplicações contêm uma vulnerabilidade de File-based Cross-Site Scripting que tem de ser corrigida. Consulte o aviso na Play ConsoleApós os prazos apresentados na Play Console, as aplicações que contenham vulnerabilidades de segurança não corrigidas poderão ser removidas do Google Play.

Ação necessária​

  1. Inicie sessão na Play Console e navegue até à secção Alertas para ver quais as aplicações afetadas e os prazos para resolver estes problemas.
  2. Atualize as aplicações afetadas e corrija a vulnerabilidade.
  3. 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 obtiver a aprovação na revisão e for publicada com êxito, não será necessária qualquer ação adicional. Se a aplicação falhar na revisão, a nova versão da aplicação não será publicada e receberá uma notificação por email.

Detalhes adicionais

Os componentes WebViews com WebSettings que definem setAllowFileAccessFromFileURLs ou setAllowUniversalAccessFromFileURLs como verdadeiro não podem carregar conteúdos Web não fidedignos. Isto inclui conteúdos de domínios fidedignos carregados através de HTTP. As redes ou os conteúdos Web maliciosos podem injetar scripts para redirecionar o componente WebView para um ficheiro local malicioso e iniciar um ataque de Cross-Site Scripting para aceder a cookies ou ficheiros locais privados.

Deve impedir esta vulnerabilidade de uma das seguintes formas:

  1. Certifique-se de que os componentes WebViews não têm definições perigosas.
  2. Certifique-se de que os componentes WebViews não podem carregar ficheiros locais nem executar JavaScript.
  3. Certifique-se de que os componentes WebViews com definições perigosas não carregam conteúdos Web não fidedignos.

1. Garanta que os componentes WebViews não têm definições perigosas

Atualize a android:targetSdkVersion no seu Manifest para a 16, no mínimo, para utilizar predefinições seguras para o componente WebView. Caso contrário, chame setAllowFileAccessFromFileURLs(false) e setAllowUniversalAccessFromFileURLs(false) para se certificar de que os respetivos componentes WebViews estão seguros.

2. Garanta que os componentes WebViews não podem carregar ficheiros locais nem executar JavaScript

Chame setAllowFileAccess(false) para impedir que os componentes WebViews com definições perigosas carreguem ficheiros locais ou chame setJavaScriptEnabled(false) para impedir que os componentes WebViews com definições perigosas executem código JavaScript.

3. Garantir que os componentes WebViews com definições perigosas não carregam conteúdos Web não fidedignos

Se um componente WebView precisar de ativar estas definições perigosas, deve certificar-se de que este não carrega conteúdos Web não fidedignos. Isto inclui conteúdos Web carregados através de HTTP. Pode definir android:usesCleartextTraffic=false ou definir uma Network Security Config que não permita tráfego HTTP no seu Manifest. Em alternativa, pode certificar-se de que nenhum componente WebView com definições perigosas carregue URLs com esquemas HTTP.

De igual modo, deve certificar-se de que os componentes WebViews com definições perigosas não carregam URLs obtidos de fontes não fidedignas.

Estamos aqui para ajudar

Se tiver perguntas técnicas acerca da vulnerabilidade, pode publicar uma mensagem no Stack Overflow e utilizar a etiqueta "android-security". Para obter um esclarecimento sobre os passos que tem de efetuar para resolver este problema, pode contactar a nossa equipa de apoio técnico a programadores.

false
Menu principal
8795797857347656748
true
Pesquisar no Centro de ajuda
true
true
true
true
true
5016068
false
false