Skip to content

MASWE-0001: Inserção de Dados Sensíveis em Logs

Content in BETA

This content is in beta and still under active development, so it is subject to change any time (e.g. structure, IDs, content, URLs, etc.).

Send Feedback

Visão Geral

Aplicativos móveis podem gravar dados sensíveis)) em logs. Isso pode incluir dados sensíveis do usuário, como senhas, números de cartão de crédito ou outras informações pessoalmente identificáveis (PII), bem como dados sensíveis do sistema, como chaves criptográficas, tokens de sessão ou outras informações confidenciais.

Registrar todas as informações possíveis é muito útil durante o desenvolvimento, especialmente para depurar o aplicativo. No entanto, em produção isso nem sempre é necessário e deve ser evitado sempre que possível para evitar qualquer exposição acidental a possíveis atacantes.

Modos de Introdução

Isso normalmente pode ocorrer de duas formas:

  • Logs do Sistema: O aplicativo pode registrar dados sensíveis no log do sistema, que pode ser acessado por outros aplicativos no dispositivo (em versões antigas do sistema operacional, dispositivos comprometidos ou se possuírem as permissões apropriadas).
  • Logs do Aplicativo: O aplicativo pode registrar dados sensíveis em um arquivo no diretório de dados do aplicativo, que pode ser acessado por qualquer aplicativo no dispositivo se o dispositivo estiver com root.

Impacto

Perda de confidencialidade: Dados sensíveis em logs correm o risco de serem expostos a um atacante com acesso ao dispositivo que possa extraí-los. Isso pode levar a outros ataques, como roubo de identidade ou comprometimento do backend do aplicativo.

Mitigações

A seguir estão recomendações genéricas para evitar o registro de dados sensíveis em versões de produção:

  • Evite completamente registrar dados sensíveis.
  • Ofusque dados sensíveis em logs.
  • Remova instruções de registro (logging) a menos que sejam consideradas necessárias para o aplicativo ou explicitamente identificadas como seguras, por exemplo, como resultado de uma auditoria de segurança.
  • Use níveis de log adequadamente para garantir que dados sensíveis não sejam registrados em versões de produção.
  • Use flags para desativar o registro em versões de produção.

A documentação de cada plataforma fornece melhores práticas para desenvolvedores:

Tests

MASTG-TEST-0231: Referências a APIs de Logging MASTG-TEST-0203: Uso em Tempo de Execução de Logging APIs