
Absichtlich anfällige Android-Anwendung.
Eine absichtlich verwundbare Android-Applikation für Sicherheitsschulungen
Funktionen • Screenshots • Installation • Challenges • Mitwirken • Unterstützung
Allsafe ist eine absichtlich verwundbare Android-Anwendung, die für Sicherheitsbegeisterte, Pentester und Entwickler entwickelt wurde, um die Sicherheit von Android-Apps zu erlernen. Im Gegensatz zu typischen CTF-Apps simuliert Allsafe eine reale Anwendung mit modernen Bibliotheken und Technologien und bietet eine praktische Lernerfahrung zur Identifizierung und Ausnutzung von Android-Schwachstellen.
# Lade die neueste APK von den Releases herunter
wget https://github.com/t0thkr1s/allsafe/releases/latest/download/allsafe.apk
# Installation über ADB
adb install allsafe.apk
# Repository klonen
git clone https://github.com/t0thkr1s/allsafe.git
cd allsafe
# APK bauen
./gradlew assembleDebug
# APK installieren
adb install app/build/outputs/apk/debug/app-debug.apk
Die Anwendung enthält verschiedene Sicherheits-Challenges, geordnet nach Schwierigkeitsgrad:
Einfache Informationsoffenlegungsschwachstelle. Verwende das Befehlszeilentool logcat, um sensible Informationen zu entdecken.
adb shell 'pidof infosecadventures.allsafe'
adb shell 'logcat --pid [PID] | grep secret'
Einige Anmeldedaten wurden im Code hinterlassen. Deine Aufgabe ist es, die App zu reverse-engineeren und sensible Informationen zu finden.
Dies dient rein als Frida-Übung. Lass den Code glauben, dass dein Gerät nicht gerootet ist!
Das sichere Laden von Modulen mit Drittanbieter-Apps ist nicht einfach. Schreibe eine PoC-Anwendung und nutze die Schwachstelle aus!
Eine weitere Frida-basierte Aufgabe. Hier gibt es keine echte Schwachstelle, hab einfach Spaß beim Umgehen des Secure-Flags!
Das Zertifikats-Pinning wird mit der OkHttp-Bibliothek implementiert. Du musst es umgehen, um den Datenverkehr mit Burp Suite anzuzeigen.
In der Anwendung gibt es einen anfälligen Broadcast-Empfänger. Löse ihn mit den richtigen Daten aus und du bist fertig!
Ähnlich wie beim unsicheren Broadcast-Empfänger musst du den richtigen Abfrageparameter angeben, um diese Aufgabe abzuschließen!
Nur eine normale SQL-Injection, wie man sie in Webanwendungen findet. Kein Reverse-Engineering nötig, um den Login-Mechanismus zu umgehen.
Du kannst diese Aufgabe auch erledigen, ohne die Anwendung zu dekompilieren. Öffne einen Alert-Dialog und lies Dateien!
In dieser Aufgabe musst du den Ausführungsablauf der Anwendung ändern, indem du den Smali-Code bearbeitest. Baue schließlich die APK neu und signiere sie!
Die Anwendung verwendet eine native Bibliothek, die das eingegebene Passwort validiert. Reverse-engineere die Bibliothek, um das Passwort zu finden, und verwende dann Frida, um die native Methode zu hooken.
Schau dir meine Sammlung von Frida-Skripten für Android-Pentesting an: https://github.com/t0thkr1s/frida
Beiträge sind willkommen! Egal, ob du einen Fehler gefunden hast, einen Vorschlag hast oder eine neue Challenge hinzufügen möchtest:
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)Wenn du dieses Projekt hilfreich oder wertvoll findest, ziehe bitte Folgendes in Betracht:
Bitcoin (BTC)
bc1qd44kvj6zatjgn27n45uxd3nprzt6rm9x9g2yc8
Ethereum (ETH)
0x1835a58E866a668C48Ee63d32432C7Fe28aF54b4
Diese Anwendung ist nur für Bildungszwecke bestimmt. Sie sollte nur in kontrollierten Umgebungen verwendet werden, in denen du ausdrückliche Erlaubnis hast. Die Entwickler übernehmen keine Haftung und sind nicht verantwortlich für Missbrauch oder Schäden, die durch diese Anwendung verursacht werden.
Verwende diese Anwendung nicht:
Dieses Projekt ist unter der GNU General Public License v3.0 lizenziert – siehe LICENSE für Details.