Skip to content

MASTG-TEST-0073: Teste de UIPasteboard

Deprecated Test

This test is deprecated and should not be used anymore. Reason: New version available in MASTG V2

Please check the following MASTG v2 tests that cover this v1 test:

Visão Geral

Análise Estática

A área de transferência geral do sistema pode ser obtida usando generalPasteboard. Pesquise no código-fonte ou no binário compilado por este método. O uso da área de transferência geral do sistema deve ser evitado ao lidar com dados sensíveis.

Áreas de transferência personalizadas podem ser criadas com pasteboardWithName:create: ou pasteboardWithUniqueName. Verifique se as áreas de transferência personalizadas estão configuradas como persistentes, pois isso foi descontinuado a partir do iOS 10. Um contêiner compartilhado deve ser usado em seu lugar.

Além disso, os seguintes aspectos podem ser inspecionados:

  • Verifique se as áreas de transferência estão sendo removidas com removePasteboardWithName:, o que invalida uma área de transferência do aplicativo, liberando todos os recursos usados por ela (sem efeito para a área de transferência geral).
  • Verifique se há áreas de transferência excluídas; deve haver uma chamada para setItems:options: com a opção UIPasteboardOptionLocalOnly.
  • Verifique se há áreas de transferência com expiração; deve haver uma chamada para setItems:options: com a opção UIPasteboardOptionExpirationDate.
  • Verifique se o aplicativo limpa os itens da área de transferência ao ser enviado para segundo plano ou ao ser encerrado. Isso é feito por alguns aplicativos de gerenciamento de senhas que tentam restringir a exposição de dados sensíveis.

Análise Dinâmica

Detectar Uso da Área de Transferência

Faça hook ou trace das seguintes chamadas:

  • generalPasteboard para a área de transferência geral do sistema.
  • pasteboardWithName:create: e pasteboardWithUniqueName para áreas de transferência personalizadas.

Detectar Uso de Área de Transferência Persistente

Faça hook ou trace do método descontinuado setPersistent: e verifique se ele está sendo chamado.

Monitoramento e Inspeção de Itens da Área de Transferência

Para monitorar e inspecionar itens da área de transferência em tempo de execução, você pode seguir as instruções de Monitoramento da Pasteboard.