Corrigindo três bugs sérios no Android sem atualizar a ROM

Aprenda a corrigir rapidamente três bugs graves de segurança do Android sem grandes malabarismos, necessitando somente de root, Xposed e um módulo especial.

Por Ricardo em 09/01/2014


O Android é um sistema seguro, apesar de a pauta por longo tempo em sites de tecnologia alegarem o contrário. De acordo com uma pesquisa realizada em abril de 2013 pela SourceFire, o iOS é mais inseguro do que o Android, Windows Phone e BlackBerry juntos, mesmo que o Robozinho ainda seja perseguido por notícias de malwares constantemente descobertos para a plataforma.

No entanto, se atentar pelo fato de a plataforma não ficar limitada somente a loja de aplicativos da Google, não é exagero dizer que realmente exista segurança no sistema. Afinal, das infecções relatadas, apenas um número muito pequeno de usuários são afetados e, muitas vezes, por aplicativos de fora da loja oficial.

Embora a Google Play tenha sido usada inúmeras vezes para a disseminação de malwares, isso parece ter sido reduzido a números ínfimos atualmente que são rapidamente corrigidos quando encontrados. A Google de fato está fazendo um bom trabalho no controle de pragas na própria casa, o que vem dificultando para os criminosos terem sucesso na implantação de malwares para a plataforma Android.

Mas apesar de todo o cuidado, alguma coisinha sempre escapa. Na verdade, três delas passaram despercebidas por pelo menos quatro anos sem que ninguém, tanto mocinhos quanto bandidos, se dessem conta dos bugs #8219321, #9695860 e #9950697. Essa família de problemas, cuja a primeira fora encontrada em fevereiro de 2013 por uma empresa de segurança chamada Bluebox provocou pânico, pois afetava 99% dos aparelhos vendidos até a época.

Logo em seguida, as outras duas foram relatadas, cujo funcionamento era semelhante. O Google rapidamente corrigiu os erros em sua plataforma, disponibilizando para os fabricantes a correção que, caberia a eles entregarem aos seus usuários. Infelizmente, devido a uma coisinha chamada “obsolescência programada”, muitos usuários ficaram expostos a esse problema (e podem estar até hoje).

De fato, para as empresas maximizarem os lucros elas investem em uma grande safra de aparelhos para atingir a diversas classes e perfis de consumidores. Isso é bom por um lado pois dá mais opções de gadgets para todo tipo de bolso. Mas é custoso para as empresas manterem uma linha de dezenas de produtos atualizadas. Ainda há o fator “venda”, que deve ser mantida há níveis “saudáveis” para os investidores.

Por isso, além do custo para atualizar uma linha de aparelhos mais antigas, as empresas constantemente estão atualizando seus produtos para forçar o consumidor a adquirir os mais recentes lançamentos. E por conta disso, quem tem um aparelho que foi vendido em 2011 ou 2012, provavelmente não recebeu as atualizações (e nem vai receber) para as brechas de segurança descobertas e estão desprotegidos.

Se esse for o seu caso, felizmente existem formas de se proteger. Você pode tentar encontrar uma custom ROM para o seu modelo de aparelho. Fizemos um guia para que você possa dar os primeiros passos (clique aqui), mas a instalação é um tanto complicada e exige alguma pesquisa e conhecimento técnico (ou pseudo-técnico). Como não existe um padrão universal para se efetuar a instalação de uma ROM customizada, essa forma é inviável para a maioria dos usuários.

Outra forma é adotar práticas pró-ativas com a sua segurança, evitando instalar aplicativos de lojas suspeitas ou, se for fazê-lo, comparar o tamanho do app anunciado na loja do Google com o tamanho do arquivo APK que baixou de algum lugar. Se os tamanhos forem iguais, é possível que não haja problema. Usar um antivírus atualizado e com escaneamento em tempo real no aparelho é também fundamental. A qualquer sinal de alerta, remova o programa imediatamente.

Mas manter o cuidado com a segura é premissa básica e dever de todo cidadão que carrega um smartphone. O que nos leva a terceira opção para se proteger das brechas de segurança encontradas: um método criado por um desenvolvedor do XDA (um hacker do bem) que permite modificar o comportamento do sistema ao lidar com pacotes compactados, ou seja, basicamente o problema referenciado pelos três bugs graves.

O que são esses bugs e o que pode acontecer com seu gadget?

Trocando em miúdos, o “master key” permite a um criminoso fazer é modificar a estrutura de um arquivo APK, o “executável” do aplicativo para Android, sem contudo mudar sua assinatura. Ou seja, é possível inserir códigos maliciosos em arquivos APK legítimos de programas famosos e o sistema vai instalá-los normalmente, sem acusar qualquer erro.

Todo app compilado via SDK possui uma assinatura que envolve também sua integridade e uma chave do desenvolvedor. Se qualquer um tentar modificar algum pacote de programa, vai invalidar a assinatura de integridade. Mas o master key permite contornar isso e assim, contaminar um aplicativo legítimo.

Contudo, cada aplicativo roda no sistema com permissões limitadas, acessando somente aquilo pelo qual foi programado. Assim, em teoria, isso limitaria o vetor de ataque e seu impacto na infra-estrutura do sistema. No entanto, um app poderia conter malwares para modificar a estrutura de outros arquivos APK residentes no Android que funcionam com maiores permissões, como aqueles inseridos pelas fabricantes, como launchers por exemplo.

Com um dos vários softwares existentes na plataforma com elevadas permissões contaminado, o criminoso poderia extrair todo o tipo de informação pessoal, aceder a funções do sistema como envio de SMS para números premium (tarifados), obter registros telefônicos e contatos, acesso irrestrito a fotos e contas cadastradas, capturar imagens com a câmera do aparelho etc. Basicamente seu smartphone se transformaria num zumbi controlado remotamente.

Abaixo, você confere um resumo sobre esses bugs.

Master Key (Bug 8219321)
Permite inserir códigos sem mudar a estrutura de uma arquivo APK. Está relacionada com   entradas duplicadas nos arquivos ZIP/APK (um arquivo APK utiliza a compactação ZIP para empacotamento);

Bug 9695860
Origina-se nas rotinas de análise de arquivos ZIP, ou seja, na forma de verificação da integridade dos arquivos APK empacotados;

Bug 9950697
Outra inconsistência na análise ZIP que poderiam ser abusado de uma forma muito semelhante ao anterior.

Como saber se meu gadget está seguro?

Se a versão do Android que está usando for inferior a 4.3, pode fazer uma verificação se possui alguma dessas três vulnerabilidades. Mesmo se estiver com a versão 4.3, ainda é possível ter uma ou duas dessas vulnerabilidades que não foram inseridas a tempo pelo fabricante (visto que os fabricantes recebem o Android para já trabalharem antecipadamente na adaptação do sistema).

Você conta com dois aplicativos que fazem um escaneamento das aplicações instaladas e também um teste para verificar se existe algum dos bugs mencionados.
O Bluebox Security Scanner é a ferramenta da empresa de segurança que relatou a primeira das falhas. Você pode baixá-lo aqui.

Já o SRT AppScanner faz basicamente a mesma coisa, mas possui uma ferramenta que tenta realizar uma correção no aplicativo modificado, apagando as entradas extras adicionadas. Você pode obtê-lo aqui.

No Bluebox Security Scanner, abra o aplicativo e verifique se existe alguma indicação em vermelho em Patch Status. Em caso afirmativo, significa que você possui as vulnerabilidades.

E com o sistema não vulnerável a indicação fica na cor verde.

No SRT AppScanner ele mostra as vulnerabilidades através de um ícone de um escudo vermelho.

E sem a vulnerabilidade, o ícone do escudo é verde.

Ambas as ferramentas identificam aplicações modificadas para explorar a brecha, oferecendo a opção de desinstalação. No caso do SRT AppScanner, ele ainda oferece uma tentativa de corrigir o programa.Img:

Como se proteger?

Preparando o ambiente

Aviso: A solução proposta nesse tutorial para a correção das brechas de segurança no Android possuem algumas exigências que você verá mais abaixo. Como o processo envolve seus próprios riscos, o Superdownloads não se responsabiliza por qualquer dano ou perda, material ou não, advindo do seguimento dese guia. Tenha em mente que você assume a responsabilidade integral ao seguir esse tutorial. Como sempre, faça backup de seus dados.

Como sempre, para executar qualquer mudança profunda no sistema, é necessário que o aparelho esteja rooteado. Se você não possui acesso de root no Android, pode usar algumas ferramentas que cobrem uma ampla gama de gadgets existentes. Tem programas para o Windows, como o Kingo Root, o OneClickRoot ou o Unlock Root. Também existe uma opção que funciona diretamente pelo Android, o Framaroot. Se não funcionar nenhuma solução proposta aqui, pesquise no fórum XDA por seu aparelho.

Com a exigência do Root satisfeita, você vai precisar do Xposed, um software que serve como uma “ponte” entre o framework do Android e o restante do sistema, permitindo realizar mudanças profundas sem alterar nenhum arquivo do SO, ou seja, tudo pode ser desfeito. Se quiser mais informações sobre esse programa para Android, leia um guia que preparamos sobre ele aqui

O Xposed está disponível para a versão 4.0 ou superior do Android (ICS e Jelly Bean), e também um port para o 2.3.x (Gingerbread). Versões anteriores do sistema não são compatíveis.

Xposed – Instalador para 4.0+ (ICS ou Jelly Bean)

Xposed – Instalador para 2.3.x (Gingerbread)

Instale o arquivo APK baixado do Xposed referente a versão do Android que está usando. Se você for impedido de instalar arquivos externos, vá nas Configurações>Segurança e marque a caixa de seleção “Fontes desconhecidas” e tente instalar novamente.

Após a instalação, toque em Framework para ir à tela de instalação, logo em seguida selecione o botão “Install/Update”. Permita o acesso root ao dispositivo. Após aplicado o patch com sucesso, basta reiniciar o gadget.

Corrigindo o perigoso bug “master key” em suas 3 variações

Com tudo o que é necessário pronto e funcionando no dispositivo, agora é o momento para se ver livre do temido bug “master key”. Tudo o que precisa fazer é instalar o Master Key multi-fix, disponível aqui.

Após instalar o aplicativo, abra o Xposed e toque em Modules (Módulos) e marque a caixa de seleção para ativar o Master Key multi-fix. Depois basta reiniciar o aparelho.

Para ter certeza de que está seguro, pode usar novamente o SRT AppScanner ou Bluebox Security Scanner. Ambos vão apontar como falhas corrigidas. Você está seguro.

Fonte(s)
Imagens
| URL curta

Comentários ()


}