0Pricing
Ethical Hacking Academy · Aula

Análise dinâmica com Frida

Frida e hooking

Análise dinâmica com Frida é uma aula grátis de Ethical Hacking Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Ethical Hacking Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Ethical Hacking Academy inclui 4 aulas no total.

O que é o Frida?

Frida é um conjunto de ferramentas de instrumentação dinâmica. Ele injeta um mecanismo de JavaScript em um aplicativo em execução, permitindo inspecionar e modificar o comportamento em tempo de execução, sem recompilar.

É a ferramenta mais importante para testes de intrusão dinâmicos em dispositivos móveis.

Como o Frida funciona

O Frida executa um pequeno agente (o frida-server no dispositivo) e um cliente em sua máquina. Você escreve JavaScript que intercepta funções do processo-alvo.

Seus scripts podem ler argumentos, alterar valores de retorno e chamar métodos diretamente.

Configuração

Você envia o binário frida-server correspondente para um dispositivo com root (ou usa um APK corrigido com o frida-gadget em dispositivos sem root) e o executa.

As ferramentas de computador conectam-se então por USB.

adb push frida-server /data/local/tmp/
adb shell /data/local/tmp/frida-server &

Enumeração de aplicativos

Confirme a conexão listando os aplicativos instalados e os processos em execução com as ferramentas da CLI do Frida.

Isso verifica se o frida-server está acessível e fornece o nome do pacote a ser analisado.

frida-ps -Uai

O que é hooking?

Hooking significa interceptar uma função para que seu código seja executado antes, depois ou no lugar dela. Você pode registrar entradas, inspecionar saídas ou substituir completamente o comportamento.

No Android, você intercepta métodos Java (e funções nativas) dentro do aplicativo em execução.

Um hook Java simples

Dentro de Java.perform, você seleciona uma classe, escolhe um método e substitui sua implementation. Você pode registrar os argumentos e depois chamar o original.

Observe que o exemplo usa aspas simples, nunca crases, para permanecer seguro no JSON.

Java.perform(function(){
  var Login = Java.use('com.app.Login');
  Login.check.implementation = function(pw){
    console.log('pw=' + pw);
    return this.check(pw);
  };
});

Ignorando uma verificação

Para ignorar uma lógica, substitua um método para retornar o que quiser. Por exemplo, force uma verificação de root ou de licença a retornar false (não detectado) ou true (autorizado).

Isso neutraliza a segurança do lado do cliente que confia no dispositivo.

RootCheck.isRooted.implementation = function(){ return false; };

Ignorando a fixação de SSL

Os aplicativos usam fixação de SSL para rejeitar proxies. Scripts do Frida (como o popular Objection ou scripts universais para ignorar a fixação) interceptam a lógica de fixação para que você possa interceptar o tráfego HTTPS.

Isso é essencial para inspecionar as chamadas de API de um aplicativo por meio de um proxy.

frida -U -f com.app -l ssl-bypass.js

Objection

Objection é construído sobre o Frida e oferece comandos prontos: ignorar a fixação de SSL, despejar o armazenamento de chaves, listar atividades e ler o armazenamento do aplicativo, tudo sem escrever scripts.

Ele acelera tarefas comuns durante uma avaliação.

objection -g com.app explore

Inicialização versus anexação

O Frida pode anexar a um processo em execução ou iniciar o aplicativo do zero com seu script carregado desde o início (-f).

A inicialização é necessária quando você precisa interceptar código executado nos primeiros momentos, como verificações antiviolação durante a inicialização.

frida -U -f com.app -l hook.js --no-pause

Rastreamento com frida-trace

frida-trace gera e anexa automaticamente hooks para funções que correspondem a um padrão, registrando cada chamada. É excelente para descobrir quais métodos um aplicativo realmente usa.

Você pode direcioná-lo a métodos Java ou funções nativas e depois aprimorar os manipuladores gerados para inspecionar argumentos específicos.

frida-trace -U -f com.app -j '*Crypto*!*'

Verificação rápida

Recapitule a principal capacidade do Frida.

Recapitulação

Agora você entende a análise dinâmica com o Frida:

  • O Frida injeta um mecanismo de JS para fazer hook em funções de um aplicativo em execução.
  • Configure o frida-server, enumere com frida-ps e faça hook em métodos Java.
  • Substitua métodos para ignorar verificações e a fixação de SSL; o Objection automatiza isso.
  • Use o modo spawn para capturar código executado no início da inicialização.

A seguir, você examinará armazenamento e comunicações inseguros.

Perguntas Frequentes

A aula “Análise dinâmica com Frida” é grátis?

Sim — o texto completo de “Análise dinâmica com Frida” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Ethical Hacking Academy, atualize para CoddyKit PRO. O curso de Ethical Hacking Academy inclui 4 aulas no total.

O que vou aprender em “Análise dinâmica com Frida”?

Frida e hooking Você pratica Ethical Hacking Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Ethical Hacking Academy?

Nenhuma experiência prévia é necessária. Ethical Hacking Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Análise dinâmica com Frida”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Ethical Hacking Academy?

Sim. Cada aula de Ethical Hacking Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Estrutura de aplicações Android
  2. Análise estática de APKs
  3. Análise dinâmica com Frida
  4. Armazenamento e comunicações inseguras
← Voltar para Ethical Hacking Academy