Aller au contenu
Glossaire

Audit de contrat intelligent

Un examen du code source d’un contrat par un tiers, au regard des classes de vulnérabilités connues et du comportement attendu du protocole.

Pourquoi c’est important

Un audit prouve qu’une personne compétente a examiné le code, il ne constitue pas une garantie. Euler avait été audité à plusieurs reprises ; le défaut était une vérification manquante sur un chemin que les relecteurs n’avaient pas jugé porteur de risque. L’incident Curve n’aurait pas pu être détecté par une revue du code source, puisque le compilateur était en cause.

Ce que vous pouvez vérifier

Un rapport d’audit comporte une section de périmètre, et c’est la partie la plus instructive. Elle précise quel commit a été examiné, quels contrats entraient dans le périmètre et lesquels en étaient exclus. Le code déployé après le commit examiné n’a pas été audité, quel que soit le badge affiché sur le site.

Où cela est apparu

Dossiers du Registre des incidents qui reposent sur ce point : la réentrance Vyper de Curve Finance et l’attaque par donation contre Euler Finance.

Pas un conseil. Les définitions servent à comprendre, non à prescrire. Rien ici ne constitue un conseil financier, juridique, fiscal ou de sécurité.