cairo-vulnerability-scanner
por trailofbitscairo-vulnerability-scanner analiza contratos inteligentes de Cairo/StarkNet en busca de seis problemas críticos, incluidos errores aritméticos con felt252, fallos en mensajería L1-L2, errores de conversión de direcciones y replay de firmas. Usa este skill de cairo-vulnerability-scanner para revisiones de Security Audit en contratos de StarkNet.
Este skill obtiene 78/100, lo que lo convierte en una opción sólida para usuarios del directorio que necesitan un flujo de auditoría específico para Cairo/StarkNet. El repositorio aporta suficientes patrones concretos de vulnerabilidades y pistas de uso para que un agente lo active y lo aplique con menos incertidumbre que un prompt genérico de seguridad, aunque seguiría beneficiándose de una incorporación y una guía de ejecución más sólidas.
- Los casos de uso explícitos para auditar contratos de StarkNet/Cairo, puentes L1-L2, verificación de firmas y manejadores L1 facilitan activarlo en el contexto adecuado.
- El contenido es amplio y está bien estructurado, con 6 patrones de vulnerabilidad identificados y orientación de detección en formato de lista, lo que ofrece a los agentes apoyo accionable.
- La evidencia del repositorio incluye bloques de código, referencias a repositorios/archivos y un archivo de recursos dedicado a patrones de vulnerabilidades, lo que mejora la claridad operativa y la confianza.
- No hay comando de instalación ni instrucciones de configuración, así que los usuarios del directorio deberán inferir cómo activarlo o integrarlo.
- El material de apoyo se limita a un solo archivo de recursos y no incluye scripts ni pruebas, por lo que el flujo puede quedar menos completo para casos límite o usos con mucha automatización.
Panorama general de la skill cairo-vulnerability-scanner
Qué hace cairo-vulnerability-scanner
La skill cairo-vulnerability-scanner te ayuda a revisar contratos Cairo/StarkNet en busca de problemas de seguridad específicos de la plataforma que suelen pasarse por alto en una auditoría genérica al estilo Solidity. Se centra en seis patrones críticos, incluidos errores de aritmética con felt252, riesgos en el mensajería L1-L2, problemas de conversión de direcciones y reutilización de firmas.
Quién debería usarla
Usa la skill cairo-vulnerability-scanner si estás haciendo una Security Audit de apps de StarkNet, código de bridges o lógica de contratos Cairo. Es especialmente útil cuando ya tienes los archivos del contrato y quieres una primera revisión de vulnerabilidades, focalizada y rápida, antes de hacer un análisis manual más profundo.
Qué la hace diferente
El valor no está solo en “buscar bugs”, sino en “buscar bugs específicos de Cairo”. Eso importa porque muchos fallos en este ecosistema vienen de elecciones de tipos, supuestos entre capas y lógica de handlers, más que de reentrancy obvia o controles de acceso genéricos. La skill brilla cuando necesitas una checklist rápida y estructurada para patrones de riesgo ya conocidos en Cairo.
Cómo usar la skill cairo-vulnerability-scanner
Instálala y apúntala al alcance correcto
Usa el flujo cairo-vulnerability-scanner install dentro del paquete de skills de Trail of Bits y aplícalo al repositorio o al subconjunto de contratos que realmente quieres revisar. La entrada principal debe ser código fuente Cairo, especialmente archivos .cairo, además de cualquier módulo de bridge, handler o verificación de firmas vinculado al comportamiento de StarkNet.
Dale un prompt de revisión de seguridad, no una tarea vaga
Un buen prompt nombra el área del contrato, los límites de confianza y la preocupación concreta. Por ejemplo: “Audita este módulo Cairo de StarkNet en busca de uso incorrecto de L1 handler, problemas aritméticos con felt252 y riesgo de replay de firmas. Céntrate en funciones alcanzables externamente y en la validación de mensajes.” Eso funciona mejor que “busca vulnerabilidades” porque orienta el análisis hacia los seis patrones previstos.
Lee primero estos archivos
Empieza por SKILL.md para entender el flujo de trabajo previsto y luego revisa resources/VULNERABILITY_PATTERNS.md para ver la lógica concreta de detección y las notas de mitigación. Si el repositorio solo tiene un archivo de soporte, ese es el que debes leer antes de ejecutar la skill sobre código real.
Usa un flujo de trabajo acotado
Empieza por los puntos de entrada del contrato: funciones externas, constructores y funciones #[l1_handler]. Después revisa la aritmética sobre balances, las conversiones entre felt252, ContractAddress y EthAddress, y cualquier lógica que acepte mensajes o firmas desde fuera del contrato. Ese orden coincide con la forma en que cairo-vulnerability-scanner está diseñada para detectar rápido los problemas de mayor valor.
Preguntas frecuentes sobre la skill cairo-vulnerability-scanner
¿Sirve para todos los contratos inteligentes?
No. La skill cairo-vulnerability-scanner es para contratos Cairo y StarkNet, no para auditorías genéricas de EVM. Si tu base de código es principalmente Solidity o servicios off-chain en Rust, la skill aportará poco valor.
¿Necesito conocer bien Cairo antes?
Tener una base ayuda, pero la skill sigue siendo útil para principiantes que necesitan un punto de partida guiado para una Security Audit. Es especialmente útil cuando entiendes el flujo de la aplicación, pero necesitas ayuda para revisar modos de fallo específicos de Cairo.
¿En qué se diferencia de un prompt normal?
Un prompt normal suele encontrar problemas superficiales. La skill cairo-vulnerability-scanner te da un marco de revisión repetible para debilidades conocidas de StarkNet, lo que reduce los casos omitidos y hace que el resultado de la auditoría sea más fácil de comparar entre contratos.
¿Cuándo no debería usarla?
No la uses como único método de revisión para un lanzamiento en producción, ni la uses cuando el repositorio no tenga contratos Cairo. Es un escáner enfocado, no un sustituto de la verificación formal completa ni del modelado de amenazas.
Cómo mejorar la skill cairo-vulnerability-scanner
Aporta el contexto del contrato que cambia la auditoría
Las mejores entradas nombran el rol del contrato, el activo en riesgo y la ruta entre capas. Por ejemplo: “Este contrato de depósitos de bridge recibe mensajes de L1 y acuña en StarkNet; revisa replay, conversión de direcciones y validación de handlers.” Eso es mucho más sólido que enumerar archivos sin más, porque le indica a la skill qué patrones de vulnerabilidad importan más.
Menciona los tipos de datos exactos y los supuestos de confianza
Los resultados mejoran cuando incluyes los tipos y las invariantes que suelen provocar bugs en Cairo: aritmética con felt252, almacenamiento de balances, conversión de u256, manejo de ContractAddress y cualquier esquema de firmas. Si el contrato espera nonces monótonos, unicidad de mensajes o importes acotados, dilo explícitamente.
Itera sobre los primeros hallazgos
Si la primera pasada devuelve aritmética sospechosa o problemas en el manejo de mensajes, pide una segunda revisión que se centre solo en esas ubicaciones y solicite rutas de explotación, no solo observaciones. Por ejemplo: “Revisa estas dos funciones para ver si son explotables por replay o underflow y sugiere la corrección mínima.” Eso suele producir resultados de cairo-vulnerability-scanner usage más accionables que repetir el escaneo completo sin cambios.
Dale el fragmento de repositorio adecuado
Obtendrás mejores resultados aislando los archivos .cairo relevantes en lugar de enviar un monorepo entero con lenguajes mezclados. Para cairo-vulnerability-scanner for Security Audit, las entradas con mayor señal son los archivos del contrato, los módulos de handlers y cualquier código auxiliar que transforme direcciones, firmas o payloads entre capas.
