PrivSec-dev / banking-apps-compat-report

Report and track banking app compatibility with GrapheneOS, including which workarounds may be required.
https://privsec.dev/posts/android/banking-applications-compatibility-with-grapheneos/
84 stars 4 forks source link

BoursoBank #147

Closed d4rklynk closed 2 years ago

d4rklynk commented 2 years ago

Is there an existing issue for this?

App name

BoursoBank

Link to app

https://play.google.com/store/apps/details?id=com.boursorama.android.clients

App version

v7.2.8

Country of the app

France

Build Number

TQ2A.230305.008.E1.2023040400

Device

Google Play installed

Google Play services Network permission revoked?

SafetyNet Enforcement

Native code debugging

Stock OS compatibility

Profile app tested in

Description of the app's functionality

Everything works correctly as far as I tested.

Are there any extra notes you think users should know about?

When you enter your PIN code to Boursorama Banque after unfreezing the work profile (with Shelter for exemple), it will fail, you click "cancel" and do it a second time, it will work just right.

The first time you install Boursorama Banque, it will probably tell you there are "security things" that couldn't be initialize correctly, you can skip that by restarting the app, it'll do only once.

ADB logcat of the app if necessary

No response

akc3n commented 2 years ago

Thank you @d4rklynk However, this banking app project is strictly for GrapheneOS.

This repository is for reporting banking app compatibility with GrapheneOS only.

TommyTran732 commented 2 years ago

I will check this later. If it works on DOS chances are it will work on GOS anyways.

d4rklynk commented 2 years ago

Should I translate the comments in french too ? As it is mainly a french bank

Mello7sh3i commented 2 years ago

I have it on GrapehenOS, with play services (not tried without). At the beginning of 2022, it didn't work for me: Impossible to register the phone as a trusted device.

I tried again after an update of GrapheneOS, and it works perfectly since. I don't have this problem described with the pin code though, I don't know if it's related to the missing play services?

d4rklynk commented 2 years ago

I have it on GrapehenOS, with play services (not tried without). At the beginning of 2022, it didn't work for me: Impossible to register the phone as a trusted device.

I tried again after an update of GrapheneOS, and it works perfectly since. I don't have this problem described with the pin code though, I don't know if it's related to the missing play services?

The PIN code error is only here when you use a work profile (with Shelter) as far as I test. When you use the main profile, there is indeed an error, but you can skip it by restarting the app if I remember well.

d4rklynk commented 2 years ago

I'm gonna have a pixel in a 2 weeks. I wil update this issue.

TommyTran732 commented 2 years ago

Works fine on GrapheneOS. I will update the report and add it to the list.

Saroumane commented 1 year ago

The need for "double authentication" (the 1st always fails) also exists for :

(No Play Services installed here)

Itehc commented 1 year ago

I have it on GrapehenOS, with play services (not tried without). At the beginning of 2022, it didn't work for me: Impossible to register the phone as a trusted device.

I tried again after an update of GrapheneOS, and it works perfectly since. I don't have this problem described with the pin code though, I don't know if it's related to the missing play services?

I had the same issue with "phone registering". Solved it by just deconnecting my VPN during the registering session.

d4rklynk commented 1 year ago

Update 2023.04.07

TL;DR : just updating the versions

Tyaigan commented 1 year ago

Using the app as 2FA to confirm an operation made on desktop does not work. ( in fact, being connected on graphene and anywhere else as the same time is impossible) I think it's the main usage of the app, for me at least.

logging in the app disconnect the desktop session and vis versa. "For security reason". So it cancel the operation as the 2FA failed.

Work perfectly on stock, not on graphene, Pixel 6a, Play services Network not revoked Native code debugging, tried with both.

Thank you

pled commented 9 months ago

It seems future version for this app will refuse any modified system (root, rom...). See below message I get now at startup :

Screenshot_20240118-225329_1

I sent them a message to complain and ask for justification. Got no answer so far.

Running BoursoBank version 7.9.2.

d4rklynk commented 9 months ago

Running 7.9.2, works fine for me. Using Play Services.

pled commented 9 months ago

Yes, it works for me too. I just mention the alert message at startup that warns it will no more work in a future release...

d4rklynk commented 9 months ago

I mean, I don't see this alert message

pled commented 9 months ago

Surprising... Let see how it evolves. I sent them that link : https://grapheneos.org/articles/attestation-compatibility-guide So that they know they can accept GrapheneOS if they want.

d4rklynk commented 8 months ago

My gf and I got the notification today when lauching the app.

We can still bypass it by hitting the "J'ai compris" button. Hope it will not go more than that.

bobmorane06 commented 8 months ago

My gf and I got the notification today when lauching the app.

We can still bypass it by hitting the "J'ai compris" button. Hope it will not go more than that.

I installed grapheneos today, without installing google play. I used Aurora to install boursobank and the app failed to start the first time but works fine afterwards. Did you guys all install it via the sandboxed play store? Is there a reason to do so? (so far I've used the app on a galaxy s21 without google account via aurora without issues)

d4rklynk commented 8 months ago

Play Store is more secure, and Google can ban accounts that use Aurora. It actually happened to me twice.

bobmorane06 commented 8 months ago

Google can ban accounts that use Aurora

Not if you use an anonymous session as I did

Back, to the app, I had to confirm a wire transfer today and the app installed through Aurora didn't work, most likely because of the absence of notifications (I can use the app to check my balances etc, but it doesn't work as an authenticator). I ended up installing it via the Play Store on a second profile and I had the same message as you @d4rklynk but could confirm the wire transfer.

arthuragone commented 8 months ago

Just happened to get this warning message for the fist time too. A bit worrying as the app is much needed in everyday life.

Pixel 7 Pro, GrapheneOs lastest version

pled commented 8 months ago

Do not hesitate to contact their support, and tell them about GrapheneOS (more secure) and provide them with the following link : https://grapheneos.org/articles/attestation-compatibility-guide

They can easily accept GrapheneOS as a valid system.

davidv92 commented 8 months ago

Hello @pled,

Do you mind to share with us the message you sent ? I will send the same message slightly modified. Another question, what “Thème” and “Sous-thème” did you select when sending the message? I did not find a specific category to report a problem concerning the mobile application.

I hope this helps, it's definitely an app I use every day...

pled commented 8 months ago

Hi @davidv92, Here is the message I sent :

Bonjour, Au lancement de l'application BoursoBank v7 10.1 sur mon smartphone, j'ai reçu un message comme quoi mon tel ne sera prochainement plus compatible. Pour information, j'ai installé GrapheneOS sur mon Pixel 6a pour PLUS de sécurité. Ce n'est pas la ROM d'origine pour autant, mais c'est mon choix de ne pas laisser Google accéder à toutes les données sur mon tél.

Veuillez trouver ci-dessous un lien que vous pouvez transmettre aux développeurs de l'application BoursoBank : https://grapheneos.org/articles/attestation-compatibility-guide Vous y verrez qu'il est tout à fait possible d'accepter GrapheneOS comme système Android. Il serait donc un peu absurde que vous refusiez ce système pour votre application. Merci de prendre ce message en compte, et de me fournir une réponse s'il vous plaît. Cordialemement, etc ..

Concernant thème & sous-thème, j'ai choisi "gestion des comptes bancaires" et "fermeture de compte" ! 😉

Voilà... Ceci dit, je n'ai eu aucune réponse à ce jour...

d4rklynk commented 8 months ago

Ok, I think we should all sent an message like this one.

Can you tell me from where you send this message ? I guess it's from the support from our account page right ?

And like it's a bank, we should also specify that if they don't "on passera chez HelloBank!"

bobmorane06 commented 8 months ago

Have you guys considered a fido2 key, which Boursorama claim they support? Would it even work on GOS without Google Play Services (I'm trying to not have any google account on my phone and I'm new to GOS)? When I try to add a key (that I don't own yet) through a web browser on my profile without Google Play, I get the following error msg:

WhatsApp Image 2024-02-01 at 19 09 38

timefrance commented 8 months ago

I just send a message to BoursoBank. We will see...

bobmorane06 commented 8 months ago

I went to my work profile with Google Play Store enabled, went to Boursobank's web site on Vanadium, went to my profile to add a key and I did not get the same error msg - see screenshot. So my assumption is that once Bourso refuse to authenticate transfers etc via the app, it should remain possible to authenticate via a fido2 key via their website on a Google Play Store enabled profile. Thoughts?

WhatsApp Image 2024-02-01 at 19 47 59

5C4R4B3 commented 8 months ago

I just send a message to BoursoBank. We will see...

I send a message too...

timefrance commented 8 months ago

I just send a message to BoursoBank. We will see...

Their answer :unamused:

Nous sommes navrés, mais dans ce cas précis, nous vous invitons à accéder à votre Espace Client, depuis un ordinateur ou un autre support non rooté.

Cl00e9ment commented 8 months ago

Voilà le message que j'ai reçu en accédant à l'application aujourd'hui (pas de problème hier) :

Screenshot_20240202-182456

J'ai envoyé la réclamation suivante :

Bonjour,

Merci de faire suivre le message suivant à l'équipe informatique en charge de l'application mobile Android :

Bonjour, Je vous contacte, car vous vous apprêter à verrouiller l'application BoursoBank sur les appareils altérés (root, rom...). Votre objectif est de toute évidence de renforcer la sécurité. Or, je pense que le filtre que vous avez mis en place est trop strict et va à l'encontre de votre objectif initial. Par exemple, me concernant, j'utilise GrapheneOS, une distribution Android ayant pour objectif de renforcer considérablement la sécurité du téléphone. Il s'agit un projet très sérieux où plusieurs développements issus de ce projet ont été intégrés à l'OS Android de base. Cependant, je ne pourrais bientôt plus accéder à l'application. Pour résoudre le problème il faudrait que je baisse la sécurité du téléphone en revenant sur un Android constructeur. C'est pourquoi je vous contacte pour vous demander de revoir la manière dont vous détectez une ROM non-sécurisé. Merci

Cl00e9ment commented 8 months ago

Dans tous les cas il est toujours possible d'accéder à l'application depuis un navigateur web sur le téléphone. C'est moins pratique, mais c'est mieux que rien.

timefrance commented 8 months ago

Dans tous les cas il est toujours possible d'accéder à l'application depuis un navigateur web sur le téléphone. C'est moins pratique, mais c'est mieux que rien.

Mais on ne peut faire d'opération sensible (exemples non exhaustifs : commande de chéquier, déblocage de carte bancaire, référencement de RIB, augmentation des plafonds carte bancaire, certains paiements carte en vente à distance, retrait exceptionnel carte bancaire, souscription à un Prêt Personnel, signature d’une offre de crédit immobilier, virement sortant d’un certain montant…)

Saroumane commented 8 months ago

A

I just send a message to BoursoBank. We will see...

Their answer 😒

Nous sommes navrés, mais dans ce cas précis, nous vous invitons à accéder à votre Espace Client, depuis un ordinateur ou un autre support non rooté.

Leur réponse montre qu'ils n'ont rien compris, puisque justement GrapheneOS n'est pas 'rooté', c'est un point fort de leur stratégie de sécurité. ( https://discuss.grapheneos.org/d/9880-rooting-customization-in-graphine-os/4 ) Ils n'ont pas compris non plus que GrapheneOS contient souvent des évolutions sécuritaires qui sont reprises plus tard par le projet Android principal (AOSP)

Bref, le seul langage qu'ils peuvent comprendre, comme indiqué par @d4rklynk un peu plus haut, c'est la menace de passer chez la concurrence.

bobmorane06 commented 8 months ago

Je ne pense pas que ce soit très différent ailleurs 😀

Moi ça me convient de consulter via le web ou via un agrégateur comme linxo.com. Par contre il faut pouvoir valider des opérations, d'où mon interrogation sur les clés fido2.

@Saroumane , ça t'embête de leur demander comment valider une opération sensible sans smartphone ? Je vais le faire de mon côté aussi.

d4rklynk commented 8 months ago

Ils sont pas certifiés ITIL eux, c'est clairement pas eux qui gèrent l'appli. C'est à ceux au plus proche des devs de l'appli qui devraient répondre.

pled commented 8 months ago

Je ne pense pas que ce soit très différent ailleurs 😀

J'ai également un compte chez Fortuneo, banque en ligne 100% gratuite, et son application Android ne pose aucun problème.

d4rklynk commented 8 months ago

Le truc c'est qu'il vaut mieux informer les banques et essayer de les convaincre, car même en changeant de banque, rien ne nous garanti que ces nouvelles banques ne mettront pas en place cette vérification.

pled commented 8 months ago

Bien sûr, c'est ce que j'ai fait, ou tenté de faire.

Il n'empêche que le jour où l'appli refusera de démarrer, je n'aurai pas d'autre choix que de changer de banque. Et ils sauront pourquoi.

d4rklynk commented 8 months ago

C'est un peu fatiguant les entreprises qui s'en fichent de leurs clients, on est les "end users" mais on n'importe peu, j'ai du mal à capter la logique.

pled commented 8 months ago

Deux axes de réponse :

Dans la boîte où je bossais avant, il y avait "les grands comptes" quel l'on soignait (on corrigeait les bugs en clair), et les autres (sauf bug critique, ils vivaient avec de vagues promesses au sujet d'une future version).

En résumé, une logique économique !

d4rklynk commented 8 months ago

Ouais mais le problème, c'es que le fix prends même pas 5 minutes

pled commented 8 months ago

Ça ne marche pas comme ça, il faut que le product manager accepte de faire un change request, etc ..

d4rklynk commented 8 months ago

Ouais je sais bien malheureusement...

Mello7sh3i commented 8 months ago

Au moins, vous avez eu une réponse à votre réclamation. Il y a deux ou trois mois, pour un autre problème, j'ai envoyé un mail à l'adresse affichée sur le playstore et je n'ai jamais eu la moindre réponse. Personnellement, je suis parti, car je n'attendais rien d'une réclamation, et je doute qu'une banque accepte un jour de suivre la procédure. Mon autre banque (régionale) n'a pas le problème pour l'instant.

Je pense que le seul espoir sur le sujet serait une plainte, au niveau européen, sur le droit à la concurrence, si ça peut tenir juridiquement...

Mello7sh3i commented 8 months ago

Je ne pense pas que ce soit très différent ailleurs 😀

Moi ça me convient de consulter via le web ou via un agrégateur comme linxo.com. Par contre il faut pouvoir valider des opérations, d'où mon interrogation sur les clés fido2.

@Saroumane , ça t'embête de leur demander comment valider une opération sensible sans smartphone ? Je vais le faire de mon côté aussi.

Avant qu'ils ne changent de domaine pour boursobank, j'avais enregistré mes clés chez eux. Yubico, modèle Security Key et Yubikey 5. Les deux modèles n'étaient pas entièrement reconnus, donc la clé marchait pour la connexion au compte, mais elle n'était pas considérée comme sûre pour les opérations sensibles, donc assez limitée. ça marchait cependant avec Windows Hello sur PC.

bobmorane06 commented 8 months ago

Avant qu'ils ne changent de domaine pour boursobank, j'avais enregistré mes clés chez eux. Yubico, modèle Security Key et Yubikey 5. Les deux modèles n'étaient pas entièrement reconnus, donc la clé marchait pour la connexion au compte, mais elle n'était pas considérée comme sûre pour les opérations sensibles, donc assez limitée. ça marchait cependant avec Windows Hello sur PC.

Merci pour l'info :-(

Mello7sh3i commented 8 months ago

Avant qu'ils ne changent de domaine pour boursobank, j'avais enregistré mes clés chez eux. Yubico, modèle Security Key et Yubikey 5. Les deux modèles n'étaient pas entièrement reconnus, donc la clé marchait pour la connexion au compte, mais elle n'était pas considérée comme sûre pour les opérations sensibles, donc assez limitée. ça marchait cependant avec Windows Hello sur PC.

Merci pour l'info :-(

ça a peut-être évolué depuis, mais à l'époque, l'implémentation était très imparfaite. Ça peut valoir le coup de demander directement la liste des modèles qui sont entièrement supportés, mais ça ne m'étonnerait pas que ce soit spécifiquement optimisé pour windows hello, puisque yubico est quand même la référence.

Lors de la mise en place de DSP2 (double authentification), certaines banques ont mis en place des solutions alternatives (Par exemple : Digipass) pour ceux qui n'avaient pas un smartphone. Pareil, ça peut toujours valoir le coup de demander, mais les banques qui n'en offrent pas vous diront clairement d'aller voir ailleurs à la fin.

cvlc12 commented 8 months ago

Il est également possible d'écrire directement aux développeurs par la fonction "Menu/Mes commentaires sur l'appli". Je vous propose le message type suivant :

Je souhaite exprimer ma préoccupation quant à la récente annonce de la fin de support pour le système d'exploitation GrapheneOS dans votre application bancaire. GrapheneOS est reconnu pour sa robustesse en matière de sécurité, offrant une protection accrue contre les menaces potentielles. En tant qu'utilisateur soucieux de la sécurité, je valorise les avantages que GrapheneOS apporte, notamment son renforcement de la confidentialité, la gestion des autorisations granulaires et les mises à jour régulières. Ces caractéristiques essentielles contribuent à créer une expérience utilisateur sécurisée et fiable. Je vous encourage vivement à considérer l'intégration continue du support pour GrapheneOS afin de répondre aux attentes croissantes des utilisateurs soucieux de leur sécurité. Je vous invite à consulter le guide d'attestation de compatibilité de GrapheneOS via le lien suivant : https://grapheneos.org/articles/attestation-compatibility-guide

@pled @d4rklynk @arthuragone @davidv92 @bobmorane06 @timefrance @5C4R4B3 @Saroumane @Mello7sh3i @Cl00e9ment

pled commented 8 months ago

Aurions-nous été entendus ? Je n'ai plus le message ce matin... version 7.10.1 com.boursorama.android.clients versionCode 127821136 Installed: 6 avr. 2023; 22:20 Updated: 27 janv. 2024; 14:58