Skip to content

MASTG-TEST-0227: Depuração Ativada para WebViews

Visão Geral

A API WebView.setWebContentsDebuggingEnabled(true) habilita a depuração para todos os WebViews no aplicativo. Esse recurso pode ser útil durante o desenvolvimento, mas introduz riscos significativos de segurança se deixado ativado em produção. Quando habilitado, um PC conectado pode depurar, interceptar ou modificar a comunicação dentro de qualquer WebView no aplicativo. Consulte a "Documentação do Android" para mais detalhes.

Observe que essa flag funciona independentemente do atributo debuggable no AndroidManifest.xml (veja Flag Debuggable Habilitada no AndroidManifest). Mesmo que o app não esteja marcado como depurável, os WebViews ainda podem ser depurados ao chamar essa API.

Passos

  1. Execute Análise Estática no Android com uma ferramenta como semgrep no binário do aplicativo e procure por usos de:
    • WebView.setWebContentsDebuggingEnabled sendo definido como true.
    • ApplicationInfo.FLAG_DEBUGGABLE.

Observação

A saída deve listar:

  • Todos os locais onde WebView.setWebContentsDebuggingEnabled é chamado com true durante a execução.
  • Quaisquer referências a ApplicationInfo.FLAG_DEBUGGABLE.

Avaliação

O caso de teste falha se WebView.setWebContentsDebuggingEnabled(true) for chamado incondicionalmente ou em contextos onde a flag ApplicationInfo.FLAG_DEBUGGABLE não é verificada.

Mitigations