Trail of Bits a révélé une faille d'autorisation sur Provenance Blockchain qui, selon elle, exposait 82 comptes d'actifs en direct sur le mainnet à une prise de contrôle. Une exploitation réussie pourrait permettre à quelqu'un de créer un jeton affecté ou de retirer des actifs détenus en consignation.
Ces comptes d'actifs spéciaux, appelés marqueurs, gèrent la fourniture, les autorisations et le solde en garde d'un jeton. La société de sécurité a déclaré que cette faille permettait à un utilisateur ne détenant aucun des jetons du marqueur de prendre le contrôle de ses autorisations d'administrateur, de création et de retrait, puis d'agir en conséquence dans une deuxième transaction.
Le bogue provenait de un désaccord entre deux enregistrements de la fourniture de jetons. Pour les marqueurs non fixes, le module bancaire de Provenance suit la fourniture en circulation en temps réel, tandis que le champ de fourniture du marqueur peut rester à zéro.
Lors de la vérification d'autorisation, le champ marqueur périmé a été lu pour déterminer si le compte détenait l'ensemble de l'offre. Étant donné que le solde d'un nouveau compte était également nul, la vérification a considéré zéro comme égal à zéro et a approuvé le changement d'autorisation.
Trail of Bits a indiqué que les 82 marqueurs concernés avaient une offre stockée nulle tout en détenant une offre réelle en circulation ou des actifs en dépôt.
Le montant révélé du dépôt garanti nhash affecté s'élève à environ 30 quadrillions de nhash, soit environ 500 000 $ au prix de HASH au moment de la découverte du problème. Trois programmes de la Provenance Blockchain Foundation détenaient la majeure partie : grant0051 détenait environ 19,23 quadrillions de nhash, provenance.validator.incentive.program environ 8,56 quadrillions, et grant0077 environ 2,49 quadrillions.
Un sous-ensemble distinct de 74 jetons, inclus dans le total de 82, a fait l'objet d'un risque de création non autorisée. Il comprenait des stablecoins pontées, des actifs emballés, des dépôts de consortium, des participations hypothécaires tokenisées et des jetons de rendement.
Les exemples nommés incluent uusd.trading, uusdc.figure.se, nbtc.figure.se, cusd.deposit, cguaranteedrateomni, chomebridgeomni, nuva.ylds et uylds.fcc.
Trail of Bits a décrit un risque d'inflation direct pour les marqueurs de type pièce non restreints. Les jetons restreints avec des exigences d'identité étaient exposés à des risques d'intégrité de l'offre et de solvabilité, même si un attaquant ne pouvait pas transférer librement les unités nouvellement créées.

Trail of Bits a déclaré avoir découvert la faille en mars et l'avoir signalée à Provenance le 1er avril. Elle a indiqué qu'un zero-supply guard publié avec v1.28.0 le 1er mai a bloqué le chemin signalé contre les 82 marqueurs identifiés.
Un second changement a fait en sorte que la vérification d'autorisation lise la circulation en temps réel depuis le module bancaire, et le projet l'a inclus dans v1.29.0 le 8 juin.
Les enregistrements GitHub montrent que les modifications de code ont été fusionnées et publiées. La divulgation de Trail of Bits ne précise pas si l'analyse de chaîne a détecté un accès non autorisé, une émission ou des retraits, ni si elle a averti les émetteurs et utilisateurs concernés.
Le post Un bug à solde nul a permis à des wallets vides de prendre le contrôle de 82 actifs Provenance est apparu pour la première fois sur CryptoSlate.
