Files
yourpart3/android/SECURITY.md
Torsten Schulz (local) 1ab9407e79
All checks were successful
Deploy to production / deploy (push) Successful in 2m56s
Refactor code structure for improved readability and maintainability; optimize performance across multiple modules.
2026-07-21 09:08:15 +02:00

1.9 KiB

Native Android Security

Umgesetzte Schutzmaßnahmen

  • Die Sitzung liegt ausschließlich in EncryptedSharedPreferences mit Android-Master-Key.
  • Release-Builds enthalten keinen HTTP-Body-Logger. Der detaillierte OkHttp-Logger ist auf Nicht-Release-Builds begrenzt.
  • Release-Netzwerkverkehr erlaubt kein Cleartext. Nur der lokale Debug-Flavor darf 10.0.2.2 und localhost per HTTP ansprechen.
  • Chat, Galerie, Persönliches und der Adult-Bereich setzen FLAG_SECURE. Damit verhindert Android Screenshots, Bildschirmaufnahmen und die Anzeige im App-Switcher.
  • Uploads werden vor dem Service auf einen erlaubten MIME-Typ und eine Größe begrenzt: Bilder/Verifikationsnachweise 10 MiB, Videos 100 MiB. Bilder werden zusätzlich durch Sharp dekodiert, damit ein behaupteter MIME-Typ nicht genügt.

Bewusste Entscheidungen

Certificate Pinning

Certificate Pinning wird aktuell nicht erzwungen. Die API verwendet HTTPS und die plattformseitige Trust-Store-Prüfung. Pinning würde bei Zertifikats- oder CDN-Wechseln ohne App-Update zu vollständigen Ausfällen führen. Es wird erst eingeführt, wenn es mindestens zwei parallel gültige Pins, ein dokumentiertes Rotation-Verfahren und Monitoring für Pin-Fehler gibt.

Root- und Bootloader-Erkennung

Die App blockiert gerootete Geräte nicht. Eine lokale Erkennung ist umgehbar und würde legitime Nutzer sowie Emulator-Tests ausschließen. Sensible Daten bleiben verschlüsselt, Screenshots in sensiblen Bereichen sind gesperrt und Berechtigungen werden auf dem Server durchgesetzt. Play Integrity wird bei späteren Hochrisiko-Aktionen als serverseitig prüfbares Signal bewertet, nicht als pauschale Startblockade.

Dependency Scanning

.github/workflows/android-security.yml führt bei Pull Requests und Pushes einen OSV-Abhängigkeitsscan sowie Android-Lint für den Produktions-Release aus. Kritische Findings werden vor einem Release bewertet.