Android APK Checklist
Reading time: 4 minutes
tip
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Ελέγξτε τα σχέδια συνδρομής!
- Εγγραφείτε στην 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.
Learn Android fundamentals
- Βασικά
- Dalvik & Smali
- Σημεία εισόδου
- Δραστηριότητες
- Σχέδια URL
- Πάροχοι περιεχομένου
- Υπηρεσίες
- Δέκτες εκπομπών
- Intents
- Φίλτρο Intents
- Άλλα συστατικά
- Πώς να χρησιμοποιήσετε το ADB
- Πώς να τροποποιήσετε το Smali
Static Analysis
- Ελέγξτε τη χρήση της αποκρυπτογράφησης, ελέγξτε αν το κινητό ήταν ριζωμένο, αν χρησιμοποιείται εξομοιωτής και ελέγχους κατά της παραχάραξης. Διαβάστε αυτό για περισσότερες πληροφορίες.
- Ευαίσθητες εφαρμογές (όπως οι τραπεζικές εφαρμογές) θα πρέπει να ελέγχουν αν το κινητό είναι ριζωμένο και να ενεργούν αναλόγως.
- Αναζητήστε ενδιαφέροντα strings (κωδικούς πρόσβασης, URLs, API, κρυπτογράφηση, backdoors, tokens, Bluetooth uuids...).
- Ιδιαίτερη προσοχή στα firebase APIs.
- Διαβάστε το manifest:
- Ελέγξτε αν η εφαρμογή είναι σε λειτουργία αποσφαλμάτωσης και προσπαθήστε να την "εκμεταλλευτείτε"
- Ελέγξτε αν το APK επιτρέπει αντίγραφα ασφαλείας
- Εξαγόμενες Δραστηριότητες
- Πάροχοι περιεχομένου
- Εκτεθειμένες υπηρεσίες
- Δέκτες εκπομπών
- Σχέδια URL
- Αποθηκεύει η εφαρμογή δεδομένα με ανασφαλή τρόπο εσωτερικά ή εξωτερικά; (android-app-pentesting/index.html#insecure-data-storage)
- Υπάρχει κάποιος κωδικός πρόσβασης σκληρά κωδικοποιημένος ή αποθηκευμένος στο δίσκο; Χρησιμοποιεί η εφαρμογή ανασφαλείς αλγόριθμους κρυπτογράφησης;
- Όλες οι βιβλιοθήκες έχουν μεταγλωττιστεί χρησιμοποιώντας τη σημαία PIE;
- Μην ξεχνάτε ότι υπάρχει μια σειρά από στατικούς αναλυτές Android που μπορούν να σας βοηθήσουν πολύ σε αυτή τη φάση.
Dynamic Analysis
- Προετοιμάστε το περιβάλλον (online, τοπική VM ή φυσική)
- Υπάρχει κάποια μη προγραμματισμένη διαρροή δεδομένων (καταγραφή, αντιγραφή/επικόλληση, καταγραφές σφαλμάτων);
- Εμπιστευτικές πληροφορίες που αποθηκεύονται σε βάσεις δεδομένων SQLite;
- Εκμεταλλεύσιμες εκτεθειμένες Δραστηριότητες;
- Εκμεταλλεύσιμοι Πάροχοι περιεχομένου;
- Εκμεταλλεύσιμες εκτεθειμένες Υπηρεσίες;
- Εκμεταλλεύσιμοι Δέκτες εκπομπών;
- Μεταδίδει η εφαρμογή πληροφορίες σε καθαρό κείμενο/χρησιμοποιεί αδύναμους αλγόριθμους; (android-app-pentesting/index.html#insufficient-transport-layer-protection) Είναι δυνατός ο MitM;
- Επιθεωρήστε την κίνηση HTTP/HTTPS
- Αυτό είναι πραγματικά σημαντικό, γιατί αν μπορείτε να συλλάβετε την κίνηση HTTP μπορείτε να αναζητήσετε κοινές ευπάθειες Web (το Hacktricks έχει πολλές πληροφορίες σχετικά με τις ευπάθειες Web).
- Ελέγξτε για πιθανές Android Client Side Injections (πιθανώς κάποια στατική ανάλυση κώδικα θα βοηθήσει εδώ)
- Frida: Μόνο Frida, χρησιμοποιήστε το για να αποκτήσετε ενδιαφέροντα δυναμικά δεδομένα από την εφαρμογή (ίσως κάποιους κωδικούς πρόσβασης...)
Some obfuscation/Deobfuscation information
tip
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Ελέγξτε τα σχέδια συνδρομής!
- Εγγραφείτε στην 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.