PROJET AUTOBLOG


BohwaZ

Site original : BohwaZ

⇐ retour index

L'illusion de la fausse sécurité : les banques françaises ont tout faux

mercredi 19 novembre 2014 à 04:12

Quand on a une expérience dans la sécurité informatique, il ne passe pas un jour sans que l'on soit horrifié par le manque de sécurité de ce que l'on peut rencontrer au quotidien, et encore plus des éléments les plus importants. Un exemple criant sont les banques. Malgré ce qu'elles veulent vous faire penser, non seulement leurs sites sont parfois des passoires pleines de failles, mais plus grave ce sont les procédures de sécurité qu'elles conçoivent qui sont dépourvues de la moindre réflexion. Ces entreprises ont-elles un jour consulté un expert en sécurité, ou même ne serait-ce qu'une personne un peu intelligente ? On peut en douter, et on va voir qu'elles feraient mieux d'embaucher des gens compétents le plus vite possible.

La plupart des banques de nos jours sécurisent l'accès aux comptes de leurs clients à l'aide de plusieurs techniques.

La CB « sécurisée » (SecureCode)

Déjà il y a le paiement par carte bleue, qui a maintenant une procédure dite « sécurisée ». En réalité dans le meilleur des cas la banque vous enverra un SMS avec un code à usage unique qu'il vous faudra retaper sur le site. Au pire des cas le site de paiement vous demandera… votre date de naissance. Inutile de dire que si vous vous faites voler votre portefeuille, celui-ci contiendra sans aucun doute une carte d'identité, passeport ou carte Vitale qui fournira ladite date de naissance. Et même sans se faire voler son portefeuille, on ne peut pas dire que ce soit une information particulièrement secrète : elle figure sur votre compte facebook, sur votre CV, sur les dizaines de formulaires que vous remplissez chaque année, etc. Bref il n'y a aucune raison valable d'utiliser la date de naissance pour valider une transaction, cela ne prouve en rien que c'est bien vous, et c'est ridicule. Et même si la banque vous demande de confirmer la transaction par SMS, je vous laisse imaginer l'utilité de la manœuvre si vous vous faites voler portefeuille et téléphone en même temps. Sans même mentionner les risques qu'une application installée sur votre smartphone transmette tous vos SMS à un attaquant (vous savez le fameux jeu que vous avez utilisé 2 minutes qui demande à lire vos SMS ? Et bien il transmet tous vos SMS à un serveur distant.).

Les ordres de virement

La seconde sécurité est la confirmation des opérations effectuées sur le site de la banque. Par exemple pour réaliser un virement ou ajouter un bénéficiaire de virement. C'est la même méthode que précédemment, avec un SMS contenant un code unique à retaper sur le site web. Et donc avec les même risques. Certaines banques ne demandent d'ailleurs que de ré-entrer son mot de passe, ce qui n'est pas non plus beaucoup mieux. Mais rassurez-vous, certaines banques exigent encore de leur envoyer un courrier papier pour ajouter un bénéficiaire. Et si, c'est possible, même en 2014. Visiblement ces banques pensent que falsifier une signature est plus difficile qu'intercepter un SMS. Laissez-moi rire. Si au moins ces banques vérifiaient les signatures d'ailleurs. Je vous laisse tenter l'expérience, la prochaine fois que votre banque requiert votre signature, de griffonner n'importe quoi. Vous serez surpris de constater que ça passe toujours. La logique est simple : vérifier ça prend du temps, donc ça coûte cher, donc ce n'est pas fait. Ça coûte moins cher de traiter les réclamations avec les clients qui se font abuser.

Enfin, certaines banques sont tellement incompétentes qu'après avoir mis en place l'ajout de bénéficiaire de virement par Internet, elles font marche arrière au prétexte pour revenir au papier, en prétextant que cela a occasionné des tentatives de fraudes. Sérieusement. « OK les gars on n'est pas doués pour sécuriser nos opérations en ligne, on va revenir aux opérations physiques, c'est la même merde mais au moins on a l'habitude. » Ah, ça bosse dur là-bas dites donc.

On pourrait se dire que logiquement que quand même c'est mieux dans le cas des virements d'avoir une confirmation par e-mail, car si on peut se faire voler son téléphone, on ne peut pas nous voler notre code client et mot de passe, donc pas d'accès aux comptes. Mais non, c'est la même chose, car l'accès aux comptes est lui-même complètement déficient à tous les points de vue. Et pour combler leur incompétence crasse, les banques essayent de vous faire croire qu'elles maîtrisent en vous montrant de jolies choses, et par exemple les claviers virtuels.

Les identifiants

Commençons par le plus gros problème des banques françaises : la quasi-totalité d'entre elles donnent un mot de passe qui n'en est pas un. Ce n'est pas un mot, c'est un code. Le plus souvent à 6 chiffres seulement. Quand ce n'est pas 4 chiffres ! C'est ridicule, cela ne permet pas de choisir un mot de passe de qualité, et la plupart des gens utilisent leur date de naissance ou de mariage. L'identifiant ne vaut pas mieux, c'est souvent simplement le numéro du compte ou du client.

Le clavier virtuel

Il y a eu à une époque une psychose sur les keyloggers sous Windows qui enregistreraient les identifiants bancaires. Depuis cette époque toutes les banques ont réalisé que leur système d'authentification n'était pas sécurisé du tout. Mais au lieu de passer à quelque chose d'un peu plus sérieux comme du two-factor par exemple, elles ont simplement rajouté une horrible rustine sur le tout. Cette rustine c'est le clavier virtuel. Mais si vous en avez déjà vu : ce sont ces fameux claviers numériques où il faut cliquer sur les chiffres plutôt que de les taper au clavier. Les keyloggers ne peuvent donc plus enregistrer les touches tapées au clavier.

Niveau expérience utilisateur c'est une catastrophe : non seulement ces claviers sont inutilisables par les non-voyants ou mal-voyants, mais ils sont une véritable plaie à utiliser sur mobile où il est quasiment impossible de rentrer le code d'accès correctement dès le premier essai. Enfin on ne peut plus utiliser le gestionnaire de mots de passe de son navigateur ou OS, qui est probablement bien plus sécurisé que le site de la banque, et on doit donc perdre du temps à retaper son code d'accès à chaque connexion.

Enfin niveau sécurité, si le keylogger ne peut plus enregistrer votre frappe au clavier, n'importe qui jetant un œil sur votre écran (dans un cybercafé, au travail, sur son mobile dans les transports en commun) saura non seulement votre identifiant qui est affiché en clair, mais aussi votre code d'accès en regardant les mouvements de votre curseur de souris.

Et vous ne savez pas le pire ? En à peine quelques semaines, de nouveaux keyloggers sont apparus. Ceux-ci enregistrent donc maintenant également les clics de souris. Certains font de la reconnaissance de caractère pour décoder le chiffre que vous cliquez, mais d'autres vont au plus simple : ils enregistrent une capture d'écran de la zone de l'écran qui entoure le curseur au moment du clic.

Autrement dit, le gain en sécurité de ces claviers est simplement nul. Les seuls qui sont emmerdés sont les clients. Leur seule utilité est marketing : elle veut montrer aux clients que leur sécurité est en de bonnes mains. Tout comme au siècle précédent les banques devaient avoir de beaux bâtiments imposants, avec du marbre et de grands espaces. Tout cela pour que les clients aient confiance et mettent leur argent dans les banques, en ayant l'impression que la banque était riche et pouvait rembourser les avoirs déposés. Mais tout cela n'est que du bluff. Tout comme les banques ne sauraient rembourser les avoirs qui leur ont été confiées, elles sont incapable de garantir la sécurité de vos comptes.

Par curiosité j'ai analysé le code des claviers virtuels de plusieurs banques françaises, et je dois dire que c'est encore pire que ce que je pensais. Dans une très large majorité des cas le principe est très simple : une image contenant le clavier (le tableau avec les chiffres) est affichée, et quand on envoie le formulaire on envoie en réalité la position du clic. Parfois la position est de type coordonnées X/Y dans l'image, parfois c'est un chiffre qui reprend l'affichage des chiffres du clavier.

Dans tous les cas j'ai réussi à créer un court script qui détermine le chiffre cliqué et permet de retrouver le code d'accès entré. En quelques dizaines de minutes seulement. Et comme toutes les banques fonctionnent de façon similaire, il est très rapide de faire un script qui permettrait de décoder directement les chiffres cliqués. Pas besoin de keylogger, il suffirait d'une extension Firefox ou Chrome compromise… Et quand on sait l'absence de vérification sérieuse des actions et du code des extensions publiées sur les magasins d'extension de ces deux navigateurs, il y a de quoi sérieusement s'inquiéter.

Et si seulement le tableau s'arrêtait là… Mais en réalité il n'y a pas une procédure pour rattraper l'autre. Car si un attaquant ne s'attaque pas à votre machine pour récupérer votre code, il peut souvent générer un nouveau code d'accès via la procédure de « code perdu » qui n'est pas plus sécurisée. Souvent il suffit de la date de naissance, du numéro de téléphone, et éventuellement d'une autre information personnelle disponible sur votre carte d'identité comme le lieu de naissance ou l'adresse postale, et après un SMS de confirmation vous pourrez changer le code d'accès aux comptes du client. Certaines banques renvoient le code secret par courrier seulement, car comme on l'a vu, le courrier papier est la forme de communication la plus sécurisée qui soit…

Mention spéciale à certaines banques qui à cette occasion vous proposent (case pré-cochée) de recevoir du spam par email et SMS. Normal.

En conclusion je recommande de ne pas utiliser les claviers virtuels quand c'est possible (certaines banques permettent de le désactiver, mais parfois il faut utiliser un script GreaseMonkey) : ils n'apportent aucune amélioration notable de sécurité et emmerdent plus qu'autre chose. Si vous êtes réellement concerné par la sécurité de vos comptes en ligne, je vous invite à contacter votre banque afin de lui suggérer de mettre en place un système d'authentification réellement sécurisé. Il est incroyable que de nos jours l'accès au compte bancaire soit moins sécurisé que l'accès au compte Gmail !