Post on 27-Jun-2015
description
Análise de aplicativos e sistema Android
Rafael TosettoTecnólogo em Redes
MBA em Segurança da Informação
rafaeltosettosec@gmail.com
Agenda
• Introdução• Por dentro de um aplicativo• Análise estática e dinâmica• Drozer Framework– Exploração de vulnerabilidade– Demonstração da ferramenta
• Distros focadas em segurança mobile
Android em números• 1 a cada 10 apps é classificado como malicioso
(Total de 24,4 milhões de amostras)
Aumento de 600% nos últimos 12 meses
Maioria originada de Third pary markets
Jellybean é a versão mais afetada
Por dentro de um App
• Desenvolvido em Java (SDK) ou C/C++ (NDK)
• Um app é dividido em 4 partes– Activity: Interface visual, tela– Service: Processo background– Content Provider: Armazena informações em um
banco ou arquivo– Broadcast Receiver: Reação que o app deverá
tomar ao receber um intent do sistema/outro app
Por dentro de um App
• Desenvolvido em Java (SDK) ou C/C++ (NDK)
• Um app é dividido em 4 partes– Activity: Interface visual, tela– Service: Processo background– Content Provider: Armazena informações em um
banco ou arquivo– Broadcast Receiver: Reação que o app deverá
tomar ao receber um intent do sistema/outro app
Por dentro de um App
• Manifest.xml: Definido as permissões e filtros
• Cada app possui um UID e GID
• Executado de forma independente na Dalvik Virtual Machine
• Security Architecture: “No application, by default, has permission to perform any operations that would adversely impact other applications, the operating system, or the user”
Análise Estática
• Ferramentas utilizadas– APKTool: Descompacta .apk
– Dex2Jar: Conversão .dex para .class
– JD-GUI: Visualizador de .class
– SQLite Database Browser: Visualiza arquivos de banco de dados
Análise Dinâmica
• Sites de análise de APK– Virus Total: https://www.virustotal.com/– Andrubis: http://anubis.iseclab.org/– Copper Droid:
http://copperdroid.isg.rhul.ac.uk/copperdroid/
• Sistema próprio– Droid Box: https://code.google.com/p/droidbox/
Drozer Framework
• Client/Servidor
• Servidor no Android
• Client no Windows executado a partir da linha de comando
• App permissão de Acesso total a rede
Demonstração
• Foi utilizado apenas a rede Wifi
• Modo de depuração USB desativado
• Android v4.4.2 (KitKat) rooteado
• Firewall do Windows ativado
Etapas
1. Realizar a conexão do Drozer com o Android
2. Explorar os diretórios da memória interna
3. Fazer download de uma fotoLink: http://youtu.be/EhcDDmBPf-Y
Como se proteger
Como se proteger
• Atualizar S.O.• Não fazer root
Dados de 12/Ago/2014
Como se proteger
• Usar criptografia
• Preferência para aplicativos que criptografam seus arquivos armazenados na memória interna
• Instalar apps apenas do Google Play
• Usar antivírus
E com acesso 3G?
• Chips da Claro e Oi não responderam a requisição
• Drozer estabelece conexão no chip da TIM e faz a exploração via 3G (Testado no Gingerbread)
Distribuições Linux
• Santoku: https://santoku-linux.com/
• AMAT Linux: http://www.dunkelheit.com.br/amat/download.html
• MobiSec: http://mobisec.professionallyevil.com/
OBRIGADO!
E-mail: rafaeltosettosec@gmail.com
www.slideshare.net/rafaeltosetto