Cesium : Bug potentiellement majeur. Appel à financement et contribution

Bonjour,

Je vous sollicite pour financer la correction d’un bug majeur de Cesium, qui permettrait à quiconque de bloquer l’économie Ğ1. Plus de détails plus bas.

Si vous êtes dev JavaScript, je vous propose également de corriger ce bug pour gagner la monnaie de ce financement participatif.

Pour participer :
GcjRNKNjcGmMdcGjki1DVo5YDrXcRHPHLGBMKYVoZrV8

Contexte

J’ai découvert en septembre une faille de Cesium qui me permet de bloquer les dépenses de n’importe quel compte utilisé depuis Cesium. Cette faille permet à toute personne possédant quelques Ğ1:

  • De bloquer le compte d’une personne ou institution en particulier, pour en obtenir quelque chose,
  • Et donc, de bloquer tous les comptes ayant eu une activité : bloquer l’économie Ğ1.

J’ai signalé ce bug aux devs de Cesium, qui n’ont pas apporté de correction aujourd’hui. Devant l’urgence de cette résolution et mon incompétence en Javascript, je lance cet appel à contribution financière et logicielle.

Modalités

Le financement participatif vise 700 DU Ğ1. Parmi ces 700 :

  • 400 sont destinés à la dev, ou au dev, qui corrigera le bug. Ils seront versés après que le correctif ait été mergé.
  • 100 me sont destinés, pour la découverte du bug, l’insistance auprès des devs Cesium et l’animation de ce financement.
  • 100 sont destinés au développeur de Cesium qui relira le code et publiera une version officielle testée de Cesium
  • 50 sont un bonus pour læ dev, si la correction de bug est faite avant le 21 décembre 2019 à minuit.
  • 50 sont un bonus pour le développeur Cesium, si la publication de la version officielle de Cesium a lieu dans les 2 semaines qui suivent la correction de bug.
  • Si les bonus ne sont pas utilisés, ils financeront les noeuds et le développement logiciel de Duniter.

Les devs qui souhaitent corriger ce bug sont invités à se faire connaître sur le forum technique. Si le financement participatif n’est pas atteint à publication du correctif, un premier paiement aura lieu. Le deuxième paiement aura lieu lorsque le financement aura été rempli. Si un.e dev souhaite corriger ce bug, mais trouve le prix inadapté, qu’iel le signale , je choisirai en fonction des différentes offres proposées.

Je serai également disponible sur le forum technique s’il y a des points que vous ne comprenez pas.

Comment payer ?

La clef publique de paiement est :

GcjRNKNjcGmMdcGjki1DVo5YDrXcRHPHLGBMKYVoZrV8
Elle est à utiliser autant que possible depuis votre client local : Silkaj, Cesium, Sakia sur votre ordi/ordiphone, et non depuis un Cesium sur le web.

En espérant vous avoir convaincu de l’importance de cette correction de bug, et de l’urgence à la corriger,


Partagez ce message !

Page web :
https://g1pourboire.fr/correction-bug-cesium.html

Image à incruster :

<img src=« https://wotmap.duniter.org/iframe/image.php?pubkey=GcjRNKNjcGmMdcGjki1DVo5YDrXcRHPHLGBMKYVoZrV8&target=700&title=Cesium%20%3A%20correction%20d’un%20bug%20majeur&unit=relative&node=duniter.moul.re&start_date=2019-11-01&display_pubkey=true&display_qrcode=true&logo=cesium » />

Fediverse : Matograine: "Bonjour ! Je m'adresse aux utilisateurices de la…" - Mastodon.zaclys.com

6 « J'aime »

Belle initiative!!

La barre de progression de @paidge est excellente!
Aurait-elle la capacité dans son code de savoir où elle s’exécute?
On pourrait combiner toutes les progressions en cours sur un site qui les répertorient…

Le BUG BOUNTY PALACE :wink:

Oula, petite précision : il ne s’agit pas d’un « compte bloqué », puisque le problème n’est lié qu’au logiciel client.
Il s’agit d’un blocage de la « lecture du compte », mais la Blockchain n’est pas impactée.
Ainsi, utiliser un autre logiciel client reste tout à fait possible.
Par ailleurs, le bug est vraiment simple à corriger…

5 « J'aime »

C’est une excellente nouvelle !

Le prix fixé pour ce financement correspond bien plus à l’aspect critique du bug qu’à sa complexité, que je n’ai pas les compétences de juger.

1 « J'aime »

La version v1.4.12 de Cesium corrige le soucis.

9 « J'aime »

Merci pour cette précision, mais la version en ligne a télécharger reste cesium-destok-V1.3.11… . deb pour linux sous debian…
Comment fait-on pour mettre à jour ? Merci.

Bonjour,

Les tests sur la1.4.12 ont révélé au moins un autre bug gênant, mais moins critique. Elle n’est pas encoreprête pour la publication.

edit - si vous décidez de la télécharger et de l’utiliser, veuillez garer en tête que c’est une version en test, avec au moins ce bug de repéré :

  • Lorsqu’un compte a reçu une seule fois de la monnaie et est utilisé seulement en dépense, il faut relancer Cesium entre chaque dépense.

Si vous repérez des bugs, vous pouvez les faire remonter sur Cesium > Nouvelle version 1.4.12 (pré-version) - Cesium - Duniter Forum ou sur le gitlab : https://git.duniter.org/clients/cesium-grp/cesium/issues après avoir vérifié qu’ils n’ont pas été déjà repérés.

1 « J'aime »

Merci !
oui il me semble logique de remonter les bugs que de garder le silence !
et oui, cesium en ligne c’est peut-être… ce qu’il y a de plus sécurisé :slight_smile:

Vous rigolez ? Cesium et Cesium en ligne sont le même logiciel. La différence est que dans un cas, vous utilisez un programme présent sur votre ordinateur/smartphone, dans l’autre cas vous faites confiance à un serveur potentiellement corompu pour vous fournir le logiciel.

C’est un comportement risqué, et une mauvaise habitude, d’utiliser un Cesium en ligne. En particulier, c’est un comportement extrèmement risqué d’entrer ses identifiants membre dans un Cesium en ligne, pour vous et pour tous les membres de la Ğ1.

Plusieurs discussions expliquent pourquoi, je vous laisse chercher.

Ne plaisantez pas avec ça et installez Cesium depuis Cesium.app ou depuis le GitLab.

2 « J'aime »

Mais avec la version « web » qu’on trouve sur cesium.app, on part bien de son ordi, non ?

Je m’en sers sur un vieux 32bit qui me sert encore de temps en temps…

oui. la version web.zip depuis son ordi, c’est bon. La version web en ligne, non.

Merci Matograine,
Perso j’utilise ce lien : https://g1.duniter.fr/#/app/home
Si je comprends bien, cela veut dire que je me loguer n’importe où pensant être sur un serveur de confiance ?
et qu’il serait préfable de passer via un logiciel, même en étant sous Linux ?

3 « J'aime »

oui.

1 « J'aime »

C’est sur ! :slight_smile: Surtout sous Linux, car la version desktop (fichier .deb) fonctionne bien.
Redis moi si pb.

1 « J'aime »

Ne serait-il pas bon de faire en sorte que les comptes membres ne puissent plus se connecter via Césium Web? Y aurait-il un inconvénient technique ou social à créer cette différence pour sécuriser notre monnaie?

C’est un autre projet (brider Cedium-web) qui est en préparation.

Oui @bpresles a fait du boulot là dessus, mais la revue de code m’invite a refaire d’une autre façon, pour éviter les régressions trop importantes.
Au moins, j’ai une base de travail

Du coup, que va-t-il être fait des 5077,36 Ğ1 récoltées ?

exit scam :face_with_symbols_over_mouth: euh non :sweat_smile:

La version 1.5.2 corrige le bug relevé sur la 1.4.11 concernant la dépense de sources uniques.

J’ai testé la semaine passée que des sources avec des conditions composées ne bloquent pas les transactions, donc le bug est résolu. (je n’ai cependant pas vérifié si des conditions SIG + CSV/CLTV peuvent être utilisées après le délai prévu)

Je vais envoyer la monnaie reçue à qui de droit, au prorata des sommes indiquées au début du sujet.

Dès que j’ai fini ce que je fais sur Silkaj, promis :innocent:


Paiement :

Sur les 700DU demandés, seuls 502.21 ont été récupérés. Le paiement sera réparti comme suit :

sommes prévues (DU) pourcentage sommes réelles (Ğ1) destinataire
700 100% 5077.36 total
400 57.14% 725.34 Kimamila (correction du bug)
50 7.14% 362.67 Kimamila (bonus correction du bug)
100 14.29% 725.34 Kimamila (merge dans Cesium et publication d’une version testée)
100 14.29% 725.34 Matograine (rapports de bug et création du financement)
50 7.14% 362.67 Devs + noeuds (bonus périmé : version testée publiée après le délai de 2 semaines)

Soit 394.59 DU versés à @kimamila pour la correction de ce bug.

silkaj -p g1.librelois.fr:443 tx --output 38MEAZN68Pz1DTvT3tqgxx4yQP6snJCQhPqEFxbDk4aE:CmFKubyqbmJWbhyH2eEPVSSs4H4NeXGDfrETzEnRFtPd:EUt3FqkmpUg8UdyrB2dGXtZoTo7GRXadEkHagL2q2AKb --amount 3989.35:725.34:362.67 
Please enter your Scrypt Salt (Secret identifier): 
Please enter your Scrypt password (masked): 
╒════════════════════════════════╤══════════════════════════════════════════════╕
│ pubkey’s balance before tx     │ 5077.36 Ğ1                                   │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ total amount (unit | relative) │ 5077.36 Ğ1  ||  502.2117 UD                  │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ pubkey’s balance after tx      │ 0.0 Ğ1                                       │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ from (pubkey)                  │ GcjRNKNjcGmMdcGjki1DVo5YDrXcRHPHLGBMKYVoZrV8 │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ to (pubkey)                    │ 38MEAZN68Pz1DTvT3tqgxx4yQP6snJCQhPqEFxbDk4aE │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ to (id)                        │ BenoitLavenier                               │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ amount (unit | relative)       │ 3989.35 Ğ1  ||  394.5945 UD                  │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ to (pubkey)                    │ CmFKubyqbmJWbhyH2eEPVSSs4H4NeXGDfrETzEnRFtPd │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ to (id)                        │ Matograine                                   │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ amount (unit | relative)       │ 725.34 Ğ1  ||  71.7448 UD                    │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ to (pubkey)                    │ EUt3FqkmpUg8UdyrB2dGXtZoTo7GRXadEkHagL2q2AKb │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ amount (unit | relative)       │ 362.67 Ğ1  ||  35.8724 UD                    │
├────────────────────────────────┼──────────────────────────────────────────────┤
│ comment                        │                                              │
╘════════════════════════════════╧══════════════════════════════════════════════╛
Do you confirm sending this transaction? [yes/no]: yes
Generate Transaction:
   - From:    GcjRNKNjcGmMdcGjki1DVo5YDrXcRHPHLGBMKYVoZrV8
   - To:      38MEAZN68Pz1DTvT3tqgxx4yQP6snJCQhPqEFxbDk4aE 
   - Amount:  3989.35
   - To:      CmFKubyqbmJWbhyH2eEPVSSs4H4NeXGDfrETzEnRFtPd 
   - Amount:  725.34
   - To:      EUt3FqkmpUg8UdyrB2dGXtZoTo7GRXadEkHagL2q2AKb 
   - Amount:  362.67
Transaction successfully sent.

Suite au paiement, cette caisse deviendra un compte Ğ1Cotis qui effectuera la répartition automatiquement, jusqu’à ce que la somme de 700DU soit atteinte, ou jusqu’à ce qu’une durée de 365 jours s’écoule sans versement.

6 « J'aime »