Scout for Soroban  : révolutionner la sécurité des contrats intelligents

  • Scout Audit est un outil de détection de vulnérabilités dans les contrats intelligents développé par CoinFabrik Research en collaboration avec l'Université de Buenos Aires.
  • Scout a été adapté pour détecter des problèmes de sécurité dans les contrats intelligents écrits pour le réseau Stellar Soroban, basés sur Rust.
  • Les développeurs ont identifié 12 classes de vulnérabilité et créé des exemple de tests et des détecteurs pour aider à sécuriser et améliorer les contrats intelligents dans cet environnement inexploré.

analyse statique qui pourraient être développés pour détecter les problèmes dans les contrats intelligents NEAR, qui sont basés sur Rust. Ce travail a été suivi en 2023 par une série de subventions financées par la Fondation Web3 et Aleph Zero Ecosystem Grants, qui ont conduit à la sortie de notre détecteur de vulnérabilité open source pour les contrats intelligents dans l'encre ! langage de contrat intelligent. Nous avons nommé l'outil Scout.

Notre développement comprend un ensemble d'exemples de vulnérabilités pertinents et de détecteurs associés, complétés par une CLI et une extension VSCode afin d'aider les développeurs et auditeurs de contrats intelligents à identifier les problèmes de sécurité courants et les écarts par rapport aux meilleures pratiques pendant le développement.

Stellar Soroban : Un nouvel environnement mais les mêmes principes

Scout est construit sur un linter. Chacun de nos « détecteurs » n’est qu’une charpie. Nous avons réalisé que les principes de détection utilisés dans le développement des détecteurs pour Scout pourraient être appliqués d'une manière simple à n'importe quelle blockchain dont le langage du contrat intelligent était basé sur Rust.

Scout for Soroban  : révolutionner la sécurité des contrats intelligents

Cette fonctionnalité de l'architecture de Scout lui permet de s'adapter facilement à de nombreuses blockchains basées sur Rust.

Graphique 01 : Architecture Scoute

également basés sur Rust.

Des défis en terrain inexploré

CoinFabrik alors que très peu de contrats intelligents avaient été écrits au départ

avec de nombreux contrats intelligents déployés. Au lieu d'aller dans la nature, à la recherche de contrats intelligents existants présentant des vulnérabilités, Scout a dû regarder à l'intérieur, dans ses souvenirs des paysages de blockchain précédents, anticipant les pièges et les dangers possibles, dans l'obscurité.

Nous n'elles existaient dans d'autres blockchains et créer des détecteurs associés. Ce sont des avertissements sur la nouvelle carte de vulnérabilité dont les nouveaux arrivants doivent se méfier.

intégrer cette base de connaissances croissante en tant que détecteurs dans Scout.

Pièges et drapeaux ; Vulnérabilités et détecteurs

Nous avons développé une liste de 12 classes de vulnérabilité un deuxième contrat intelligent qui « corrige » cette vulnérabilité et un détecteur qui détecte correctement la vulnérabilité dans le premier et ne déclenche pas d' Un résumé de ces vulnérabilités, cas de test et détecteurs peut être trouvé dans notre tableau des détecteurs.

Parmi les vulnérabilités couvertes, les catégories clés incluent Arithmétique des vulnérabilités, où des problèmes de précision des opérations et des débordements peuvent conduire à des calculs incorrects ; Validations et gestion des erreurs des vulnérabilités, telles qu'une utilisation inappropriée des méthodes de gestion des erreurs conduisant à des plantages de programmes ; Autorisation et bonnes pratiques vulnérabilités, mettant en évidence les risques liés à un accès non autorisé et aux écarts par rapport aux pratiques de codage standard ; et Déni de service (DoS) risques, où des opérations illimitées peuvent épuiser les ressources du système, perturbant ainsi la disponibilité des services. Ces vulnérabilités soulignent la nécessité cruciale d’un codage vigilant, d’une gestion robuste des erreurs et de contrôles d’accès stricts pour garantir la sécurité et la fiabilité des contrats intelligents et des applications blockchain.

que nous n'avons trouvé qu'un seul cas d'auto-réentrance applicable aux contrats intelligents Soroban, qui ne constituait pas une vulnérabilité.

Conclusion

avaient jamais été construits dans l'environnement. Heureusement, l'architecture de Scout, associée à notre connaissance préalable de la blockchain et des vulnérabilités basées sur Rust, s'est avérée être une base solide pour ce prototype.

L'extension CLI et VSCode font de Scout un compagnon fiable pour les nouveaux développeurs ou auditeurs entrant dans cet écosystème. Nous poursuivrons notre travail, en augmentant le nombre de détecteurs et de vulnérabilités couvertes, et en améliorant la convivialité de l'outil pour les équipes qui découvrent l'écosystème.

Essayez Scout  !

Que vous soyez un développeur débutant ou un expert chevronné, Scout est l'outil idéal pour améliorer vos projets de contrats intelligents Soroban. Conçu dans un souci de facilité d'utilisation, Scout offre un processus d'installation transparent, vous permettant de vous concentrer sur ce qui compte le plus  : créer des contrats intelligents innovants et sécurisés.

Avez vous des questions ou besoin d' suivez notre parcours et nos mises à jour sur Twitter

En choisissant Scout, vous n'obtenez pas seulement un outil ; vous rejoignez une communauté grandissante dédiée à rendre le développement de contrats intelligents Soroban plus sûr et plus accessible.

Télécharger Scout pour Soroban [here] et commencez votre voyage vers un développement de contrats plus intelligent. Construisons ensemble un avenir sûr !

Lectures complémentaires

[1] Détection de vulnérabilité à l’encre  ! Langage de programmation

[2] Détection de vulnérabilité plus grande, meilleure et plus rapide dans l'encre  ! Langage de programmation