couleurbummel icon indicating copy to clipboard operation
couleurbummel copied to clipboard

App funktioniert nicht mehr auf custom ROMS (CTS profile match failed)

Open forrest96er opened this issue 1 year ago • 1 comments

Is there an existing issue for this?

  • [X] I have searched the existing issues

Happening on the latest app version?

  • [X] I have seen this on the latest version of the app

This is not a data update request

  • [X] I am not requesting a data update

Explain what you did

Ich habe die App auf einen Custom ROM ( Google Pixel 5a mit Graphene OS) ohne SafetyNet ( CTS profile match failed) installiert.

Describe the bug

Leider kommt es dann zu einer Fehlermeldung, dass die Integritätsprüfung nicht erfolgreich sei und die App lässt sich nicht vollständig nutzen (nur die Map wird angezeigt).

Expected behaviour

Wenn die Safetynet überprüfung deaktiviert wird, sollte die App auch auf nicht offiziellen ROMs problemlos laufen. *

Safetynet selber ist selber auch keine starke Attestierung, da diese sich relativ leicht fälschen lässt. So ist es beispielsweise möglich bei einem gerooteten ROM mithilte von Magisk und dem Modul UniversalSafetynetFix die Safetynet API so zu manipulieren, dass Safetynet immer funktioniert.

Eine deutlich sichere alternative zur Integritätsprüfung bei Andorid wäre die hardware basierte Integritätsprüfung. Diese ist im Gegensatz zum Safetynet oder dessen Nachfolger der GooglePlay zertifizierung unabhängig von Google. So könnte man auch vertrauenswürdige ROMs von drittanbierten zulassen. Link zum nachlesen

Da es sich hier um keine Banking oder Bezahl App handelt ( welche hohen Sicherheitsanforderungen erfüllen müssen), denke ich dass eine Integritätsprüfung des ROMs für die Couleurbummel App nicht notwendig ist.

* habe das gleiche Problem auf einem andern Custom ROM gehabt, nach dem die SafetyNet Prüfung gefälscht wurde, funktionierte die App ohne Probleme.

Steps to reproduce

.

Your device and OS

.

Screenshots

Screenshot_20230926-174544 Screenshot_20230926-174434

forrest96er avatar Sep 26 '23 16:09 forrest96er

Danke für den Report. Die App Attestation ist hauptsächlich dazu da, um die Datenbank gegen Traffic von anderen Apps oder Websites zu schützen. Firebase ist deswegen aktuell so konfiguriert, dass nur Zugriffe von Apps mit Attestierung zugelassen werden. Geheime Daten sind da natürlich nicht drin, im Gegenteil.

SafetyNet war bis vor kurzem der einzig mögliche Provider, der mit RNFirebase funktionierte, obwohl es schon eine Weile lang als deprecated markiert war. Mit #86 wechselt die App auf Play Integrity. Das löst dein Problem natürlich nicht, und ich würde auch sehr gerne eine von Google unabhängige Lösung haben, aber ich muss auch meine Cloudprovider-Kosten im Blick behalten und die Zeit, die ich in die App investieren kann. Da es keine Nutzeraccounts o.ä. gibt, ist App Attestation die einzig sinnvolle Möglichkeit, die ich sehe, ohne noch ein extra Backend zu betreiben. Ich bin aber alles andere als ein Experte in App-Entwicklung (und schon gar nicht Android oder Raeact), daher bin ich gerne für weitere Vorschläge oder Beiträge offen.

muffix avatar Oct 06 '23 12:10 muffix