Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
house — Ein Toolkit zur Laufzeitanalyse mobiler Anwendungen mit einer Web-GUI, unterstützt von Frida, geschrieben in Python. | Kitploit
Tools/GitHubGitHub/nccgroup/house
Android-SicherheitDynamische Analyse (Sandboxing)Reverse EngineeringPenetrationstestsMobile Sicherheit
GitHubnccgroup/house

house

Ein Toolkit zur Laufzeitanalyse mobiler Anwendungen mit einer Web-GUI, unterstützt von Frida, geschrieben in Python.

Repository anzeigen
1.5k234vor 5 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

root@kitploit:~
             /   |   \  ____  __ __  ______ ____
            /    ~    \/  _ \|  |  \/  ___// __ \
            \    Y    (  <_> )  |  /\___ \  ___/
             \___|_  / \____/|____//____  >\___  >
                   \/      House        \/     \/
            
                Dynamisches Mobile-Analyse-Tool
                Kontakt: [email protected]

House: Ein Laufzeit-Mobilanwendungs-Analyse-Toolkit mit einer Web-GUI, angetrieben von Frida, geschrieben in Python. Es wurde entwickelt, um Mobilanwendungen durch die Implementierung von dynamischem Funktionen-Hooking und -Intercepting zu bewerten und soll das Schreiben von Frida-Skripten so einfach wie möglich machen.

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>

Standardmäßig bindet House an http://127.0.0.1:8000.

Um einen Überblick über die Fähigkeiten von House zu erhalten, besuchen Sie das Benutzerhandbuch für Details.

Neuigkeiten

  • Dynamisches dex/jar-Hooking hinzugefügt. House kann jetzt Funktionen in dynamisch geladenen dex/jar-Dateien hooken. hook.gif
  • Mini-Script-Option für Hooks hinzugefügt. hook.gif
  • ClassLoader-Aufzählung

Hinweis: Stellen Sie sicher, dass Sie Ihre Frida-Version auf >= 12.8.3 aktualisieren für das Hooken von /dex/jar-Funktionen.

Beispielverwendung

In diesem Abschnitt wird ein kleines Beispiel zur Veranschaulichung der grundlegenden Nutzung von House gegeben. Der Demofall wird gegen eine kleine Test-Android-Anwendung durchgeführt: com.ha0k3.overloads.

Start

  • Stellen Sie sicher, dass ein Android-Gerät über USB angeschlossen ist und der Frida-Server auf dem Gerät läuft. Überprüfen Sie, ob der Frida-Server erfolgreich gestartet wurde, mit dem folgenden Befehl: frida-ps -U.

  • Starten Sie die House-Anwendung durch Ausführen von app.py: python app.py <PORT>.

  • Öffnen Sie einen Browser und navigieren Sie zu http://127.0.0.1:PORT.

  • Beachten Sie, dass die Geräteinformationen auf der Seite angezeigt werden; falls nicht, klicken Sie auf die Schaltfläche Aktualisieren oder starten Sie die Anwendung und den Frida-Server neu. start.gif

Überwachung

  • Dynamisches Generieren von Hook-Skripten aus Vorlagen basierend auf der Konfigurationsdatei, Überwachung wichtiger Operationen einschließlich FILEIO, IPC usw.

monitor.png

  • Dies ist im Moment experimentell. Wenn Sie weitere Funktionen finden, die gehooked werden müssen, lassen Sie es mich bitte wissen oder reichen Sie einen PR ein.

Preload & Sideload

  • House unterstützt jetzt Sideload. Derzeit wird das Sideloading von Stetho unterstützt, was es uns erleichtert, die Benutzeroberfläche, den Speicher usw. zu untersuchen. sideload_stetho.png
  • Dies ist im Moment experimentell, aber weitere Funktionen wie SSLStrip werden unter diesem Reiter hinzugefügt.

Aufzählung

  • Alle geladenen Klassen aufzählen: enum_load.gif
  • Alle Klassen in der Dex-Datei aufzählen: enum_dex.gif
  • Alle Methoden innerhalb einer gegebenen Klasse aufzählen: enum_method1.gif enum_method2.gif
  • Verwaltung des Skriptverlaufs: enum_history_script.gif

Verfolgung mehrerer Funktionen

  • Skript-Rendering und Funktionsverfolgung: hook.gif

  • Hooks für Funktionen in dynamisch geladenen dex/jar-Dateien: hook.gif

  • Mini-Script-Option: hook.gif

  • Verwaltung des Skriptverlaufs: hook_history_script.gif

Funktionsinterception

  • Über House können Forscher die Argumente, die an die Zielfunktionen übergeben werden, dynamisch ändern und weiterleiten. int1.gif

  • Manchmal kann House die Argumentinformationen nicht perfekt parsen. Beispielsweise kann ein Argument einen speziellen Typ haben. In der Beispiel-App implementiert sie die isLit-Funktion, die ein benutzerdefiniertes Objekt als Argument nimmt. Um solche Situationen zu bewältigen, bietet House ein einfaches "REPL". Sicherheitsforscher können im REPL dynamisch Frida-Skripte eingeben und das Verhalten der Funktionen ändern. int2.gif

  • Mehrere REPL-Funktionen werden von House bereitgestellt, um das Testen zu erleichtern:

    • inspectObject(obj) verwendet java.lang.reflect, um Feldinformationen innerhalb eines Objekts zu untersuchen.
    • setRetval(ret) nimmt einen Parameter und versucht, ihn mithilfe des Konstruktors des ursprünglichen Rückgabewerts in den korrekten Rückgabetyp umzuwandeln.
    • getStackTrace() gibt den Stack-Trace aus.
    • Weitere REPL-Funktionen werden in Zukunft hinzugefügt.

    int3.gif

Hinweis: Für Constructor-Methoden-Hooking/Intercept geben Sie $init als Methodennamen ein.

FAQ

Voraussetzungen:

Damit House funktioniert, benötigen Sie:

  1. Ein gerootetes Android-Gerät mit laufendem Frida-Server, das an Ihren Computer angeschlossen ist. Die Verwendung nur eines USB-Geräts wird empfohlen.
  2. Die lokale Frida-Python-Version sollte mit der des Frida-Servers übereinstimmen.

Gerät wird nicht erkannt? Funktioniert nicht?

Bitte versuchen Sie, sowohl den Frida-Server als auch House neu zu starten. Wenn es immer noch nicht funktioniert, reichen Sie bitte ein Issue ein.

Timeout-Fehler?

Tritt oft auf, wenn mehrere USB-Geräte angeschlossen sind. Versuchen Sie, die Zielanwendung neu zu starten.

Frida-Fehler?

House wurde mit Frida-Version 12.8.6 getestet. Es könnte einige Probleme mit anderen Versionen geben. Stellen Sie außerdem sicher, dass Frida-Python mit der Version des Frida-Servers übereinstimmt. Wenn es immer noch nicht funktioniert, versuchen Sie, die generierten Frida-Skripte manuell auszuführen, um zu sehen, ob es funktioniert.

Danksagungen

Besonderer Dank gilt den folgenden Open-Source-Projekten für Inspirationen zu House:

  1. Frida, das großartige Instrumentierungs-Toolkit, das all dies ermöglicht.
  2. Objection, eine Inspiration und Anleitung bei der Erstellung eines Teils der Frida-Vorlagenskripte von House.
  3. Inspeckage, eine Inspiration für die Monitor-Funktionalität von House.
  4. 0xdea/frida-scripts - ein großartiges Arsenal an Frida-Skripten.

Kontakt

Wenn Sie weitere Fragen zu House haben oder bei der Erweiterung helfen möchten, kontaktieren Sie:

@haoOnBeat

Oder senden Sie eine E-Mail an: Hao Ke

Tool herunterladen