T

solana-vulnerability-scanner

par trailofbits

solana-vulnerability-scanner est un skill d’audit de sécurité Solana ciblé pour les programmes natifs Rust et Anchor. Il aide à examiner la logique CPI, la validation des PDA, les contrôles de signer et de propriété, ainsi que l’usurpation de sysvar afin de détecter six vulnérabilités critiques propres à Solana avant le déploiement.

Étoiles4.9k
Favoris0
Commentaires0
Ajouté30 avr. 2026
CatégorieSecurity Audit
Commande d’installation
npx skills add trailofbits/skills --skill solana-vulnerability-scanner
Score éditorial

Ce skill obtient 86/100, car il propose un flux d’audit crédible, spécifique à Solana, qu’un agent peut déclencher avec peu d’hypothèses. Pour les utilisateurs du répertoire, cela en fait un bon candidat à installer s’ils ont besoin d’une revue ciblée des problèmes de sécurité Solana/Anchor, en particulier les bugs liés à CPI, aux PDA et à la validation des comptes, tout en gardant en tête qu’il s’agit d’un scanner spécialisé plutôt que d’un cadre de sécurité généraliste.

86/100
Points forts
  • Périmètre clairement centré sur l’audit Solana/Anchor, avec des cas d’usage explicites comme la revue des CPI, la validation des PDA, les contrôles de signer/propriété et l’évaluation de sécurité avant mise en production.
  • Guidage opérationnel solide : le skill inclut des indices de détection de plateforme, des marqueurs de code et un fichier de référence détaillé sur les motifs de vulnérabilités avec exemples concrets et mesures de remédiation.
  • Très déclenchable par des agents : le frontmatter et le corps du texte indiquent quand l’utiliser et quels motifs inspecter, ce qui réduit l’ambiguïté par rapport à un prompt générique.
Points de vigilance
  • Aucune commande d’installation, aucun script ni aucun outillage automatisé ne sont fournis ; il s’agit donc d’un guide très orienté conseils plutôt que d’un workflow de scan exécutable.
  • Le dépôt semble volontairement focalisé sur six motifs critiques de vulnérabilité, ce qui peut laisser de côté des besoins d’audit Solana plus larges que ces cas couverts.
Vue d’ensemble

Aperçu du skill solana-vulnerability-scanner

solana-vulnerability-scanner est un skill d’audit ciblé pour examiner les programmes Solana à la recherche de failles de sécurité faciles à manquer dans une revue Rust générique. Il est particulièrement adapté aux ingénieurs, auditeurs et équipes sécurité qui vérifient des programmes Solana natifs ou Anchor avant déploiement, surtout lorsque le code utilise du CPI, de la logique de PDA, des vérifications de signer, des contrôles d’ownership des comptes ou l’introspection d’instructions.

Le skill solana-vulnerability-scanner n’est pas un linter de smart contracts au sens large ; il est conçu pour faire ressortir un petit ensemble d’erreurs Solana à fort impact et vous aider à décider si un programme est suffisamment sûr pour être livré ou s’il nécessite une revue manuelle plus approfondie.

Ce que le skill détecte

Le dépôt se concentre sur six schémas de vulnérabilités critiques, dont le CPI arbitraire, la validation incorrecte de PDA, l’absence de vérification de signer ou d’ownership, et l’usurpation de sysvar. solana-vulnerability-scanner est donc utile quand la vraie question n’est pas « ce code compile-t-il ? », mais « un attaquant peut-il détourner les hypothèses de confiance du modèle de comptes de Solana ? »

Cas d’usage les plus adaptés

Utilisez solana-vulnerability-scanner pour les travaux d’audit de sécurité sur des programmes proches du lancement, les revues de mises à jour, les intégrations de protocole et toute portion de code où les comptes sont censés représenter un programme, une autorité ou un sysvar précis. Il est moins pertinent pour la revue de logique métier générique ou de crates Rust sans lien avec Solana.

Ce qui le différencie

La valeur de solana-vulnerability-scanner tient à sa logique de décision spécifique à Solana. Il vous aide à vous concentrer sur les points d’attaque liés à la validation des comptes et aux CPI qui déterminent la vraie exploitabilité, plutôt que de perdre du temps sur des conseils valables pour n’importe quel dépôt Rust.

Comment utiliser le skill solana-vulnerability-scanner

Installer le skill

Installez solana-vulnerability-scanner avec :

npx skills add trailofbits/skills --skill solana-vulnerability-scanner

Ce chemin d’installation compte, car le skill se trouve dans plugins/building-secure-contracts/skills/solana-vulnerability-scanner dans le dépôt trailofbits/skills. Il faut donc s’attendre à un flux de travail d’audit de sécurité, pas à un simple prompt d’assistant de code générique.

Donner la bonne cible et le bon périmètre

La meilleure utilisation de solana-vulnerability-scanner commence avec une cible d’audit claire : nom du dépôt, points d’entrée du programme, type de framework et frontière de confiance qui vous intéresse. De bons inputs ressemblent à : « Audite ce programme Anchor pour le CPI arbitraire, les erreurs de dérivation de PDA et les vérifications de signer manquantes dans les flux initialize et withdraw. »

Des inputs faibles comme « analyse cette app Solana » passent généralement à côté des comptes et instructions spécifiques qui comptent vraiment.

Lire d’abord les bons fichiers

Pour l’installation et la revue de solana-vulnerability-scanner, commencez par SKILL.md, puis inspectez resources/VULNERABILITY_PATTERNS.md. Ce fichier de ressources donne les vérifications concrètes et les exemples sur lesquels le skill est construit, ce qui est bien plus utile que de deviner à partir des noms de fichiers seuls.

Parcourez aussi les fichiers du programme qui définissent :

  • les appels CPI utilisant invoke() ou invoke_signed()
  • les structs #[derive(Accounts)] dans Anchor
  • la dérivation des PDA et la validation des seeds
  • les contrôles d’ownership des comptes et de signer
  • les vérifications de sysvar ou de comptes de programme

Un workflow pratique

Utilisez le skill en deux passes. D’abord, demandez-lui d’identifier les classes de vulnérabilités probables et les instructions concernées. Ensuite, demandez une revue de chaque chemin signalé avec un niveau de détail au niveau des comptes, par exemple : quel compte est contrôlé par l’utilisateur, quel program ID est attendu, et si la validation a lieu avant le CPI ou avant le changement d’état.

Une bonne forme de prompt serait :
« Passe en revue ces instructions Solana/Anchor pour les six vulnérabilités critiques de solana-vulnerability-scanner. Concentre-toi sur la validation des comptes, les cibles CPI, les seeds de PDA et la confiance accordée aux sysvar. Retourne les constats par instruction, explique l’exploitabilité et signale les faux positifs. »

FAQ du skill solana-vulnerability-scanner

solana-vulnerability-scanner est-il réservé à Anchor ?

Non. Le skill couvre à la fois les programmes Solana Rust natifs et les programmes basés sur Anchor. Cela dit, Anchor exprime souvent les vérifications de façon plus déclarative, donc l’attention de la revue se déplace vers le caractère complet des contraintes et vers la bonne restriction des types de programmes et de comptes.

En quoi est-ce différent d’un prompt de revue de code classique ?

Un prompt classique peut repérer une logique suspecte, mais solana-vulnerability-scanner est calibré pour le modèle de comptes Solana et pour les façons précises dont les attaquants abusent du CPI, de la gestion des PDA et de la validation des comptes. Résultat : une meilleure couverture des problèmes qui comptent le plus dans un audit de sécurité Solana.

Est-ce adapté aux débutants ?

Oui, si vous savez repérer les points d’entrée du programme et les principaux comptes des instructions. Les débutants tirent le plus de valeur de solana-vulnerability-scanner lorsqu’ils l’utilisent comme une checklist guidée, puis posent des questions de suivi sur chaque instruction signalée au lieu d’essayer d’auditer tout le dépôt d’un seul coup.

Quand ne faut-il pas l’utiliser ?

Ne comptez pas sur solana-vulnerability-scanner comme seule revue pour la tokenomics, la logique métier ou la conception de la gouvernance. Il est particulièrement fort sur les patterns Solana critiques pour la sécurité, pas sur la correction globale du protocole ni sur la modélisation économique.

Comment améliorer le skill solana-vulnerability-scanner

Donner le chemin exact de l’instruction

Le plus gros gain de qualité vient du fait de nommer l’instruction, l’autorité attendue et le rôle de chaque compte. Au lieu de dire « vérifie mon programme », précisez quel handler doit être revu et quels comptes doivent être de confiance, modifiables, protégés par signer ou détenus par le programme. Cela aide solana-vulnerability-scanner à distinguer une vraie surface d’exposition d’une plomberie sans risque.

Donner les hypothèses de confiance dès le départ

Si un compte est censé être le token program, le system program, le metadata program ou un PDA précis, dites-le. Si un compte peut être fourni par l’utilisateur, dites-le aussi. Des hypothèses de confiance claires rendent la sortie de solana-vulnerability-scanner plus précise, parce que beaucoup de bugs Solana sont en réalité des bugs de validation manquante.

Demander l’exploitabilité, pas seulement des constats

Pour mieux utiliser solana-vulnerability-scanner, demandez le chemin d’attaque et la condition préalable qui rend chaque problème exploitable. Cela oblige la sortie à distinguer un « problème de style » d’un « bug de sécurité », ce qui est exactement ce qu’il vous faut dans un workflow d’audit de sécurité.

Itérer avec des zones de code concrètes

Si la première passe signale un motif de CPI ou de PDA, relancez la revue sur la fonction précise et sur son struct Accounts. Les meilleurs résultats viennent d’un périmètre réduit à une instruction à la fois, puis d’une vérification demandant si les contraintes de compte, les program ID et les seeds correspondent bien au modèle de confiance visé.

Notes et avis

Aucune note pour le moment
Partagez votre avis
Connectez-vous pour laisser une note et un commentaire sur cet outil.
G
0/10000
Derniers avis
Enregistrement...