Sui.

Publication

Partagez vos connaissances.

Benjamin XDV.
Jul 18, 2025
Questions et Réponses avec des Experts

Les meilleurs outils pour auditer le code Sui Move ?

Je suis en train d'auditer un contrat intelligent Sui Move et je dois m'assurer de la sécurité, de l'exactitude et de l'efficacité du gaz Meilleures pratiques

Défis actuels :

  • La révision manuelle prend du temps
  • Je ne sais pas quels outils couvrent les caractéristiques uniques de Sui
  • Nécessite une analyse statique et dynamique

Des questions :

  1. Quels sont les analyseurs statiques les plus efficaces pour Sui Move ?
  2. Comment tester formellement des invariants complexes ?
  3. Existe-t-il des scanners de sécurité spécifiques à SUI ?
  4. Quelles techniques de révision manuelle permettent de détecter les outils qui manquent ? 
  • Sui
  • Move
0
2
Partager
Commentaires
.

Réponses

2
Paul.
Jul 19 2025, 06:29

Pour plus de sécurité, je préfère non seulement utiliser l'outil, mais aussi faire auditer par un tiers.

Que vous développiez une application DeFi, un jeu blockchain ou tout autre projet en chaîne sur Sui, un certain nombre de sociétés d'audit soutiennent déjà activement l'écosystème en proposant des services de sécurité à différents stades de développement : -Asymptotique— Création du Sui Prover, un outil de vérification formel spécialement conçu pour la validation des contrats intelligents Sui. -Blaize.Security— Fournit des services de sécurité complets axés sur l'interface utilisateur, notamment des audits manuels, la protection des pipelines CI/CD, une surveillance en direct et une analyse des incidents. -Certora : associe un audit manuel traditionnel à une vérification formelle pour produire des évaluations de sécurité hybrides rigoureuses. -MoveBit— L'une des premières entreprises à adopter la vérification formelle dans les audits Sui, tout en contribuant par le biais d'outils pour développeurs et d'événements CTF. -OtterSec— Connu pour ses audits manuels approfondis et sa collaboration étroite avec les équipes tout au long du cycle de vie de l'audit. -Zellic— Offre une solide expertise dans le langage Move et travaille activement sur de nombreux projets au sein de l'écosystème Sui.

En outre, les développeurs de Sui peuvent tirer parti duMove Registry (MVR), un système de gestion de packages en chaîne qui permet aux équipes de joindre des informations clés telles que le code source, la documentation et les résultats d'audit directement à leurs contrats intelligents déployés.

3
Commentaires
.
Bekky.
Jul 18 2025, 15:36

####1. Chaîne d'outils d'audit essentielle

#####Analyse statique | Outil | Objectif | Caractéristiques principales | | ---------------| --------------| |** Move Prover** | Vérification formelle | - Preuve mathématique des invariants -
Détecte les débordements arithmétiques
- Garantit l'exactitude du contrôle d'accès | |** Move Analyzer** | Intégration à l'IDE | - Détection des erreurs en temps réel -
Vérification du type -
Validation des références entre modules | |** Contrôles de sécurité Sui CLI** | Audits intégrés | sui move verify
sui client verify-source|

Exemple d'utilisation d'un prouveur :

spec balance_never_negative {  
    invariant balance >= 0;  
}  

#####Analyse dynamique | Outil | Type | Couverture | | ------------| ----------| |** Sui Test Framework** | Tests unitaires | - Couverture du chemin à 100 % -
Objets/horloges fictifs | |** Sui Fuzzer** | Tests de propriétés | - Génère des cas limites - Détecte les
paniques en arithmétique |

Exemple de test Fuzz :

#[test_only]  
fun fuzz_transfer(amount: u64) {  
    let balance = 1000;  
    transfer(&mut balance, amount); // Auto-tests 0, MAX, etc.  
}  

####2. Scanners spécifiques aux Suis

#####Vérificateurs du cycle de vie des objets -** Analyseur de remises sur le stockage Sui** | Détecte :

  • Croissance illimitée des objets
  • dropCapacités manquantes
  • Identifiants orphelins

#####Audits de contrôle d'accès

# Find all entry functions without signer checks  
grep -r "public entry" ./sources | grep -v "&signer"  

#####Lintreurs d'objets partagés Règles personnalisées pour :

  • Contrôles d'époque manquants
  • Risques de modification simultanés
  • Références d'objets partagés périmées

####3. Techniques de révision manuelle

#####Contrôles critiques 1.Modèles de capacité :

  // Verify admin caps are properly guarded  
  assert!(address_of(signer) == admin_cap.admin, EUnauthorized);  

2.Sécurité dynamique sur le terrain :

  // Ensure no unvalidated user input in dynamic fields  
  dynamic_field::add(&mut obj, user_input, value); // RISKY  

#####Points chauds de gaz -Opérations de stockage :

 // Prefer Table over vector for large collections  
 let bad: vector<u64>; // Expensive deletions  
 let good: Table<ID, u64>; // O(1) ops  

#####Adhésion au Sui Framework


####4. Flux de travail d'audit intégré

Étape 1 : Analyse statique

sui move build --lint && \  
sui move prove --path ./sources  

Étape 2 : Tests dynamiques

sui move test --coverage && \  
move-fuzzer ./sources -iterations 1000  

Étape 3 : Révision manuelle

  1. Vérifiez toutes les entryfonctions :
  • Le signataire est présent ?
  • Validation des entrées ?
  1. Auditez les objets partagés :
  • Epoch Check ?
  • Des mécanismes de verrouillage ?

####5. Résultats communs par outil

OutilCaptures typiques

Move Prover
Sui CLI- Propriété de l'objet non valide - Capacités
manquantes

Fuzzer
Manuel- Défauts de logique métier - Compatibilité avec le
marché

####6. Conseils professionnels

Audit continu

# GitHub Action example  
- uses: MoveAnalyst/move-security-check@v1  
  with:  
    path: ./sources  

Comparez avec les vulnérabilités connues

Utilisez plusieurs RPC Testez contre :

  • Réseau local
  • Réseau de test
  • Différents fournisseurs de nœuds complets

0
Commentaires
.

Connaissez-vous la réponse ?

Veuillez vous connecter et la partager.

Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.

443Publications665Réponses
Sui.X.Peera.

Gagne ta part de 1000 Sui

Gagne des points de réputation et obtiens des récompenses pour avoir aidé la communauté Sui à se développer.

Campagne de RécompensesJuillet