Os pesquisadores descobriram que muitos aplicativos Android na Google Play Store tinham maneiras de contornar o modelo de permissão do Android para coletar dados do usuário.
Apesar da percepção do usuário, o Android é bastante seguro como sistema operacional móvel. Geralmente aceitamos a premissa de que o elo mais fraco é o usuário; contanto que você observe o que instala e quais permissões concede, você estará protegido contra acesso e distribuição não autorizados de seus dados. Se você negar a um aplicativo Android acesso à sua localização, esse aplicativo não deverá ter como descobrir onde você está ou onde esteve. No entanto, alguns desenvolvedores de aplicativos descobriram maneiras de contornar o modelo de permissão do Android, segundo pesquisadores do Instituto Internacional de Ciência da Computação (ICSI).
De acordo com CNET, o estudo foi apresentado no mês passado em PrivacidadeCon depois de ser divulgado de forma responsável ao Google e à FTC em setembro passado. Apesar de artigo publicado no site da FTC
não lista os aplicativos exatos que a equipe sinalizou em sua análise (esses detalhes virão mais tarde no Conferência de segurança Usenix no próximo mês), fornece detalhes sobre o método de análise e como os aplicativos estavam contornando o modelo de permissão do Android. Pelo que vale, o Google diz que as mudanças de segurança e privacidade que o Google introduziu no Android Q fechará esses métodos de desvio, portanto, este artigo fornece informações valiosas sobre as justificativas do Google para algumas das alterações de plataforma feitas no Android 10. Vamos mergulhar.Como mais de 1.000 aplicativos contornaram o modelo de permissão do Android
Os pesquisadores distinguem entre duas técnicas diferentes de evasão de segurança: canais laterais e canais secretos. As técnicas de canal lateral envolvem obter acesso a informações específicas de uma forma que não é coberta pelo mecanismo de segurança; por exemplo, os aplicativos costumavam rastrear a localização de um dispositivo usando o endereço MAC até que o Android Pie introduziu a randomização do endereço MAC. As técnicas de canal secreto envolvem dois serviços cooperando para enviar dados de um serviço que tem acesso válido para outro que não tem; por exemplo, um aplicativo ao qual foi concedido acesso à localização pode compartilhar esses dados com um aplicativo ao qual não foi concedido acesso.
A equipe do ICSI analisou 88.113 dos aplicativos Android mais populares da Google Play Store dos EUA e descobriu mais de 1.000 aplicativos e bibliotecas de terceiros que empregam canais secundários e/ou canais secretos para contornar as medidas de segurança do Android para que possam acessar os dados de localização e identificadores persistentes dos usuários dispositivos. Seu conjunto de dados completo consistia em 252.864 APKs, já que a equipe vasculhava periodicamente a Play Store em busca de novas versões dos 88.113 aplicativos que planejavam analisar. Inicialmente, eles testaram o comportamento de cada aplicativo em um Google Nexus 5X executando o Android 6.0.1 Marshmallow, mas depois testaram novamente suas descobertas em um Google Pixel 2 executando o Android Pie para provar que suas descobertas ainda eram válidas no lançamento mais recente no momento da divulgação.
Com esse conjunto de dados, a equipe desenvolveu um método que utiliza análise dinâmica e estática para detectar a evasão do modelo de permissão do Android. Em outras palavras, a equipe estudou o comportamento do aplicativo auditando o comportamento do tempo de execução do aplicativo (análise dinâmica) ou verificando o código em busca de comportamento potencialmente malicioso (análise estática). análise.) É claro que os desenvolvedores de aplicativos maliciosos estão cientes dessas técnicas, usando ofuscação de código e carregamento dinâmico de código para dificultar a análise estática ou TLS interceptação para detectar quando o aplicativo está sendo executado em um ambiente virtualizado, então a equipe ICSI empregou uma combinação de análise estática e dinâmica (análise híbrida) em seu testando. Como resultado, a equipe descobriu que os seguintes dados estavam sendo copiados por aplicativos que não tinham as permissões necessárias:
- IMEI: como um IMEI é um identificador exclusivo e persistente, é útil que os serviços on-line sejam raspados para que possam rastrear dispositivos individuais. A equipe descobriu que Salmonadas e Baidu Os SDKs usavam um canal secreto para ler o IMEI. Aplicativos com acesso legítimo ao IMEI armazenavam arquivos ocultos no armazenamento externo contendo o IMEI do dispositivo para que outros aplicativos sem acesso legítimo pudessem ler o IMEI. Os aplicativos identificados que usam o SDK do Baidu dessa maneira incluem aplicativos de parques temáticos da Disney para Hong Kong e Xangai, Samsung Health e Samsung Browser.
- Endereço MAC da rede: O endereço MAC da rede também é um identificador exclusivo e normalmente é protegido pela permissão ACCESS_NETWORK_STATE. De acordo com os pesquisadores, os aplicativos usavam código nativo C++ para “invocar uma série de chamadas desprotegidas do sistema UNIX”. A equipe identificou 42 aplicativos usando o Unity SDK para abrir um soquete de rede e um ioctl para obter o endereço MAC, embora tenham notado que 748 dos 12.408 aplicativos continham o código em questão sem o ACCESS_NETWORK_STATE permissão.
- Endereço MAC do roteador: A permissão ACCESS_WIFI_STATE protege o BSSID, mas a leitura do cache ARP em /proc/net/arp permite que um aplicativo obtenha esses dados sem precisar de nenhuma permissão. O pesquisador identificou o OpenX SDK como usar esta técnica de canal lateral.
- Geolocalização: Os pesquisadores descobriram que o aplicativo Shutterfly estava acessando as tags de localização dos metadados EXIF das fotos. Tudo o que é necessário é a permissão READ_EXTERNAL_STORAGE.
No Android Q, o Google agora exige que os aplicativos tenham permissão READ_PRIVILEGED_PHONE_STATE para ler o IMEI. Dispositivos que executam Android Q agora transmitem endereços MAC aleatórios por padrão. Finalmente, o Android Q Armazenamento com escopo as mudanças mitigam a capacidade dos aplicativos de ler os dados de localização das fotos. Assim, essas preocupações foram abordadas na versão mais recente do Android, mas como todos sabemos, será demorar um pouco para que a atualização mais recente seja propagada.
Conclusão
No geral, este estudo fornece uma visão esclarecedora de como alguns aplicativos acessam dados que deveriam ser protegidos por permissões. A pesquisa analisou apenas um subconjunto do que o Google chama de permissões “perigosas”, principalmente ignorando permissões como Bluetooth, contatos e SMS. Para obter todos os detalhes deste relatório, recomendo a leitura do artigo submetido à FTC.