Descoberta por pesquisadores, falha foi apresentada durante evento Black Hat na Europa. Google diz já trabalhar em solução para problema.
Uma nova técnica que permite aos hackers esconderem aplicativos Android maliciosos criptografados dentro de imagens pode ser usada para evitar a detecção por antivírus e possivelmente pelo próprio scanner de malware da loja Google Play.
O ataque foi desenvolvido por Axelle Apvrille, uma pesquisadora na Fortinet, e pelo engenheiro reverso Ange Albertini, que apresentaram sua prova de conceito durante a conferência de segurança Black Hat Europe, na quinta-feira, 16/10, em Amsterdam.
Segundo os criadores, o ataque é baseado em uma técnica inventada por Albertini chamada de AngeCryption que permite controlar tanto a entrada quanto a saída de uma operação de criptografia usando o padrão Advanced Encryption Standard (AES) ao aproveitar as propriedades de alguns formatos de arquivos que permitem que os documentos continuem válidos mesmo tendo dados imprestáveis ligados a eles.
A AngeCryption, que foi implementada como script Python disponível para download no Google Code, permite ao usuário escolher um arquivo de entrada e saída e faz as mudanças necessárias para que quando o arquivo de entrada for criptografado com uma chave específica usando AED no modo CBC (cipher-block chaining), ele produza o arquivo de saída desejado.
Apvrille e Albertini levaram a ideia adiante e aplicaram-na em arquivos APK (Android application package). Eles criaram um aplicativo envoltório de prova de conceito que simplesmente exibe uma imagem PNG do personagem Anakin Skywalker, da franquia Star Wars. No entanto, o app também pode criptografar a imagem com uma chave particular para produzir um segundo arquivo APK que possa então instalar.
Na demonstração dos pesquisadores, o APK escondido dentro da imagem foi designado para exibir uma imagem do Darth Vader, mas um criminoso de verdade poderia usar um aplicativo malicioso em vez disso, para roubar mensagens de texto, fotos, contatos, e outros dados.
Durante a demonstração, o Android exibiu um pedido de permissão quando o aplicativo envoltório tentou instalar o arquivo APK criptografado, mas esse pedido pode ser burlado usando um método chamado DexClassLoader para que o usuário não precise ver nada, afirma Apvrille. A imagem não precisaria nem ser incluída no aplicativo envoltório e poderia ser baixada a partir de um servidor remoto depois da instalação.
Para o ataque funcionar, alguns dados precisam ser anexados ao final do aplicativo original, mas o formato APK, que é derivado do ZIP, não permite dados anexos depois de um marcador chamado End of Central Directory (EOCD), que sinaliza o fim do arquivo.
No entanto, os pesquisadores descobriram que adicionar um segundo EOCD depois dos dados anexos engana o Android a aceitar o arquivo como válido. Segundo Apvrille, isso não deveria acontecer e é resultado de um erro do APK do Android.
O ataque funciona no Android 4.4.2, versão mais recente do sistema do Google, mas a equipe de segurança da plataforma já foi notificada e trabalha em uma solução, informa a pesquisadora.