Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
house — Un kit d'analyse d'applications mobiles en runtime avec une interface Web, propulsé par Frida, écrit en Python. | Kitploit
Outils/GitHubGitHub/nccgroup/house
Sécurité AndroidAnalyse Dynamique (Sandboxing)Rétro-ingénierieTests d'IntrusionSécurité Mobile
GitHubnccgroup/house

house

Un kit d'analyse d'applications mobiles en runtime avec une interface Web, propulsé par Frida, écrit en Python.

Voir le dépôt
1.5k234il y a 5 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Site web
root@kitploit:~
                  ___ ___
                 /   |   \  ____  __ __  ______ ____
                /    ~    \/  _ \|  |  \/  ___// __ \
                \    Y    (  <_> )  |  /\___ \  ___/
                 \___|_  / \____/|____//____  >\___  >
                       \/      House        \/     \/
                
                    Outil d'analyse mobile dynamique
                    Contact: [email protected]

House : Un kit d'analyse d'applications mobiles en runtime avec une interface Web, propulsé par Frida, écrit en Python. Il est conçu pour aider à évaluer les applications mobiles en mettant en œuvre le hooking et l'interception dynamiques de fonctions, et vise à rendre l'écriture de scripts Frida aussi simple que possible.

TL;DR

root@kitploit:~
git clone https://github.com/nccgroup/house
cd house
pip3 install -r requirements.txt
pip3 install pipenv
pipenv --python=/usr/bin/python3 install
pipenv --python=/usr/bin/python3 shell
python3 app.py <PORT>

# or:
mkvirtualenv --python=/usr/local/bin/python3 house
workon house
pip install -r requirements.txt
python app.py <PORT>

# or: (only for Mac OS)
git clone https://github.com/nccgroup/house
cd house
pip3 install -r requirements.txt
pip3 install pipenv
pipenv --python=/usr/local/bin/python3 install
pipenv --python=/usr/local/bin/python3 shell
python3 app.py <PORT>

Par défaut, House se lie à http://127.0.0.1:8000.

Pour obtenir un aperçu des capacités de House, vous pouvez consulter le manuel d'utilisation pour plus de détails.

Actualités

  • Ajout du hooking dynamique dex/jar, House peut désormais hooker des fonctions dans des fichiers dex/jar chargés dynamiquement hook.gif
  • Ajout de l'option Mini Script pour les hooks hook.gif
  • ClassLoader Enum

Note : Assurez-vous de mettre à jour votre version de Frida vers >= 12.8.3 pour le hooking de fonctions /dex/jar

Exemple d'utilisation

Dans cette section, un petit exemple est fourni pour illustrer l'utilisation de base de House. Le cas de démonstration est réalisé sur une petite application Android de test : com.ha0k3.overloads.

Démarrage

  • Assurez-vous qu'un appareil Android est branché en USB et que le serveur Frida est en cours d'exécution sur l'appareil. Vérifiez que le serveur Frida a bien été lancé à l'aide de la commande suivante : frida-ps -U.

  • Lancez l'application House en exécutant app.py : python app.py <PORT>.

  • Ouvrez un navigateur et rendez-vous sur http://127.0.0.1:PORT.

  • Observez que les informations de l'appareil s'affichent sur la page ; sinon, cliquez sur le bouton Refresh ou redémarrez l'application et le serveur Frida. start.gif

Surveillance

  • Génération dynamique de scripts de hook à partir de modèles basés sur le fichier de configuration, surveille les opérations clés comme FILEIO, IPC, etc. monitor.png

  • C'est expérimental pour le moment. Si vous trouvez d'autres fonctions qui doivent être hookées, n'hésitez pas à me le faire savoir ou à soumettre une PR.

Préchargement et Sideload

  • House prend désormais en charge le sideload. Il supporte le chargement latéral de stetho pour le moment, ce qui facilite l'examen de l'interface utilisateur, du stockage, etc. sideload_stetho.png
  • C'est expérimental pour le moment, mais d'autres fonctionnalités comme SSLStrip seront ajoutées sous cet onglet.

Énumération

  • Énumérer toutes les classes chargées : enum_load.gif
  • Énumérer toutes les classes dans le fichier Dex : enum_dex.gif
  • Énumère toutes les méthodes d'une classe donnée : enum_method1.gif enum_method2.gif
  • Gestion des scripts d'historique : enum_history_script.gif

Traçage de fonctions multiples

  • Rendu des scripts et traçage de fonctions : hook.gif

  • Hooks pour les fonctions dans des fichiers dex/jar chargés dynamiquement : hook.gif

  • Option Mini Script : hook.gif

  • Gestion des scripts d'historique : hook_history_script.gif

Interception de fonctions

  • Via House, les chercheurs peuvent modifier dynamiquement les arguments passés aux fonctions cibles et les transmettre. int1.gif

  • Parfois, House ne peut pas analyser parfaitement les informations sur les arguments. Par exemple, un argument peut être d'un type spécial. Dans l'application d'exemple, elle implémente la fonction isLit qui prend un objet personnalisé comme argument. Pour faire face à ces situations, un simple « REPL » est fourni par House. Les chercheurs en sécurité peuvent taper dynamiquement un script Frida dans le REPL et modifier le comportement de la fonction. int2.gif

  • Plusieurs fonctions REPL sont fournies par House pour faciliter les tests :

    • inspectObject(obj) utilise java.lang.reflect pour inspecter les informations des champs d'un objet.
    • setRetval(ret) prend un paramètre et essaiera de le convertir en type de retour correct en utilisant le constructeur de la valeur de retour d'origine.
    • getStackTrace() affichera la trace de la pile.
    • D'autres fonctions REPL seront ajoutées à l'avenir.

    int3.gif

Note : Pour le hooking/l'interception des méthodes constructeur, saisissez $init comme nom de méthode.

FAQ

Prérequis :

Pour faire fonctionner House, vous aurez besoin :

  1. Un appareil Android rooté avec le serveur frida en cours d'exécution branché à votre ordinateur ; il est recommandé d'utiliser un seul appareil USB.
  2. La version locale de frida-python correspond à celle du serveur frida.

Impossible d'obtenir l'appareil ? Cela ne fonctionne pas ?

Veuillez également essayer de redémarrer à la fois le serveur frida et House, si cela ne fonctionne toujours pas, veuillez soumettre un problème.

Erreur de dépassement de délai ?

Se produit souvent lorsque plusieurs périphériques USB sont connectés, essayez de redémarrer l'application cible.

Erreur Frida ?

House a été testé avec la version 12.8.6 de Frida ; il peut y avoir des problèmes avec d'autres versions, assurez-vous également que la version de frida-python correspond à celle du serveur frida. Si cela ne fonctionne toujours pas, essayez d'exécuter manuellement les scripts Frida générés pour voir s'ils fonctionnent.

Remerciements

Un grand merci aux projets open-source suivants pour les inspirations de House :

  1. Frida, l'incroyable boîte à outils d'instrumentation qui rend tout cela possible.
  2. Objection, une inspiration et un guide pour la construction d'une partie des scripts de modèles Frida de House.
  3. Inspeckage, une inspiration pour la fonctionnalité Monitor de House.
  4. 0xdea/frida-scripts - un excellent arsenal de scripts Frida.

Contact

Si vous avez d'autres questions sur House, ou si vous souhaitez aider à l'étendre, n'hésitez pas à contacter :

@haoOnBeat

Ou envoyez un email à : Hao Ke

Télécharger l’outil