T

solana-vulnerability-scanner

por trailofbits

solana-vulnerability-scanner es un skill de auditoría de seguridad para Solana, enfocado en programas nativos en Rust y Anchor. Ayuda a revisar la lógica de CPI, la validación de PDA, las comprobaciones de firmante y propiedad, y el spoofing de sysvar para detectar seis vulnerabilidades críticas específicas de Solana antes del despliegue.

Estrellas4.9k
Favoritos0
Comentarios0
Agregado30 abr 2026
CategoríaSecurity Audit
Comando de instalación
npx skills add trailofbits/skills --skill solana-vulnerability-scanner
Puntuación editorial

Este skill obtiene 86/100 porque ofrece un flujo de auditoría creíble y específico de Solana que un agente puede activar con poca incertidumbre. Para quienes usan el directorio, merece la pena instalarlo si necesitan una revisión centrada en problemas de seguridad de Solana/Anchor, especialmente errores de CPI, PDA y validación de cuentas; aun así, conviene esperar un scanner especializado y no un marco de seguridad general.

86/100
Puntos fuertes
  • Tiene un alcance claramente centrado en la auditoría de Solana/Anchor, con casos de uso explícitos como revisión de CPI, validación de PDA, comprobaciones de firmante/propiedad y evaluación de seguridad previa al lanzamiento.
  • Aporta una guía operativa sustancial: el skill incluye pistas para detectar la plataforma, indicadores de código y un archivo de referencia detallado de patrones de vulnerabilidad con ejemplos concretos y mitigaciones.
  • Ofrece una buena capacidad de activación para agentes: el frontmatter y el contenido indican cuándo usarlo y qué patrones inspeccionar, lo que reduce la ambigüedad frente a un prompt genérico.
Puntos a tener en cuenta
  • No se proporciona comando de instalación, scripts ni tooling automatizado, así que el enfoque está más orientado a la guía que a un flujo de scanner ejecutable.
  • El repositorio parece centrado de forma estrecha en seis patrones críticos de vulnerabilidad, por lo que puede quedarse corto para necesidades de revisión de Solana más amplias fuera de esos casos.
Resumen

Resumen de la skill solana-vulnerability-scanner

solana-vulnerability-scanner es una skill de auditoría enfocada en revisar programas de Solana en busca de problemas de seguridad que suelen pasar desapercibidos en una revisión genérica de código Rust. Es ideal para ingenieros, auditores y equipos de seguridad que evalúan programas nativos de Solana o Anchor antes del despliegue, especialmente cuando el código usa CPI, lógica de PDA, comprobaciones de signer, validaciones de ownership de cuentas o introspección de instrucciones.

La skill solana-vulnerability-scanner no es un linter amplio de smart contracts; está pensada para detectar un conjunto reducido de errores de alto impacto específicos de Solana y ayudarte a decidir si un programa está lo bastante seguro para salir a producción o si necesita una revisión manual más profunda.

Qué detecta la skill

El repositorio se centra en seis patrones críticos de vulnerabilidad, entre ellos CPI arbitraria, validación incorrecta de PDA, ausencia de comprobaciones de signer o ownership, y suplantación de sysvars. Eso hace que solana-vulnerability-scanner sea útil cuando la pregunta principal no es “¿compila este código?”, sino “¿puede un atacante redirigir los supuestos de confianza en el modelo de cuentas de Solana?”

Casos de uso más adecuados

Usa solana-vulnerability-scanner para trabajo de auditoría de seguridad en programas próximos a lanzarse, revisiones de upgrades, integraciones de protocolo y cualquier flujo en el que se confíe en que las cuentas representan un programa, una autoridad o un sysvar concretos. Es menos útil para revisar lógica de negocio genérica o crates de Rust que no sean de Solana.

Qué la diferencia

El valor de solana-vulnerability-scanner está en su lógica de decisión específica de Solana. Te ayuda a centrarte en los bordes de validación de cuentas y CPI que realmente determinan la explotabilidad, en lugar de perder tiempo con recomendaciones que aplicarían a cualquier repositorio de Rust.

Cómo usar la skill solana-vulnerability-scanner

Instala la skill

Instala solana-vulnerability-scanner con:

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

Esa ruta de instalación importa porque la skill vive en plugins/building-secure-contracts/skills/solana-vulnerability-scanner dentro del repositorio trailofbits/skills, así que debes esperar un flujo de trabajo de auditoría de seguridad y no un prompt genérico de asistente de programación.

Dale el objetivo y el alcance correctos

El mejor uso de solana-vulnerability-scanner empieza con un objetivo de auditoría claro: nombre del repositorio, entrypoints del programa, tipo de framework y frontera de confianza que te interesa. Buenas entradas serían algo como: “Audita este programa de Anchor en busca de CPI arbitraria, errores de derivación de PDA y ausencia de comprobaciones de signer en los flujos initialize y withdraw.”

Entradas débiles como “analiza esta app de Solana” suelen pasar por alto las cuentas e instrucciones concretas que importan.

Lee primero los archivos adecuados

Para instalar y revisar con solana-vulnerability-scanner, empieza por SKILL.md y después inspecciona resources/VULNERABILITY_PATTERNS.md. Ese archivo de recursos te da las comprobaciones concretas y los ejemplos en los que se basa la skill, algo mucho más útil que adivinar a partir de los nombres de los archivos.

También conviene revisar los archivos del programa que definen:

  • llamadas CPI con invoke() o invoke_signed()
  • structs #[derive(Accounts)] en Anchor
  • derivación de PDA y validación de seeds
  • restricciones de ownership y signer de cuentas
  • comprobaciones de sysvar o de cuentas de programa

Un flujo de trabajo práctico

Usa la skill en dos pasadas. Primero, pídele que identifique las clases de vulnerabilidad más probables y las instrucciones afectadas. Después, pídele que revise cada ruta marcada con detalle a nivel de cuentas, por ejemplo qué cuenta controla el usuario, qué program ID se espera y si la validación ocurre antes de la CPI o del cambio de estado.

Un buen formato de prompt es:
“Revisa estas instrucciones de Solana/Anchor en busca de las seis vulnerabilidades críticas de solana-vulnerability-scanner. Céntrate en la validación de cuentas, los destinos de CPI, los seeds de PDA y la confianza en sysvars. Devuelve los hallazgos por instrucción, explica la explotabilidad y señala los falsos positivos.”

Preguntas frecuentes sobre la skill solana-vulnerability-scanner

¿solana-vulnerability-scanner es solo para Anchor?

No. La skill cubre tanto programas nativos de Solana en Rust como programas basados en Anchor. Dicho esto, el código de Anchor suele expresar las comprobaciones de forma más declarativa, así que el foco de la revisión pasa a ser si las restricciones están completas y si los tipos de programa y de cuenta están correctamente acotados.

¿En qué se diferencia de un prompt normal de revisión de código?

Un prompt normal puede detectar lógica sospechosa, pero solana-vulnerability-scanner está ajustada al modelo de cuentas de Solana y a las formas concretas en que los atacantes abusan de CPI, del manejo de PDA y de la validación de cuentas. El resultado es una cobertura mejor de los problemas que más importan en una auditoría de seguridad de Solana.

¿Es apta para principiantes?

Sí, si puedes identificar los entrypoints del programa y las cuentas principales de cada instrucción. Quienes empiezan sacan más partido usando solana-vulnerability-scanner como una checklist guiada y luego haciendo preguntas de seguimiento sobre cualquier instrucción marcada, en lugar de intentar auditar todo el repositorio de una sola vez.

¿Cuándo no debería usarla?

No confíes en solana-vulnerability-scanner como única revisión para tokenomics, lógica de negocio o diseño de gobernanza. Es especialmente fuerte en patrones de Solana críticos para la seguridad, no en corrección protocolaria más amplia ni en modelado económico.

Cómo mejorar la skill solana-vulnerability-scanner

Indícale la ruta exacta de la instrucción

La mayor mejora de calidad viene de nombrar la instrucción, la autoridad esperada y los roles de las cuentas. En vez de “revisa mi programa”, di qué handler quieres que se analice y qué cuentas deben ser confiables, modificables, protegidas por signer o propiedad del programa. Eso ayuda a solana-vulnerability-scanner a separar la exposición real de la simple infraestructura auxiliar.

Incluye las hipótesis de confianza desde el principio

Si una cuenta debe ser el token program, system program, metadata program o una PDA concreta, dilo. Si una cuenta puede ser proporcionada por el usuario, dilo también. Las hipótesis de confianza claras hacen que la salida de solana-vulnerability-scanner sea más precisa, porque muchos errores de Solana son en realidad fallos de validación que faltan.

Pide explotabilidad, no solo hallazgos

Para mejorar el uso de solana-vulnerability-scanner, pide la ruta de ataque y la precondición que hace explotable cada problema. Eso obliga a la salida a distinguir entre “problema de estilo” y “bug de seguridad”, que es justo lo que necesitas en un flujo de trabajo de auditoría de seguridad.

Itera con regiones concretas de código

Si la primera pasada marca un patrón de CPI o de PDA, vuelve a ejecutar la revisión sobre la función específica y su struct Accounts. Los mejores resultados llegan al acotar el alcance a una instrucción cada vez y luego preguntar si las restricciones de cuenta, los program IDs y los seeds encajan por completo con el modelo de confianza previsto.

Calificaciones y reseñas

Aún no hay calificaciones
Comparte tu reseña
Inicia sesión para dejar una calificación y un comentario sobre esta skill.
G
0/10000
Reseñas más recientes
Guardando...