Sécurité de la blockchain : comment comprendre les audits de la blockchain pour rester en sécurité dans DeFi PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Blockchain Security : Comment comprendre les audits Blockchain pour rester en sécurité dans DeFi

L'année dernière a été une période assez sombre pour la cryptographie. Non seulement nous avons vu l'effondrement catastrophique de Luna, la dégénérescence de 3 Arrows Capital, les problèmes d'insolvabilité et de faillite avec BlockFi, Celsius, Voyager, VAULD et plus encore, des conditions macro-économiques qui nous ont plongés dans les profondeurs d'un hiver crypto, mais cela a également été une année monumentalement désastreuse pour la blockchain et les hacks et exploits DeFi, ce qui a conduit les gens à fuir DeFi plus rapidement que les nageurs fuyant les eaux infestées de requins.

Maintenant, vous pensez probablement à vous-même, "wow, merci pour l'intro déprimante. La crypto sonne comme un champ de mines ! »

Et vous ne vous trompez pas, la crypto a certainement sa juste part de risques. Mais avant de laisser tout ce malheur et cette morosité vous donner envie d'abandonner la crypto pour toujours et d'aller vous cacher sous votre lit, n'ayez crainte, car cet article va vous apprendre à naviguer dans les eaux DeFi de la manière la plus sûre possible et vous montrer ce que vous besoin de connaître les audits de sécurité de la blockchain.

Audit de la chaîne de blocs

Examiner les rapports d'audit de projet est l'une des meilleures mesures que vous puissiez prendre pour vous protéger des plates-formes DeFi sous-optimales. Image via Shutterstock

Bien que cela n'aide pas à protéger contre tous les risques en crypto, il n'y a pas de protection pour quelqu'un qui décide de "YOLO" ses économies dans le prochain memecoin, les informations contenues dans cet article vous aideront au moins à vous équiper d'une flèche de plus dans votre carquois que vous pouvez déployer pour améliorer considérablement votre navigation globale en toute sécurité dans l'espace DeFi.

Juste pour apaiser certaines craintes dès le début, ne vous inquiétez pas que cet article soit trop technique. Ce guide utile sera si facile à comprendre que même mon père qui se réfère à l'ensemble de l'industrie de la cryptographie comme « Ce truc Bitcoin » sera en mesure de le comprendre.

mème bitcoin

Cette image résume à peu près comment mon père voit la crypto. Image via blockchainmuffin.com

Et parce que je connais à peu près aussi bien les compétences en développement de la blockchain qu'un rocher en matière de coupe de cheveux, j'ai décidé d'obtenir de l'aide professionnelle et des conseils d'initiés pour cet article. J'ai contacté nos amis à Chaîne de blocs Acee pour aider à apprendre moi-même, et le Joe moyen, à quoi servent ces audits de blockchain.

Je tiens à féliciter l'équipe d'Ackee d'avoir pris le temps de nous aider, nous et notre communauté, en nous enseignant les principes fondamentaux des audits de blockchain et d'avoir collaboré avec nous sur cet article. Les rapports d'audit Blockchain et DeFi sont un aspect tellement important de la cryptographie et sont quelque chose que très peu d'entre nous comprennent vraiment.

page d'accueil ackee

Un coup d'œil à la page d'accueil de la chaîne de blocs Ackee.

Lors de notre diligence raisonnable pour déterminer la sûreté et la sécurité d'un protocole DApp ou DeFi, beaucoup d'entre nous rechercheront quelque chose qui indique que la plate-forme a été auditée et peut penser, "d'accord, assez bien". Je sais que j'ai été coupable de cela dans le passé, mais qu'est-ce que cela signifie réellement d'avoir été audité ? Comment pouvons-nous vérifier cela? Et comme vous l'apprendrez dans cet article, ce n'est pas parce que quelque chose a été audité qu'il doit automatiquement obtenir le feu vert.

Pour commencer, regardons ce que font réellement les sociétés d'audit blockchain.

Contenu de la page 👉

Que font les sociétés d'audit Blockchain ?

Lorsque nous entendons le terme «audit», beaucoup d'entre nous imaginent automatiquement un vieux mec étouffant dans un costume qui travaille pour le gouvernement qui va venir frapper et passer en revue tous nos états financiers et relevés bancaires avec un peigne fin. Dans le secteur financier traditionnel, vous auriez raison, mais les auditeurs de la blockchain ne pourraient pas être plus éloignés de cela.

Les auditeurs de la blockchain ne sont pas des comptables par un effort d'imagination, ce sont des experts en codage et en compétences de développement qui recherchent des bogues, des erreurs et du code malveillant dans le code source d'un projet de blockchain, d'un contrat intelligent ou d'un jeton crypto.

services d'accompagnement

Certains des services fournis par les sociétés d'audit Blockchain. Image via la chaîne de blocs Ackee

Différentes sociétés d'audit peuvent également se spécialiser dans différents domaines, c'est pourquoi il est toujours bon de voir une plateforme qui a été auditée par plusieurs sociétés. Chaque audit réalisé réduit les risques et une entreprise peut relever quelque chose que l'autre entreprise a manqué.

1m en est un excellent exemple. 1inch est un agrégateur DEX qui a été audité par plusieurs sociétés différentes, ce qui renforce la confiance des utilisateurs dans la plate-forme et souligne que l'équipe 1inch s'est fermement engagée à assurer la sécurité de sa communauté.

Rapport d'audit 1 pouce

Un regard sur les multiples audits effectués sur l'application DeFi 1 pouce. Image via audits github/1inch.

Les sociétés d'audit de blockchain disposeront d'une équipe d'ingénieurs capables d'effectuer des tâches telles que :

  • Audit de sécurité
  • Analyse d'outils
  • Examen manuel du code
  • Exécuter et écrire des tests automatisés
  • Organiser des concours Bug Bounty

Alors que d'autres sociétés d'audit comme Ackee Blockchain peuvent également répondre à des exigences plus « complètes » et aider dans des domaines supplémentaires tels que :

  • Création de contrats intelligents sécurisés sur Solidity ou Rust
  • Aider à la construction d'un écosystème complet, à la gestion de l'expérience utilisateur, de la conception, des frontends, des backends et du DevOps

Ackee Blockchain contribue également à l'industrie de la blockchain dans son ensemble, ce qui est formidable à voir. Ils ont développé des outils de sécurité open source que tout le monde peut utiliser et sont passionnés par l'enseignement et l'offre d'opportunités aux aspirants développeurs de blockchain. Dans le passé, ils ont organisé des cours en ligne pour les développeurs qui souhaitent travailler dans la blockchain et ont même reçu une subvention de la Fondation Solana pour gérer un école d'été pour Solana.

Ecoles d'Ackee

Certains des cours proposés par Ackee Blockchain.

L'équipe propose des cours d'été en ligne où ils enseignent Solidity, et à l'automne 2022, le PDG et co-fondateur d'Ackee Blockchain, Josef Gattermayer, Ph.D. enseignera des sujets autour du développement de la blockchain au Université technique tchèque à Prague. Cela vaut vraiment la peine de contacter l'équipe d'Ackee, inscription aux cours sur leur site, et suivez-les si vous êtes intéressé par un avenir dans le développement et la sécurité de la blockchain.

Comme vous pouvez le voir, l'audit de la blockchain peut être bien plus qu'un simple nerding dans une pièce sombre et parcourir le code, il existe tout un écosystème encapsulé dans la niche.

Pourquoi l'audit de la blockchain est-il important ?

Si les humains étaient parfaits, il n'y aurait pas besoin de sociétés d'audit blockchain car chaque ligne de code serait écrite sans faille et complètement insensible aux exploits, aux défauts et aux attaques.

Ce qui est encore pire que les humains qui font des erreurs, c'est que les gens peuvent être corrompus et malveillants. Un phénomène assez fréquent est que des acteurs malveillants entrent intentionnellement dans leur protocole un code malveillant qui leur permettra d'exploiter une plate-forme qu'ils ont créée afin de voler les fonds des utilisateurs.

Trezor en ligne

Trezor en ligne

Entre erreur humaine et intention malveillante, les contrats intelligents et les applications blockchain/DApps sont sensibles aux risques suivants :

  • Attaques par déni de service qui rendent le protocole inutilisable.
  • Tirs de tapis / vol de porte dérobée où les fondateurs saisissent un code malveillant qui leur permet de retirer des fonds placés dans un contrat intelligent.
  • Exploiter le code d'une manière qui profite au pirate et nuit aux utilisateurs, par exemple en créant de nouveaux jetons en dehors des méthodes prévues ou en drainant les fonds des clients des contrats intelligents.
  • Certains pirates veulent simplement "regarder le monde brûler" et exploiteront toute faille qu'ils pourront trouver pour endommager une plate-forme.

De nombreux utilisateurs DeFi considèrent que l'une des choses les plus importantes à rechercher dans une plate-forme DeFi est de savoir si le code est open-source ou non. C'est une excellente première étape car de nombreux projets publieront le code sur un site public comme Github, où n'importe qui peut entrer et vérifier/vérifier le code par lui-même.

Lorsque vous consultez la page GitHub d'un projet, c'est souvent l'une des choses que recherchent les utilisateurs qui envisagent d'utiliser un DApp, en utilisant à nouveau 1 pouce comme exemple :

1 pouce publique

"Public" signifie que n'importe qui peut entrer et jeter un œil au code. Image via github/1 pouce

C'est une bonne approche initiale à adopter lors de la vérification de l'authenticité d'un protocole car c'est là que les membres de la communauté ou n'importe qui peuvent entrer et vérifier qu'il n'y a pas de code malveillant caché là-dedans.

Il est également utile de savoir que n'importe qui peut publier n'importe quoi sur GitHub. Le code publié dans GitHub ne confirme pas automatiquement qu'il s'agit du même code exécutant le contrat intelligent. Heureusement, les utilisateurs peuvent le vérifier en accédant à un explorateur de blocs comme Etherscan et en vérifiant que le code dans GitHub est réellement déployé et utilisé. Voici la Jeton 1 pouce dans Etherscan, par exemple. J'ai tendance à être d'accord avec le sentiment que la publication open source sur GitHub est un bon signe, mais pour moi, lorsque je clique sur GitHub pour y jeter un coup d'œil, tout ce que je vois est :

code

Hein? Puissent aussi bien être des hiéroglyphes égyptiens pour moi. Image via GitHub

Donc, au lieu de faire frire mon cerveau comme un œuf sur un trottoir chaud en essayant de comprendre cela, j'aime voir qu'une équipe de professionnels d'une société d'audit blockchain a parcouru tout cela et lui a donné son approbation.

Il est important de clarifier une chose, et c'est que ce n'est pas parce qu'un protocole a été audité qu'il est sûr à 100 %. Aucun code ne peut jamais être considéré comme totalement insensible aux tentatives de piratage, car les outils et les compétences des pirates deviennent de plus en plus sophistiqués. Tout comme les (bons) pirates informatiques et les développeurs de blockchain s'améliorent et évoluent tout le temps, les méchants aussi.

Vous pouvez y voir un peu comme un jeu du chat et de la souris, écrire du code revient essentiellement à construire un puzzle créatif et à résoudre des problèmes, et les pirates recherchent des moyens de résoudre ou d'attaquer le puzzle de manière de plus en plus intelligente et sophistiquée, il y aura donc toujours un élément de risque.

Pourquoi 2022 a été particulièrement mauvaise pour les exploits cryptographiques

Quand on voit des titres comme celui-ci :

hacks

L'année écoulée a vu un nombre record de fonds perdus en raison de piratages. Image via TechCrunch

Cela peut être assez déchirant. L'industrie de la cryptographie a reçu un sérieux œil au beurre noir car chaque semaine, il semble y avoir un autre piratage ou exploit massif entraînant des millions de fonds perdus.

Ce n'est pas seulement triste car ce sont des gens moyens qui perdent leur argent, mais aussi inquiétant car ces attaques soumettent l'ensemble de l'industrie de la cryptographie à des critiques de plus en plus sévères, ralentissent l'adoption, éloignent les investisseurs et fournissent aux gouvernements les excuses dont ils ont besoin pour accroître leur autorité. contrôle pour «protéger» les investisseurs, imposant souvent des mesures draconiennes auxquelles beaucoup d'entre nous se sont tournés vers la crypto pour échapper.

La raison principale en est une ingénierie de développement bâclée.

Quand je me suis assis avec Josef d'Ackee, je lui ai demandé pourquoi il y avait eu un nombre record d'exploits, son explication avait du sens.

Paraphrasant lourdement, Josef m'a expliqué que l'industrie de la cryptographie se développe rapidement et qu'il y a une course féroce pour que les équipes lancent leurs produits. Il y a un manque de développeurs de blockchain qualifiés et expérimentés capables de répondre à la demande, ce qui fait que de nombreux projets embauchent des développeurs novices et ont une attitude «assez bonne», lançant des DApps sans que les vérifications et audits appropriés ne soient effectués.

Josef Gattermayer

J'ai eu le plaisir de m'asseoir avec Josef Gattermayer pour discuter de tout ce qui concerne la sécurité de la blockchain. Image via ackee.de

Josef a également expliqué que le besoin de services d'audit de blockchain monte en flèche et qu'il n'y a pas suffisamment de sociétés d'audit de blockchain pour répondre à la demande des projets. Cela a eu pour conséquence que les équipes de projet ne veulent pas attendre qu'une équipe d'audit soit disponible, alors elles vont de l'avant et lancent ou publient une mise à niveau, soit sans audit, soit en s'appuyant sur un audit obsolète qui ne couvre pas la nouvelle version ou itération d'une plateforme.

Ce thème était particulièrement présent lors de la course haussière de 2021, mais les choses sont beaucoup plus détendues maintenant que nous sommes dans un marché baissier. Les projets ne sont pas pressés de se lancer et il y a moins de projets dans le goulot d'étranglement de l'audit. Il est vrai que les marchés baissiers sont le moment de la construction, et les équipes ont tendance à adopter une approche plus diligente pendant les périodes de ralentissement du marché.

Nous avons passé en revue deux attaques réussies spécifiques qui se sont produites pour enquêter exactement sur ce qui s'est passé, pour aider à mettre tout cela en perspective.

Le hack Ethereum DAO de 2016

DAO bidouille

Le tristement célèbre Ethereum DAO Hack. Image via Câble

Essentiellement, ce qui s'est passé ici était quelque chose connu sous le nom de bogue de réentrée. Pour faire simple, le code exécute deux instructions :

  1. Retrait d'argent
  2. Mettre à jour le solde

S'il est effectué chronologiquement, il fonctionne comme il se doit. Mais comme Ethereum est un système distribué (contrairement aux programmes web2), le contrat peut être appelé à partir d'un autre contrat qui offre une option pour implémenter une fonction de rappel personnalisée qui est appelée à partir de l'instruction de retrait.

Et cette fonction de rappel mise en œuvre par le pirate appelle le contrat à plusieurs reprises avant que l'instruction de mise à jour du solde ne soit finalement exécutée. Cela permet à l'attaquant de se retirer plusieurs fois.

Il s'agit d'une erreur fréquente commise par les développeurs Web3 novices. Même 5 ans après cette attaque, le problème se pose toujours du fait que les développeurs ne prennent pas le temps d'apprendre de cette affaire. La solution est assez simple dans ce cas, et consiste simplement à mettre ces deux lignes de code dans l'ordre opposé. Première mise à jour, puis retrait.

Les auditeurs recherchent des problèmes connus comme celui-ci lors de l'audit d'un protocole.

Attaque de trou de ver de Solana 2022

piratage solana

Piratage du trou de ver Solana. Image via CNBC

L'année 2022 n'a pas bien commencé avec la première attaque majeure sur Solana début février. L'attaquant a contourné une vérification de signature dans un programme Rust, il semblait donc que les gardiens avaient signé un dépôt de 120 XNUMX ETH dans Wormhole sur Solana, même s'ils ne l'avaient pas fait. L'attaquant a alors frappé 120 XNUMX ETH enveloppés sur Solana.

Avant cette attaque de trou de ver, de nombreux membres de la communauté crypto supposaient que le développement de Solana et Rust était trop difficile à apprendre pour attirer les développeurs amateurs. Cela a conduit à croire que seuls les meilleurs développeurs travaillaient sur Solana, ce qui signifie qu'il n'y avait pas un besoin aussi fort d'audits. Après cette attaque, Josef a mentionné que lui et son équipe avaient constaté une augmentation significative des demandes d'audit pour les DApp et les protocoles Solana.

Après tout cela, vous pensez peut-être que si les humains sont la source d'erreurs et d'intentions nuisibles, ne serait-il pas logique d'avoir simplement des ordinateurs et des machines d'intelligence artificielle qui sont peu susceptibles de faire des erreurs et incapables d'intentions malveillantes, écrivez simplement tout ce code pour nous?

L'IA remplace les développeurs

Il est peu probable que l'intelligence artificielle remplace les développeurs de sitôt. Image via STXnext.com

C'est une excellente question, et à cause d'articles comme celui ci-dessus, c'est aussi quelque chose qui m'a traversé l'esprit. Nous couvrirons cela dans la section suivante.

L'avenir de la sécurité de la blockchain

Il est évident que nous nous dirigeons vers un avenir où bon nombre de nos emplois seront externalisés vers des ordinateurs et des programmes d'IA qui peuvent faire le travail des humains bien mieux que nous.

Nous le voyons déjà avec les caissiers automatisés et les usines de fabrication de voitures qui ont plus de robots que d'humains. Les ordinateurs prennent même en charge des emplois hautement spécialisés comme les médecins et les pharmaciens, car un robot peut être plus précis avec un scalpel et un programme informatique peut parcourir toute la base de données de médicaments et en quelques secondes remplir des rapports sur ce que les médicaments peuvent et ne peuvent pas mélanger avec d'autres produits chimiques et médicaments, une tâche impossible pour un humain.

Je pensais avec certitude que la programmation et le développement seraient l'un des premiers emplois remplacés par les ordinateurs. S'il s'agit de toutes les lettres et de tous les chiffres sur un écran construit de manière à accomplir certaines tâches, alors un ordinateur pourrait sûrement le faire mieux qu'un humain, avec moins d'erreurs, n'est-ce pas ?

Robot,Employé,Coups de pied,Loin,A,Humain,Travailleur,De,Faire,Son

Ouais, j'avais imaginé quelque chose comme ça : Image via Shutterstock

Je pensais que les sociétés d'audit blockchain suivraient le chemin de l'oiseau Dodo (éteint), car une fois que les ordinateurs commenceront à se développer de manière autonome, il n'y aura plus d'erreurs à trouver. Cela a mis en évidence le peu de connaissances que je connaissais sur le développement, car l'équipe d'Ackee a expliqué certains concepts que je n'avais pas appréciés.

Une grande partie du développement de la blockchain consiste à résoudre des problèmes et à examiner une vue à 360 degrés d'un problème. Il faut beaucoup de créativité et penser « en dehors des sentiers battus » que les ordinateurs sont incapables de faire. Ce n'est pas aussi simple que "lorsque 'X' se produit, exécutez 'Y'."

Nous devons également tenir compte du fait que bon nombre de ces DApps et applications tentent de résoudre des problèmes «humains» et la manière dont nous interagissons avec les systèmes, les protocoles et les procédures. Désolé petit Butter Bot, mais tu n'es pas fait pour comprendre les problèmes humains et apporter des solutions humaines.

robot de beurre

On dirait que les robots vont s'en tenir à des tâches plus unidimensionnelles… pour l'instant. Meme généré via memegenerator.net

Non seulement les emplois dans le développement de la blockchain et la sécurité montent en flèche, mais il semble que ces rôles seront nécessaires pour les années à venir.

Cela ne veut pas dire qu'il n'y a pas d'automatisation dans l'espace de développement Web3. Il existe de nombreux outils gratuits pour les développeurs qui leur fournissent des informations sur la sécurité et aident à décharger une partie du travail afin que les développeurs puissent se concentrer sur d'autres tâches.

Par exemple, sur Ethereum, il existe un bon analyseur de code statique nommé Slither qui est très populaire et Ackee Blockchain travaille sur son propre analyseur statique open source appelé Se réveilla, qui détecte les choses différemment de Slither, réduisant ainsi la charge d'avoir à analyser manuellement le code.

L'équipe d'Ackee a également découvert une tendance sur Solana concernant un problème avec les tests. Les développeurs n'en écrivaient pas assez car cela demande beaucoup de travail, avec la nécessité d'écrire beaucoup de code passe-partout. Ainsi, Ackee Blockchain a dirigé un projet dans lequel ils ont écrit un cadre de test open source pour Solana appelé Trdelnik cela permettra aux développeurs d'écrire des tests plus facilement. L'équipe a reçu une mention honorable et a remporté un prix Marinade lors d'un hackathon à Prague pour Trdelnik.

Tout cela nous montre qu'il est probable que l'automatisation et les ordinateurs joueront un rôle de plus en plus important pour aider les développeurs de chaînes de blocs et les auditeurs de sécurité, mais il est peu probable qu'ils les remplacent de si tôt.

Le sentiment général parmi les développeurs de blockchain est que bon nombre de ces hacks et exploits résultent du fait qu'il s'agit encore d'une industrie jeune et inexpérimentée. Au fur et à mesure que l'industrie de la blockchain continue d'évoluer et de mûrir, il devrait y avoir de moins en moins d'exploits, ce qui rendra l'espace cryptographique global de plus en plus sécurisé et convivial.

Très bien, entrons maintenant dans les bonnes choses, le principal point à retenir de cet article.

Comment vérifier qu'une plateforme a été auditée

La toute première étape consiste à s'assurer qu'il y a une vérification à trouver. Ceux-ci peuvent être trouvés dans le référentiel GitHub du projet, et tout audit effectué doit être clairement mentionné dans les documents du projet ou sur le site Web de la plate-forme lui-même. Si vous ne trouvez aucune mention d'un audit, je resterais à l'écart.

Aucun audit accessible au public signifie probablement que :

  • Aucun audit n'a été effectué
  • Il y a eu un audit raté que le projet ne veut pas faire connaître
  • L'audit a découvert des problèmes que l'équipe n'a pas résolus
  • Le code contient des itinéraires de porte dérobée malveillants qui pourraient conduire au vol

Comme mentionné précédemment, il est également agréable de voir que le code est open-source en étant étiqueté "public" sur GitHub. Ce n'est pas une obligation, mais c'est quand même un bonus. Il y a cependant des raisons de ne pas ouvrir le code source, donc ce n'est pas toujours un facteur décisif. Les raisons de ne pas ouvrir le code source peuvent être des choses comme :

  • Entreprises souhaitant conserver un avantage concurrentiel. Dès qu'une entreprise ouvre son code, n'importe qui peut créer le même protocole et rivaliser. C'est pourquoi Coca-Cola garde sa recette secrète et KFC a ses "11 herbes et épices top secrètes".
  • Une fois qu'un code est public, les pirates peuvent utiliser les informations pour rechercher des exploits. Bien que les bonnes pratiques fassent le contraire, si un projet a confiance en son code, il le publiera.
  • Les premiers projets peuvent ne pas vouloir ouvrir leur code tout de suite jusqu'à ce qu'ils aient constitué une grande communauté et suffisamment d'utilisateurs, créant ainsi un obstacle pour les concurrents potentiels.

J'ai récemment rencontré une équipe de projet qui a tout de suite regretté d'avoir ouvert sa plate-forme, car une entreprise concurrente a simplement copié son code et son modèle commercial, et disposait de plus de fonds pour payer les influenceurs et payer les abonnés. Cela a fait apparaître que l'entreprise concurrente était la meilleure plate-forme dès le lancement, car elle donnait l'impression d'avoir plus d'utilisateurs et un public plus large. L'entreprise concurrente est maintenant nettement en avance sur l'équipe fondatrice d'origine qui a choisi de se développer de manière plus organique et éthique.

Voici un superbe visuel de Pont mondial qui résume certaines des différences généralisées entre les logiciels open source et fermés :

source ouverte contre source fermée

Image via Pont mondial

Deux approches intéressantes du code source ouvert et fermé peuvent être trouvées en comparant les portefeuilles matériels populaires fort et les Ledger. Trezor a choisi de publier 100% de son code source au public pour que quiconque le vérifie, tandis que Ledger a choisi de jouer ses cartes plus près de sa poitrine et a ouvert du code, mais garde son firmware fermé.

Cela a conduit de nombreux élitistes de la blockchain à choisir Trezor plutôt que Ledger car ils estimaient que Ledger devrait ouvrir leur code, se demandant ce qu'ils essayaient de cacher. Personnellement, je ne vois pas cela comme une source de préoccupation car Ledger a prouvé ses antécédents et son dévouement à l'espace, et est devenu l'un des plus grands fournisseurs de portefeuilles matériels au monde, créant certains des stockages cryptographiques sécurisés de la plus haute qualité. dispositifs.

Une fois qu'un audit a été réalisé et localisé, tant qu'il a été rendu public, n'importe qui peut ouvrir le document et trouver les résultats de l'audit. Au lieu de faire défiler l'intégralité du document d'audit, pour notre simple objectif, tout ce que nous devons rechercher est la page "Résumé exécutif", qui ressemble souvent à ceci :

résultats d'audit

Les résultats de l'audit pour IDEX. Image via certificat.quantestamp 

Cette page sera soit située au tout début soit à la fin du rapport. Il s'agit d'une page qui affiche les résultats de l'audit dans un format simple que la personne moyenne peut comprendre. Plongeons dans les informations que cela nous montre.

L'audit est-il récent ? Les audits doivent être un service continu et un nouvel audit doit certainement être effectué pour CHAQUE mise à jour, version ou nouvelle fonctionnalité/fonction introduite. Si une nouvelle fonctionnalité ou version a été lancée, les résultats de l'audit précédent ne sont plus valides car la base de code a probablement changé.

Cela peut être vérifié en examinant la version du projet et/ou le hachage de validation. La version est quelque chose comme quand vous voyez Uniswap "V2" (version 2), et le hachage de validation identifie une révision dans le référentiel de code source. Lorsque vous regardez la version ou le hachage de validation affiché dans l'audit, qui peut être vu dans l'image ci-dessus dans le tableau avec l'en-tête "référentiel", les utilisateurs peuvent vérifier qu'il coïncide avec la version ou le hachage de validation affiché dans GitHub.

Cela ressemblera à quelque chose comme ceci:

Numéro de commit correspondant

Numéro de commit correspondant

Voici un autre aperçu de l'un des audits Ackee Blockchain :

audit ackee 3

audit ackee 3

Cependant, si le hash de validation ne correspond pas, cela ne signifie pas nécessairement qu'il y a un drapeau rouge. Le hachage de validation sur le GitHub du projet changera à chaque fois qu'un nouvel ajustement ou une nouvelle itération est effectué. Chaque ajustement modifiera le hachage de validation et ne devrait pas être une source de préoccupation s'il n'y avait qu'un ajustement mineur.

Si vous ne voyez pas le hachage de validation de l'audit sur la page principale de GitHub, vous pouvez accéder à «l'historique des validations» et rechercher le hachage de validation et voir par vous-même combien a changé depuis la réalisation de l'audit.

Cela peut se faire en cliquant ici :

sélectionnez valider

sélectionnez valider

Puis faire une recherche ici :

valider la recherche

valider la recherche

Comme un nouveau hachage de validation est rempli pour chaque modification, chacun avec un horodatage, s'il y a eu un nombre important de nouvelles validations entre le moment où l'audit a été effectué et le hachage de validation sur lequel le projet est actuellement en cours, vous pouvez envisager d'attendre qu'un autre audit soit effectué avant de s'impliquer.

Si vous avez un œil analytique et que vous souhaitez approfondir, vous pouvez cliquer sur chaque nouveau hachage de validation et comparer l'ancien code affiché en rouge avec le nouveau code affiché en vert et vérifier par vous-même ce qui a exactement changé :

Audit de la blockchain

Audit de la blockchain

Si vous remarquez un nouveau hachage de validation différent de celui au moment où l'audit a été effectué et que vous voyez quelque chose comme ceci :

changement insignifiant

changement insignifiant

C'est l'un de ces changements insignifiants que j'ai mentionnés, et bien qu'il ait rempli un nouveau hachage de validation, il n'y a pas de quoi s'inquiéter car il s'agissait d'un simple renommage d'un fichier. L'image GitHub ci-dessus montre 0 ajouts et 0 suppressions.

Passons maintenant à la prochaine chose à rechercher dans le résumé :

Problèmes - Le résumé analytique montre tous les problèmes qui ont été découverts lors de l'audit et, plus important encore, si l'équipe a résolu les problèmes. Cette section peut être vue vers le bas où elle affiche "Total des problèmes", puis les décompose en gravité et indique s'ils ont été résolus ou non. La société d'audit identifie d'abord les problèmes, les signale à l'équipe de développement, puis vérifie à nouveau le code une fois que les développeurs ont résolu les problèmes avant que l'équipe d'audit ne marque le problème comme "résolu".

De toute évidence, tous les problèmes marqués comme «critiques» ou «à haut risque» doivent être résolus. Même si le rapport montre que tous les problèmes critiques ou à haut risque ont été résolus, cela doit tout de même être noté avec un certain scepticisme à l'égard du projet. Si l'équipe d'audit a trouvé un nombre élevé de problèmes critiques pour commencer, cela peut mettre en évidence que l'équipe de développeurs derrière le projet peut être assez novice, ce qui entraînera d'autres problèmes supplémentaires sur la route.

Les problèmes à risque moyen ou faible sont courants et ne sont normalement pas préoccupants. L'équipe d'audit peut même marquer quelque chose comme un problème à faible risque s'il suggère simplement une alternative ou s'il a une divergence d'opinion sur la façon d'aborder quelque chose.

Voici un résumé de ce que signifie chacune des catégories :

Critical – Tout ce qui est marqué comme critique signifie que quelque chose est exploitable en ce moment.

L'équipe d'Ackee Blockchain m'a raconté l'histoire d'un audit qu'ils menaient et où ils ont trouvé un problème critique sur un protocole qui avait déjà été lancé. Ils ont réveillé l'équipe de développement du projet à 5 heures du matin dans une urgence "tout le monde sur le pont" pour réparer le code dès que possible. Heureusement, ils ont détecté le problème à temps avant que les pirates ne puissent identifier la vulnérabilité.

Gravité élevée – Problèmes qui ne sont pas exploitables maintenant, mais qui pourraient l'être si certaines séquences spécifiques sont remplies.

Moyen à faible – Ce sont souvent des ajustements mineurs qui sont nécessaires ou des recommandations et pas nécessairement des menaces de sécurité.

Différentes sociétés d'audit rédigeront également des résumés exécutifs dans différents formats. Le résumé ci-dessus a été réalisé par un cabinet d'audit Timbre quantique. Ackee Blockchain fournit le PDF avec l'audit et un résumé Web qui combine les résultats initiaux et de suivi dans un format d'essai plus facile à lire. Vous pouvez en trouver un exemple dans leur Résumé de la vérification.

Éléments supplémentaires à rechercher :

  • Un audit a-t-il été réalisé par plus d'une entreprise ? Plus il y a d'yeux à la recherche de problèmes, moins il y a de chance qu'une faille existe dans le code.
  • La société d'audit blockchain est-elle professionnelle et respectée dans la communauté ? Si vous n'avez jamais entendu parler de la société d'audit auparavant, consultez leur site Web et recherchez d'autres projets sur lesquels ils ont travaillé. Certaines des plateformes qu'ils ont auditées sont-elles réputées ? Vérifiez si l'une des plates-formes a été exploitée après que l'entreprise a effectué un audit, cela pourrait mettre en évidence un historique de mauvaises compétences d'audit. Recherchez des choses comme les hackathons gagnés et le soutien/les subventions des fondations du réseau de couche 1.

Un bon exemple en est Ackee Blockchain, qui s'est vu attribuer des subventions officielles de développement/communauté par quatre fondations clés : Coinbase Giving, la Fondation Ethereum, la Fondation Solana et la Fondation Tezos.

fondations de confiance

Recherchez des fondations réputées qui travaillent avec des sociétés d'audit. Image via la chaîne de blocs Ackee

Si vous êtes quelqu'un qui est devenu naturellement méfiant en cette ère de désinformation, si vous voyez une affirmation telle que l'image ci-dessus tirée du site Web d'Ackee Blockchain, au lieu de vous croire sur parole, vous pouvez toujours naviguer vers les sites Web des fondations. mentionnés et vérifiez les affirmations par vous-même.

La raison pour laquelle je dis cela est parce que, au cours de mes années d'écriture de critiques, le nombre de sites Web qui prétendent «présenté dans Forbes ou Yahoo Finance», alors qu'ils ne l'ont jamais été, est écrasant. J'aimerais qu'il y ait une sorte de police de l'Internet qui puisse envoyer les entreprises en prison sur Internet pour avoir menti et fait des déclarations trompeuses comme celle-là. C'est pourquoi en crypto il y a un dicton, "ne faites pas confiance, vérifiez". Ne vous inquiétez pas, Ackee vérifie et fait confiance aux fondations ci-dessus, j'ai vérifié 😉

Newsletter en ligne

Réflexions de clôture

Bien, tu l'as maintenant. Quelques informations sur la sécurité de la blockchain qui, je l'espère, vous auront été utiles. J'espère que cet article vous aidera à vous sentir plus confiant en vous aventurant dans le monde de la cryptographie avec une couche d'armure supplémentaire et en étant capable de naviguer dans les eaux cryptographiques de manière plus sûre qu'auparavant. Je sais que je ferai preuve de diligence pour vérifier ces informations la prochaine fois que je sélectionnerai les DApps et les protocoles auxquels je choisis de faire confiance avec mes actifs cryptographiques.

Comme le dit le dicton, "en crypto, il ne s'agit pas de combien vous gagnez, mais de combien vous gardez", car malheureusement, beaucoup d'entre nous, anciens vétérans de la crypto croustillante, ont perdu plus que notre juste part de Satoshis dans une myriade de hacks, escroqueries, tapis tirés, faillites, etc. Plus nous avons de connaissances, mieux nous pouvons nous protéger contre de nombreux risques graves qui existent dans ce nouveau monde farfelu de la cryptographie.

Avertissement: Ce sont les opinions de l'auteur et ne doivent pas être considérés comme des conseils d'investissement. Les lecteurs doivent faire leurs propres recherches.

Offrir une éducation financière à ceux qui en ont le plus besoin a toujours été une de mes passions. Tout en travaillant en tant que conseiller financier, j'ai ouvert les yeux sur le monde de la cryptographie et son potentiel pour aider à rendre le monde meilleur. Je crois que la technologie blockchain peut construire un avenir meilleur et je suis ravi d'en faire partie.

Si vous aimez les heures de recherche que j'ai consacrées à mes articles et que vous les trouvez divertissants et perspicaces, veuillez envisager d'envoyer un conseil car cela m'aide vraiment et je l'apprécie grandement. BTC, ETH, LTC, XRP, BNB, DOT, SOL, VET, XLM, ALGO, AVAX, LINK, USDC, USDT, MATIC peuvent être envoyés à tayler88.crypto


Voir tous les articles de Tayler McCracken ->


Meilleures offres de cryptographie ->

Horodatage:

Plus de Bureau des monnaies