La sécurité! TOUS concernés

La sécurité! TOUS concernés

ou

La sécurité! TOU-TE-S concernées

??
pour que vraiment toutes les personnes se sentent impliquées et prises en compte.

1 « J'aime »

Personnellement j’ai du mal à faire confiance a quelqu’un qui me demande mon mail, pour savoir si celui à été piraté. J’aurai plutôt l’impression que c’est le meilleur moyen de me le faire pirater.
C’est une sensation toute personnelle, qui ne repose sur rien de concret. Mais j’aime pas cette sensation, et je n’aimerais pas que césium ou duniter communique mon adresse mail à quiconque.

De plus la sécurité sur Duniter n’a me semble-t-il rien a voir avec l’adresse mail.

J’en reviens à : il faut en parler aux utilisateurs.
Il y a un magnifique explicatif sur cesium.app, mais je suis pas sur que tout le monde prenne le temps de le lire.
DONC ceux qui savent, doivent sensibiliser les autres.

4 « J'aime »

Qui a dit qu’il fallait utiliser une quelconque adresse mail lors de la création d’un compte Ğ1 ? C’est une faille de sécurité d’en utiliser une. À lire : https://forum.duniter.org/t/recommandations-de-securite-v3-a-lire-avant-de-creer-votre-compte-g1/1829

2 « J'aime »

C’est surement intéressant, mais dommage qu’il faille encore ouvrir un compte de plus sur un nouveau forum (pas de « passerelle » depuis ici…)
J’essaie me tenir informé et de participer, mais c’est très chronophage : j’ai aussi une vie « hors numérique » :wink:

Au temps pour moi, ce n’était pas le bon lien : https://forum.duniter.org/t/recommandations-de-securite-v3-a-lire-avant-de-creer-votre-compte-g1/1829

Celui-ci est totalement public.

1 « J'aime »

Bonjours à tous les humains,
J’aimerai vous faire part des résultats d’une attaque que j’ai mené sur Cesium.
Quand j’ai compris que le client dérivait la clé privée à partir de 2 mots de passe, j’ai eu envie de tester quelque chose: une attaque par brute force.
Avec l’API de Duniter, on peut télécharger la liste des clés publiques des membres en une seule requête HTTP. J’ai aussi téléchargé une wordlist de mots de passe français trouvée sur Internet, dont j’ai filtré tout les MDP de moins de 8 charactères (la limite de Cesium). Ensuite, j’ai codé un petit programme Rust qui génère les clés correspondant aux MDP de la wordlist et qui les compare avec celles de la liste. Devinez quoi, j’ai cracké 3 comptes membres:

Soudan Philippe, DXF5FnVDnnwrvEJqTynxfCv5o2o8id9henmzKZw319Qh
Id: c*****c
Mdp: c*****c

Perrot Elisabeth, 6kS1SEGWr16amWYBMd8JuCuFW8vTQC8HvBBHpGZNq4vj
Id: l*****e
Mdp: c*****m

Aubrun Elisabeth, 67nTY2oTHP7KDPbgGpqJgzSMYVwHvrd53bDv1KQCtNn4
Id: n*****e
Mdp: b*****e

J’en ai donc évidemment profité pour me certifier mon comtpe perso: 2Mm73GqbYYTotpBFrbRZwG8hLecyerfdxXPQeJBbAJKQ
Voilà j’ai maintenant 3 certifications alors que je n’ai jamais rencontré la moindre personne utilisant la June de toute ma vie.

Je vous avoue que j’ai un peu le seum de pas avoir cracké 2 comptes de plus, mais c’est quand même un bon résultat. Ma wordlist comprenais seulement 6000 mot de passes (36M de possibilités) et j’ai utilisé un laptop qui mettais environ 80ms pour tester une clé. En reproduisant l’attaque avec plus de moyens, je pense que l’on pourrait facilement cracker beaucoup plus de comptes.

Bref tout ça pour dire que les développeurs de Césium ont vraiment fait du caca. Avant Cesium, je n’avait jamais vu de wallet générer la clé privée à partir de MDP. Et c’est pour une bonne raison: il ne faut jamais faire confiance au humains pour générer de l’entropie forte. Les clés privée doivent toujours être générées aléatoirement, et non entièrement dérivées à partir de valeurs choisies par l’utilisateur.

9 « J'aime »

Merci pour cette alerte par l’expérience.

La prochaine génération de clients utilisera des mnemonic aléatoires pour régler ce problème.

J’avais fait un bruteforce en Rust bien optimisé et multithread, si ça t’intéresse : tools / Ğ1force · GitLab (mais qui ne gère pas le dictionnaire)

Oui ce serai une bien meilleure idée.

Intéressant, tu as eu des résultats ?

Je n’ai cherché que caractère par caractère, donc non aucun résultat, et je me suis dit que ça prendrait trop de temps de concevoir un bon bruteforce avec dictionnaire + substitutions. Mais le programme peut servir de vanitygen efficace (avec recherche par regex).

Très bonne occasion d’expliquer pourquoi la la licence n’est pas un examen, mais bien une protection de tous les membres passant par chacun.
En tout cas, une bonne démonstration que la june est toujours au stade expérimental et que le travail des devs pour un Duniter next-gen est indispensable.

2 « J'aime »

Bonjour, je ne suis pas développeuse et je ne comprends pas toujours vos termes MAIS
lorsque j’ai créé mon compte portefeuille on m’a conseillé de choisir un id et mdpasse facile à reproduire (et surtout à ne pas perdre car irrécupérables) car demandés souvent quand on navigue sur Césium.
Le problème est qu’en basculant ce compte portefeuille en compte membre je n’ai pas été avertie des risques du manque de sécurité… Plus tard, lors d’un Gmarché on m’apprend qu’il vaut mieux créer 2 comptes : 1 « portefeuille » (id et mdp simples) et 1 « membre » différent pour se faire certifier (avec au moins 40 caractères dans phrase de passe pour éviter les hacks).
On me conseille donc de révoquer mon compte pour en créer un nouveau et re-demander mes certifications…
Quelles sont les conséquences ?
Y a-t-il un moyen plus simple de sécuriser le compte actuel sans le révoquer ?

Malheureusement non, le compte (et donc sa clé publique) est créé via les id et mot de passe.
Le conseil des 2 comptes est donc la meilleur option donc révocation du premier.
Je comprends que révoquer un compte en créer un second et redemander aux certificateurs de recommencer, peut paraître chiant, mais ça sécurise d’autant plus la June.
Le message N°22 de ce post devrais faire prendre conscience du problème à tous.
En plus ça interpellera aussi vos certificateurs qui n’étaient peut-être pas au courant.

2 « J'aime »

Merci Tchois, la réponse est claire et précise
en effet certains certificateurs vont sûrement apprendre quelque chose…
Petite question quand même : comment ne pas perdre les G1 déjà cumulées ?
Bonne journée

1 « J'aime »

Même en révoquant le compte, celui-ci sera toujours accessible en tant que simple portefeuille, vous pourrez donc faire des achats avec ou recevoir des junes dessus.
Après si vous préférez, vous pourrez toujours transférer le solde de ce compte révoqué sur le nouveau. :wink:
Amicalement,
Francis

2 « J'aime »

Super ! merci !
j’en ai parlé à un de mes certificateurs, qui m’avait conseillé au début, de choisir des ids faciles pour mon compte portefeuille, sans préciser qu’il valait mieux créer un nouveau compte sécurisé pour le cpte membre.
Le problème est qu’il a aidé beaucoup de personnes à procéder de cette manière (pour faciliter l’introduction de nouveaux venus) et que ces gens ont été certifiés par la suite (donc passés en cpte membre !)…
En tant que développeurs auriez-vous une idée de code pour palier à ce type de faille potentielle ?

1 « J'aime »

En tant que développeurs auriez-vous une idée de code pour palier à ce type de faille potentielle ?

Comme je le disait plus haut, les wallet devraient générer la clé privée aléatoirement et la stocker quelque part (dans un fichier chiffré ou sur un hardware-wallet par exemple). La clé privée ne devrait en aucun cas être dérivée uniquement à partir de données à faible entropie, comme des mot de passes. L’ideal étant que la clé dépende à la fois d’une suite d’octets générée aléatoirement et aussi d’une passphrase (2FA).

Perso, j’ai créer mon compte sur Cesium avec des mot de passes aléatoires que j’ai stocké dans un gestionaire de mot de passe.

1 « J'aime »

Bon, là, je vous laisse entre vous… Merci pour vos réponses très instructives !

1 « J'aime »

Bonjour @Spiranne13 :slightly_smiling_face:

Je ne suis pas développeur du tout, je « Bidouille »…
En ce qui concerne les pass Phrases, il existe divers méthodes, mais par exemple tu peux tout simplement utiliser un générateur de mots de pass fort comme par exemple sur ce site => Générateur de mots de passe | LastPass et tu choisis une longueur minimale de 20 caractères tout mélangé et tu télécharges sur ton ordinateur un logiciel de stockage de mots de passe comme KeePass par exemple https://keepass.fr/

Sinon quand je parle de pass phrase, tu peux très bien te créer 2 phrases courtes que tu sais que tu vas retenir, et tu y inclus des caractères spéciaux, des majuscules et minuscule, des chiffres, et tu peux même mettre les espaces entre les mots, Césium les accepte !

Exemple : Mais où ai-je encore mis mes clefs ?!
Devient par exemple : $Mais où ai-je&Encore mis?!Mes^ 632Clefs!*

Bien sûr comme à tout le monde je te conseille vivement de conserver tes pass phrases à plusieurs endroits comme par exemple, sur un carnet que tu gardes au fond du tiroir, sur un logiciel comme KeePass et sur un Document texte que tu gardes sur une clef USB…

Voilà en espérant que cela puisse t’aider.
Amicalement,
Francis :blush:

1 « J'aime »

Merci fdrubigny
pour ceux/celles qui n’avaient pas d’idées.
Je ne savais pas pour les espaces mais bon à savoir !
En ce qui me concerne, j’ai plus confiance en mon petit carnet que dans le numérique…
Bonne journée

1 « J'aime »

D’ici à un an les prochaines versions des logiciels ne laisserons plus le choix des phrases de passe. Ce qui supprimera cette faille, en attendant i faut faire confiance aux humains pour être sérieux et créer des comptes sécurisés.

2 « J'aime »