Skip to main content

Freeda Simple Hook

Description du challenge​

  • Nom du CTF : HeroCTF 2025
  • CatĂ©gorie : Android
  • DifficultĂ© : Facile
  • Date : DĂ©cembre 2025

On nous donne le challenge suivant :

Infos challenge

Analyse de l'APK​

Nous ouvrons le fichier APK avec jadx-gui pour analyser le code source. Nous tombons rapidement sur une classe CheckFlag :

Code CheckFlag

On peut lire qu'une autre méthode du paquet est appelée dans la classe Vault : get_flag.

Code Vault

On nous conseille évidemment de ne pas analyser statistiquement la méthode. On peut alors utiliser Frida pour hooker la méthode et récupérer le flag.

Exploitation avec Frida​

Pour utiliser Frida, il faut d'abord installer le serveur Frida sur l'appareil Android. Celui-ci va permettre la communication entre l'outil et l'application cible.

Serveur Frida

Nous écrivons un script Frida pour hooker la méthode get_flag et afficher le variable renvoyée :

Java.perform(function () {
var Vault = Java.use("com.heroctf.freeda1.utils.Vault");
Vault.get_flag.implementation = function () {
var flag = this.get_flag();
console.log("Flag: " + flag);
return flag;
};
});

Flag

FLAG

Hero{1_H0P3_YOU_D1DN'T_S7A7IC_4N4LYZ3D}