PROJET AUTOBLOG


BohwaZ

Site original : BohwaZ

⇐ retour index

Mise à jour

Mise à jour de la base de données, veuillez patienter...

Script GreaseMonkey pour Hello Bank qui supprime le clavier virtuel

jeudi 20 novembre 2014 à 19:07

Comme je l'ai mentionné précédemment, les claviers virtuels des banques ne servent à rien.

Voici à titre d'exemple un script très simple qui supprime le clavier virtuel du formulaire de connexion Hello Bank pour le remplacer par un simple champ de type mot de passe : hellobank.user.js

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 !

Cartes topographiques OpenStreetMap sur Android

mardi 28 octobre 2014 à 18:02

Si la Nouvelle-Zélande propose l'intégralité de sa cartographie en licence Creative Commons, dans les autres pays du monde on en est bien loin encore. Et notamment en France où l'IGN passe son temps à dilapider l'argent public en envoyant ses salariés faire la morale sur les forums de randonnée et vélo quand quelques utilisateurs donnent des astuces pour pouvoir récupérer les cartes du site GéoPortail sur son smartphone ou GPS. Tout ça pour des cartes de mauvaise qualité, souvent fausses depuis des années. Bon c'est un choix. Un choix stupide.

Donc en attendant que la France et les autres pays du monde réalisent qu'on est au XXIe siècle on peut toujours compter sur l'extraordinaire projet OpenStreetMap et ses merveilleux contributeurs (dont votre serviteur).

Mobile Atlas Creator (MOBAC pour les intimes, paquet mobile-atlas-creator dans Debian depuis Wheezy) est un petit logiciel (en Java hélas) qui permet de sélectionner une zone depuis une carte « en tuiles » en ligne et l'exporter en de multiples formats pour des nombreux logiciels, et même en PDF pour l'imprimer sur du papier. Il est fourni par défaut avec la configuration pour les différentes couches OSM et il est possible de le configurer pour qu'il gère aussi les cartes GéoPortail.

Sur Android le meilleur logiciel libre pour faire de la navigation avec OSM est le bien-nommé OsmAnd, ça marche pas mal, même si comme la plupart des logiciels Android (je vous reparlerais à l'occasion de l'horreur que représentent 99% des applications Android) il semble envoyer des données sur des serveurs distants sans vous en demander l'autorisation. Je vous conseille de l'installer en utilisant le magasin d'applications libres F-Droid, une bonne alternative à ce mouchard de Google Play Store.

OsmAnd

OsmAnd permet de télécharger directement depuis l'application la cartographie vectorielle du monde entier (par pays ou région), ainsi que les courbes de niveau, des voix pour la navigation, etc. La navigation fonctionne correctement, même si c'est moins fiable que Nokia HERE. L'interface est par contre assez obscure, rien que rechercher une adresse est compliqué, il n'y a pas vraiment de champ texte libre où on peut rentrer ce qu'on veut. Pour la rando on peut visualiser la carte, mais ce n'est pas vraiment le plus adapté.

Poursuivons avec un logiciel qui n'est pas libre, mais qui est gratuit et qui ne contient pas de publicité. Il s'agit du véritable couteau-suisse de la cartographie sur Android : OruxMaps. Non content de permettre de visualiser des cartes à tuile en ligne depuis OSM et autres Google Maps (et de les télécharger directement pour un usage hors-ligne) il sait aussi lire de nombreux formats de fichiers cartographiques pour une utilisation hors ligne. Ça va du format OZF2 (utilisé par OziExplorer sous Windows), aux cartes fournies avec les GPS de marque Garmin jusqu'aux cartes vectorielles au format MapsForge. Ce dernier est particulièrement utilisé pour les cartes OpenStreetMap.

OruxMaps

On peut ainsi télécharger des cartes OSM du monde entier au format vectoriel depuis le site OpenAndroMaps. Ces cartes incluent les courbes de niveaux sans rien avoir à faire de plus. Je conseille d'utiliser avec ces cartes le thème Elevate proposé sur le même site. Cela donne des cartes très claires et agréables à lire, sans compter l'utilité des sous-thèmes. Par exemple le sous-thème "Cycling" va afficher de manière plus visible les pistes cyclables et les itinéraires VTT (en orange). C'est franchement excellent.

Mais OruxMaps ne s'arrête pas là, il permet aussi de voir les cartes en 3D, de créer et afficher des itinéraires (GPX, KML et KMZ), mesurer la distance à vol d'oiseau entre deux points sur la carte, enregistrer et voir des POI, et encore des tonnes d'autres fonctions sans compter la possibilité de personnaliser l'intégralité de l'interface. Bref c'est à mon sens le meilleur logiciel pour visualiser et exploiter des cartes à pied, en vélo ou autre. L'interface est un peu austère et tarabiscotée au premier abord mais une fois qu'on a suivi un tuto c'est tout de suite plus simple.

Rando-do

mardi 21 octobre 2014 à 15:21

Randonnée.

Lampe LED USB 3 grammes

mardi 21 octobre 2014 à 15:21

Si vous vous baladez déjà avec un panneau solaire et une batterie rechargeable USB, ou un smartphone qui permet l'USB OTG, voici une petite lampe à LED qui se branche en USB.

Poids : 3 grammes. Dispo sur ebay pour ~1,50 € l'unité.

Ça se présente sous la forme d'une petite clé USB nue (pas de plastique protecteur, juste une carte avec les composants). D'un côté les composants et les LED, de l'autre une surface plate qui sert de bouton tactile. Il y a un trou pour attacher une lanière / porte-clé. La clé peut être inséré dans les deux sens dans une prise USB (mais pourquoi est-ce que c'est pas pareil avec toutes les prises USB ?!).

Une fois branchée elle ne s'allume pas, il faut appuyer une fois sur le bouton tactile pour qu'elle s'allume. Un nouvel appui court sur le bouton et la lumière s'éteint progressivement. Quand les LED sont allumées un appui long permet de réduire l'intensité, puis un nouvel appui long permet d'augmenter. Ainsi on choisit assez finement l'intensité de la lumière. L'intensité maximale est très puissante, je déconseille de regarder directement les LED. Le faisceau est large, un peu comme le flash de l'appareil photo d'un téléphone portable (forcément y'a pas de lentille). Tant que la clé reste branchée elle mémorise le dernier réglage d'intensité, donc quand on la rallume c'est à la dernière intensité qu'on a utilisé. Si on débranche la clé elle oublie l'intensité choisie et se remet au max au prochain rallumage.

L'électronique semble de bonne qualité à première vue, ça semble assez solide, les LED chauffent légèrement à puissance maximale mais rien de bien méchant, aucun risque de se brûler en touchant directement les LED. Enfin si on veut un peu protéger le circuit des projections d'eau on peut entourer la clé de scotch : le bouton tactile fonctionne toujours avec plusieurs épaisseurs de scotch.

Au maximum la clé consomme environ 150 mA et à l'intensité minimale (suffisante pour lire de nuit) moins de 10 mA, donc entre 14 heures et 220 heures d'autonomie sur une batterie-tampon 2200 mAh en théorie. Entre 70 et plus de 1000 heures sur une batterie-tampon de 10400 mAh !

La clé fonctionne même avec un faible voltage : sur un panneau solaire sous les nuages, qui ne génère que 3 volts, les LED s'allument à l'intensité minimale. Du coup ça fonctionne aussi avec un smartphone en USB OTG.