MASTG-TOOL-0029: objection para Android
O Objection oferece diversos recursos específicos para Android. Você pode encontrar a lista completa de funcionalidades na página do projeto, mas aqui estão algumas das mais interessantes:
- Reempacotar aplicações para incluir o gadget do Frida
- Desabilitar fixação de SSL para métodos populares
- Acessar o armazenamento da aplicação para baixar ou enviar arquivos
- Executar scripts personalizados do Frida
- Listar Activities, Services e Broadcast receivers
- Iniciar Activities
Se você possui um dispositivo root com o frida-server instalado, o Objection pode se conectar diretamente ao servidor do Frida em execução para fornecer todas as suas funcionalidades sem a necessidade de reempacotar a aplicação. No entanto, nem sempre é possível realizar root em um dispositivo Android ou o aplicativo pode conter controles avançados de RASP para detecção de root, portanto, injetar um frida-gadget pode ser a maneira mais fácil de contornar esses controles.
A capacidade de realizar análise dinâmica avançada em dispositivos não root é uma das funcionalidades que torna o Objection incrivelmente útil. Após seguir o processo de reempacotamento ( Repackaging and Re-Signing), você será capaz de executar todos os comandos mencionados anteriormente, o que facilita muito a análise rápida de uma aplicação ou o bypass de controles de segurança básicos.
Usando o Objection no Android¶
A inicialização do Objection depende se você fez o patch do APK ou se está usando um dispositivo root com o frida-server em execução. Para executar um APK modificado, o objection encontrará automaticamente qualquer dispositivo conectado e buscará por um gadget do Frida em escuta. No entanto, ao usar o frida-server, você precisa informar explicitamente ao frida-server qual aplicação deseja analisar.
# Connecting to a patched APK
objection explore
# Find the correct name using frida-ps
$ frida-ps -Ua | grep -i telegram
30268 Telegram org.telegram.messenger
# Connecting to the Telegram app through Frida-server
$ objection --gadget="org.telegram.messenger" explore
Uma vez que você está no REPL do Objection, pode executar qualquer um dos comandos disponíveis. Abaixo está uma visão geral de alguns dos mais úteis:
# Show the different storage locations belonging to the app
$ env
# Disable popular ssl pinning methods
$ android sslpinning disable
# List items in the keystore
$ android keystore list
# Try to circumvent root detection
$ android root disable
Mais informações sobre como usar o REPL do Objection podem ser encontradas na Wiki do Objection