Janeiro de 2019
O PROBLEMA EM RESUMO
Um número excepcionalmente alto de tentativas de transações encontradas pela Secure-D no Brasil e na Malásia, provenientes de uma série de modelos de smartphone Alcatel Android Pixi 4 e A3 Max, levou nossos analistas a investigar mais a fundo a questão. Ao fazer isso, identificamos que um aplicativo de previsão do tempo pré-instalado, extrai uma grande quantidade de dados e tenta realizar essas transações. O pacote do aplicativo é com.tct.weather e vem da TCL Corporation, uma empresa de tecnologia chinesa conhecida por fabricar os dispositivos Alcatel e Blackberry. Ele coleta e transmite localizações geográficas, endereços de e-mail, IMEIs para um servidor na China e tem uma série de permissões invasivas de privacidade no dispositivo. O aplicativo também está disponível na loja Google Play e tem mais de 10 milhões de instalações com uma avaliação de usuários aparentemente saudável de 4,4. Se não tivesse sido bloqueado, ele teria conseguido inscrever usuários de telefones da Alcatel de países como Brasil, Malásia e Nigéria em serviços pagos pelos quais os usuários teriam sido cobrados mais de US$ 1,5 milhão. Esta atividade ocorreu em segundo plano e teve sucesso em não ser detectada pelos usuários, comportando-se como um típico aplicativo malicioso. Estas descobertas aprofundam ainda mais o caso anteriormente mencionado da Gmobi, uma fornecedora da tecnologia Firmware-Over-The-Air (FOTA) para fabricantes de celulares que também contavam com seu aplicativo pré-instalado para tentativas de fraudes publicitárias e uso indevido de informações pessoais.
O QUE NOS LEVOU A INVESTIGAR
Durante julho e agosto de 2018, através da Secure-D, observamos um número de tentativas de transação maior do que o habitual no Brasil e na Malásia, vindo de uma série de smartphones Alcatel Android (modelos Pixi 4 e A3 Max). Esses pedidos suspeitos foram iniciados pelo mesmo aplicativo chamado com.tct.weather, tanto no Brasil quanto na Malásia. Este aplicativo com.tct.weather Android é pré-instalado em muitos dispositivos Alcatel e também está disponível para download no Google Play. Ele fornece “previsões de tempo precisas e alertas meteorológicos locais em tempo hábil”. Ele foi baixado por mais de 10.000.000 de usuários do Google Play. Tentativas de transações similares provenientes de dispositivos da Alcatel e do aplicativo com.tct.weather também foram bloqueadas na Nigéria, África do Sul, Egito, Kuwait e Tunísia.
PREPARANDO A INVESTIGAÇÃO
Lançamos um processo de compra de múltiplos dispositivos de seus proprietários com o objetivo de investigá-los em nosso laboratório. Um deles – um Alcatel A3 Max – era de um usuário cujo dispositivo havia iniciado mais de 500 pedidos de transações durante os meses de julho e agosto. Vale a pena mencionar que a grande maioria dos usuários que contatamos verificou que seus telefones estavam “agindo de forma suspeita”. A maioria reclamou das cobranças indesejadas e do superaquecimento de seus dispositivos/baterias (do uso excessivo da CPU). Em nosso laboratório, os dispositivos foram colocados em um ambiente “sandbox” onde todo o tráfego da rede (dados transmitidos de e para o dispositivo) é registrado.
COMO O APLICATIVO TENTA EXECUTAR FRAUDES PUBLICITÁRIAS, CONSOME GIGABYTES DE DADOS E USA INDEVIDAMENTE INFORMAÇÕES PESSOAIS
Assim que o dispositivo foi colocado no “sandbox”, o aplicativo com.tct.weather para Android iniciou de imediato chamadas para servidores que não estão relacionados com a função principal do aplicativo. O aplicativo coleta e transfere as informações pessoais dos usuários para servidores na China. Com base em nossas observações, o aplicativo coleta a identificação do dispositivo do usuário, e-mail e localização, tendo obtido o consentimento através da seguinte maneira:
Assim que o dispositivo foi colocado no “sandbox”, o aplicativo também começou – em segundo plano (ou seja, não visível para o usuário) – a acessar páginas da web com anúncios digitais. Uma url específica (https://traffic.tc-clicks.com/?p=6070&media_type=adult&click_id=2-35d4a42fc0e859aac674a67115e9df9e_1536072819&pi=122 do domínio traffic.tc-clicks.com) estava sendo continuamente solicitada pelo aplicativo, que por sua vez estava sendo redirecionado para páginas da web com anúncios digitais. O aplicativo então clicava nos botões dessas páginas, sem interação do usuário nem consentimento.
Nos exemplos abaixo, ocorrem tentativas de fraude publicitária por meio do carregamento de uma página com anúncios e cliques gerados de forma programática acionando a compra de uma assinatura paga (o serviço JokerVR) e consequentes cobranças no tempo de conexão do usuário.
Página intermediária carregada para fins de fraude publicitária
Página de Serviço por Assinatura
Neste segundo exemplo, o aplicativo passou por múltiplas urls, eventualmente redirecionando-o para a página de compra de um serviço digital premium disponível para assinantes da TIM Brasil (uma das maiores operadoras do Brasil). O cartão SIM no dispositivo sob investigação foi um dos cartões da TIM no Brasil.
Em seguida, o aplicativo prosseguiu clicando no botão “Assinar” e tentou assinar o serviço premium para o usuário. O mesmo processo foi aplicado na página seguinte, onde o usuário deve confirmar sua compra, com o aplicativo clicando no botão “Confirmar Assinatura”.
Após as tentativas acima, o aplicativo entrou em contato com outro servidor via a url (http://bitetraff.com/l/20464460927af661659e?sub=7ba17456F6ed1U4ef9N813dNd75b29e5e8a6Y1536072859961&source=2382) que novamente levou a páginas web com anúncios digitais nas quais o aplicativo realizou cliques programados não acionados. Toda essa atividade, não intencional pelo usuário e não visível, consome quantidades importantes de dados. Registramos 50MB a 250MB de dados por dia sendo consumidos pela atividade indesejada no aplicativo.
ABUSO DE PERMISSÃO NO ANDROID
Ao investigar o aplicativo, extraímos o arquivo apk pré-instalado e analisamos as permissões a que ele tem acesso. Descobrimos que essas permissões são utilizadas de forma indevida e fornecem a um aplicativo de previsão do tempo aparentemente simples permissões excessivas capazes de coletar e transmitir informações pessoais do usuário.
Tabela de permissões
Permissão | O que ela autoriza |
android.permission.CHANGE_WIFI_STATE | Permite que o aplicativo mude o estado da rede wi-fi. |
android.permission.MOUNT_UNMOUNT_FILESYSTEMS | Permite a montagem e desmontagem de sistemas de arquivos (isto é, cartões SD externos). A documentação do Android diz que a permissão NÃO é destinada a aplicativos de terceiros. |
android.permission.READ_PHONE_STATE | Permite apenas acesso de leitura ao estado do telefone, incluindo o número de telefone do dispositivo, informações atuais da rede celular, o status de chamadas em andamento e uma lista de contas telefônicas registradas no dispositivo. A documentação diz que esta permissão é PERIGOSA. |
android.permission.WRITE_EXTERNAL_STORAGE / android.permission.READ_EXTERNAL_STORAGE | Permite a leitura e gravação do armazenamento externo. Isto é perigoso, visto que o aplicativo pode ter acesso a outros arquivos de usuário e/ou logs de aplicativos de terceiros, logs de sistema. Isto significa que o aplicativo pode ler/gravar tudo o que quiser e os dados lidos podem ser enviados para o servidor |
android.permission.ACCESS_KEYGUARD_SECURE_STORAGE | Esta permissão foi retirada do sistema operacional desde o 4.4 (KitKat). Mas para dispositivos que estão abaixo dessa versão, essa permissão é capaz de controlar uma falha no sistema operacional para bloquear e desbloquear o dispositivo a qualquer momento (como pressionar o botão de energia e desbloquear o telefone) |
android.permission.READ_LOGS | Permite que um aplicativo leia os arquivos de log do sistema de baixo nível.
Não é destinado ao uso por aplicativos de terceiros, pois as entradas de Log podem conter informações pessoais do usuário. |
android.permission.SET_DEBUG_APP | Configura um aplicativo para depuração.
Não se destina ao uso por aplicativos de terceiros. |
A versão pré-instalada e a que pode ser baixada na Google Play Store do aplicativo com.tct.weather exige diferentes permissões do Android (capacidades ou informações que o aplicativo pode acessar).
Versão para download do Google Play: requer permissões especiais e de alto risco como as que estão abaixo:
Acesso ‘READ_LOGS’: um acesso intrusivo, que de acordo com o guia de desenvolvedores Android do Google permite que um aplicativo “leia os arquivos de log de baixo nível do sistema” e “Não se destina ao uso por aplicativos de terceiros, porque as entradas de log podem conter as informações pessoais do usuário”.
SYSTEM_ALERT_WINDOW e WRITE_SETTINGS: de acordo com o guia do Google para desenvolvedores Android estas são permissões que poucos aplicativos devem usar, pois se destinam à interação em nível de sistema com o usuário e permitem que um aplicativo leia ou escreva as configurações do sistema do telefone. Se um aplicativo precisar de uma dessas permissões, deve declarar a permissão no manifesto (arquivo com todas as informações essenciais sobre o aplicativo ao sistema Android) e solicitar a autorização do usuário. O aplicativo com.tct.weather não solicita tal autorização aos usuários.
Versão pré-instalada: além das permissões requeridas pela versão para download, o aplicativo pré-instalado também requer acesso a:
BILLING que é usado para faturamento dentro do aplicativo, mesmo que esse não inclua nenhuma funcionalidade de faturamento no Google Play.
TAMANHO DO PROBLEMA
No Brasil, 2,5 milhões de tentativas de transações iniciadas a partir deste aplicativo Weather sobre dispositivos Alcatel foram bloqueadas em julho e agosto de 2018. Essas 2,5 milhões de tentativas de transações para adquirir um serviço digital originaram-se de 128.845 números de telefones celulares únicos.
Novamente no Brasil, mas para outro serviço digital premium, 428.291 tentativas de transações iniciadas a partir do aplicativo Weather em dispositivos Alcatel foram bloqueadas em julho e agosto de 2018.
No Kuwait, 78.940 tentativas de transações iniciadas a partir de dispositivos da Alcatel foram bloqueadas em julho e agosto de 2018. As tentativas de transações iniciadas por este aplicativo Weather em dispositivos Alcatel também foram bloqueadas na Nigéria, África do Sul, Egito e Tunísia. Quanto à versão para download do Weather-Simple weather forecast, disponível na Google Play Store, ela tem mais de 10 milhões de downloads em todo o mundo e alcançou o número 6 em downloads dentro de sua categoria na Play Store do Google no Reino Unido.
TCL E ALCATEL
A Alcatel é uma marca francesa de aparelhos celulares de propriedade da empresa finlandesa de eletrônicos de consumo Nokia e utilizada sob licença pela empresa chinesa de eletrônicos TCL Corporation. Na Google Play Store, o desenvolvedor da Weather-Simple weather forecast aparece como mie-alcatel.support, enquanto a TCL Communication Limited aparece quando se observa a política de privacidade do aplicativo. Entre os outros aplicativos Android oferecidos pela mie-alcatel.support na Google Play Store, podemos encontrar os 4 aplicativos abaixo, sendo um deles chamado TCL Weather.
Analisando mais de perto as classificações dos usuários para o Weather – Simple Weather, observa-se uma explosão de classificações de 5 estrelas, com uma ou duas palavras, que conseguem fazer diminuir as reclamações dos usuários que revelam os efeitos maliciosos que eles sofreram.
CONCLUSÃO E EFEITOS SOBRE OS USUÁRIOS
Os proprietários de smartphones Alcatel Android fabricados pela TCL em vários países estão sendo afetados pelo aplicativo pré-instalado com.tct.weather, resultando em:
- Coleta e transferência sistemáticas de suas informações pessoais para servidores na China.
- Esgotamento de sua quota de dados – uma questão importante nos mercados emergentes onde o custo dos dados é dramaticamente alto. No Brasil, por exemplo, 1GB custa o equivalente a 6h de trabalho de um salário mínimo (contra 30 min na Alemanha).
- Transações indesejadas e cobranças sobre seu tempo de conexão pré-pago, que é a única forma de os usuários poderem pagar por serviços digitais em mercados emergentes.
Dezenas de milhões de usuários de Smartphones Android em todo o mundo estão sendo afetados de forma semelhante ao baixar o Weather-Simple weather forecast da TCL na Play Store oficial do Google. Em geral, seja pré-instalado em dispositivos da Alcatel ou baixado da Play Store oficial do Google, o aplicativo com.tct.weather gerou mais de 27 milhões de tentativas de transações em 7 mercados. Se não tivessem sido bloqueadas pela Secure-D, estas transações teriam se traduzido em cobranças indesejadas de $1,5 milhões de dólares no tempo de conexão dos usuários.
Atualização (sábado, 5 de janeiro, 20:23h GMT):
Após a publicação dos resultados da pesquisa no Wall Street Journal, o aplicativo foi removido do Google Play.
—
A Secure-D combina algoritmos de machine learning com fluxos de trabalho de processamento de pagamento para proteger as operadoras e seus assinantes contra fraudes em transações online e o gasto da franquia de dados, causados por todos os tipos de malware e outras ameaças online. A plataforma processa mais de 480 milhões de solicitações de transações por mês, detectou e bloqueou mais de 42.000 aplicativos maliciosos e identificou mais de 19 milhões de smartphones infectados em todo o mundo.
Esta história foi publicada no Wall Street Journal, leia aqui.