Um grupo de pesquisadores resolver investigar o que um aplicativo que não pede permissão alguma consegue acessar no Android. Há algumas coisas interessantes.

A primeira coisa que consegue acessar é o cartão de memória. Tudo que está nele! Isso é perfeitamente explicável: na esmagadora maioria dos aparelhos o cartão de memória fica disponível para acesso externo, como se fosse um pendrive. Isso implica em que ele não pode ter métodos de proteção mais sofisticados pois se assim fosse não seria possível acessá-lo sem ser no aparelho! Simples assim.

Claro que isso pode ser um problema se algum aplicativo guardar alguma informação mais sensível por ali.

O aplicativo também tem acesso ao diretório /proc. Esse diretório é um local especial pois é utilizado para que aplicações conversem com o kernel e peguem informações dele. Ali é possível ler, por exemplo, o Android ID (um número gerado pelo sistema e que normalmente fica o mesmo pelo resto da vida, a menos que um reset no aparelho seja feito) ou a versão do sistema rodando. Não são informações críticas ou preocupantes, até porque isso é inerente ao Linux (vamos lembrar que o Android é, no fundo, um Linux).

E a última informação que o app pode ver é a lista de aplicativos instalados no aparelho. Isso é feito acessando o arquivo /data/system/packages.list. Essa informação por si não oferece risco algum. O problema começa quando algum aplicativo instalado possuir alguma falha de segurança que possa ser explorada. Ao verificar que determinado programa está instalado, e sabendo da falha que ele possui, um app malicioso poderia provocar danos.

Nenhum desses acessos, por si, são danosos, pois mesmo que o aplicativo tenha acesso a algo mais restrito (digamos que ele pudesse ler o IMEI, coisa que não consegue), ele nada poderia fazer com a informação sem acesso à internet (e isso precisa de uma permissão específica). Mas se algum aplicativo com vulnerabilidade conhecida estiver instalado, aí a coisa pode complicar…

Não consigo imaginar um motivo para que o arquivo com os apps esteja disponível para todos, mas essa informação de qualquer forma está disponível para o desenvolvedor através da API do próprio Android.

É possível dizer que no fundo não há problema de segurança nesses dados que estão disponíveis, mas sim que os desenvolvedores precisam tomar cuidado ao fazer suas aplicações para não deixá-las com vulnerabilidades e também cuidado onde guardam informações sensíveis.

fonte: Leviathan Security Group, via Android Central