Penetrationstest für mobile Anwendungen
Eine mobile App läuft auf einem Gerät, das Ihnen nicht gehört. Alles, was in ihr steckt – Schlüssel, Adressen, Logik – kann jemand auslesen, der das Gerät kontrolliert. Der Test prüft deshalb zwei Ebenen: was die App auf dem Gerät preisgibt, und ob das Backend sich darauf verlässt, dass die Anfragen von einer unveränderten App kommen.
- Lokale Datenhaltung: Was liegt unverschlüsselt auf dem Gerät, was landet in Zwischenspeichern und Protokollen
- Kommunikation mit dem Backend: Verschlüsselung, Zertifikatsprüfung, Umgehbarkeit
- Authentifizierung und Sitzungen, einschließlich biometrischer Verfahren
- Fest eingebaute Schlüssel und Zugangsdaten in der Anwendung
- Serverseitige Prüfung: Verlässt sich das Backend auf Kontrollen, die in der App stattfinden?
- Schutz gegen Manipulation und Analyse der Anwendung
- Berechtigungen und Umgang mit anderen Apps auf dem Gerät
Die Frage, die der Test beantwortet
- Was gibt Ihre App auf dem Gerät preis, und verlässt sich das Backend darauf, dass Anfragen von einer unveränderten App kommen?
Zwei Ebenen: Gerät und Backend
Das Installationspaket wird ausgelesen
Fest eingebaute Schlüssel lassen sich aus IPA oder APK holen. Sie gelten oft für alle Nutzer gleichzeitig.
Die lokalen Daten werden gelesen
Zugangsdaten, Belege oder Kundendaten liegen in einer lokalen Datenbank ohne Verschlüsselung.
Die App wird umgangen
Die App verhindert eine Eingabe. Der Prüfer spricht direkt mit der Schnittstelle und umgeht diese Kontrolle.
Das Backend akzeptiert trotzdem
Die Prüfung fand nur in der App statt. Hier liegen fast immer die schwerwiegenden Funde.
Was auf dem Gerät und was im Backend geprüft wird
- Lokale Datenhaltung, Zwischenspeicher und Protokolle
- Fest eingebaute Schlüssel und Zugangsdaten
- Schutz gegen Manipulation und Analyse der Anwendung
- Fehlende Berechtigungsprüfungen
- Zu weit gefasste Antworten
- Vertrauen in Werte, die der Client mitschickt
- Die Backend-Prüfung fällt nur einmal an. Zwei Plattformen kosten daher spürbar weniger als das Doppelte.
Was wir prüfen
- Lokale Datenhaltung: Was liegt unverschlüsselt auf dem Gerät, was landet in Zwischenspeichern und Protokollen
- Kommunikation mit dem Backend: Verschlüsselung, Zertifikatsprüfung, Umgehbarkeit
- Authentifizierung und Sitzungen, einschließlich biometrischer Verfahren
- Fest eingebaute Schlüssel und Zugangsdaten in der Anwendung
- Serverseitige Prüfung: Verlässt sich das Backend auf Kontrollen, die in der App stattfinden?
- Schutz gegen Manipulation und Analyse der Anwendung
- Berechtigungen und Umgang mit anderen Apps auf dem Gerät
Was wir dabei typischerweise finden
Prüfungen nur in der App
Die Anwendung verhindert eine Eingabe, das Backend akzeptiert sie trotzdem. Wer die App umgeht und direkt mit der Schnittstelle spricht, umgeht damit die gesamte Kontrolle.
Schlüssel im Programmcode
API-Schlüssel oder Zugangsdaten, die sich aus dem Installationspaket auslesen lassen. Sie gelten oft für alle Nutzer gleichzeitig.
Daten im Klartext auf dem Gerät
Zugangsdaten, Belege oder Kundendaten in einer lokalen Datenbank ohne Verschlüsselung – auslesbar, sobald das Gerät verloren geht oder kompromittiert ist.
Was Sie dafür bereitstellen
- Ein Installationspaket der zu prüfenden Version (IPA beziehungsweise APK)
- Testkonten für alle Rollen, getrennt von produktiven Konten
- Eine Backend-Umgebung, gegen die geprüft werden darf
- Bei iOS: einen Verteilungsweg für die Testinstallation
Häufige Fragen
Prüfen Sie auch das Backend?
Ja, und das ist meist der wichtigere Teil. Die schwerwiegenden Funde liegen fast immer in der Schnittstelle, nicht in der App: fehlende Berechtigungsprüfungen, zu weit gefasste Antworten, Vertrauen in Werte, die der Client mitschickt.
Brauchen wir für iOS und Android zwei Tests?
Die Backend-Prüfung fällt nur einmal an. Die gerätenahen Prüfungen unterscheiden sich, sind aber im zweiten Durchgang deutlich schneller, weil die Anwendungslogik bereits bekannt ist. Zwei Plattformen kosten daher spürbar weniger als das Doppelte.
Nach welchem Maßstab prüfen Sie?
Wir orientieren uns am Mobile Application Security Verification Standard (MASVS) der OWASP und ergänzen ihn um die Prüfung der Geschäftslogik – die deckt kein Standard vollständig ab.
Was ist mit Apps, die wir nur einkaufen?
Auch die lassen sich prüfen, und das Ergebnis ist gegenüber dem Hersteller verwendbar. Rechtlich ist vorab zu klären, ob die Lizenzbedingungen eine Analyse zulassen – das prüfen wir im Scoping mit.
Kontakt
Nica Systems GmbH, Reisholzer Bahnstraße 41, 40599 Düsseldorf
Telefon: 0211 17520840
E-Mail: Kontaktformular
Erreichbarkeit: Mo–Fr 09:00–17:00 Uhr, Incident Response rund um die Uhr
Bitte aktivieren Sie JavaScript für die vollständige, interaktive Website.