ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
Exploração da memória interna do Android utilizando Drozer Framework
1. Análise de aplicativos e sistema
Android
Rafael Tosetto
Tecnólogo em Redes
MBA em Segurança da
Informação
rafaeltosettosec@gmail.com
2. 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
3. Android em números
• 1 a cada 10 apps é classificado como malicioso
(Total de 24,4 milhões de amostras)
7. 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
8. 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
9. 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”
10. 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
11.
12. 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/
13. 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
14.
15.
16. 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 foto
Link: http://youtu.be/EhcDDmBPf-Y
18. Como se proteger
• Atualizar S.O.
• Não fazer root
Dados de
12/Ago/2014
19. 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
20. 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)
21. Distribuições Linux
• Santoku: https://santoku-linux.com/
• AMAT Linux:
http://www.dunkelheit.com.br/amat/downloa
d.html
• MobiSec:
http://mobisec.professionallyevil.com/
Da para ver as permissões com detalhes acessando pelo site do google play
Explicar que o usuário conectado no shell é o user do Drozer (já que cada App tem seu UID GID), logo não tem permissão para alterar pastas do sistema, apenas as que tem a permissão de read/write, como a memória interna.
Kitkat consegue até entrar na pasta sdcard, mas não lista nada. Idem para o extSdCard (cartao de memoria)