cairo-vulnerability-scanner
por trailofbitsA cairo-vulnerability-scanner analisa contratos inteligentes Cairo/StarkNet em busca de seis issues críticas, incluindo erros de aritmética com felt252, falhas de mensagens L1-L2, bugs de conversão de endereço e replay de assinatura. Use esta skill cairo-vulnerability-scanner em revisões de Security Audit de contratos StarkNet.
Esta skill recebe 78/100, o que a torna uma candidata sólida para usuários do diretório que precisam de um fluxo de auditoria específico para Cairo/StarkNet. O repositório traz padrões de vulnerabilidade concretos e pistas de uso suficientes para ajudar um agente a acioná-la e aplicá-la com menos suposição do que um prompt genérico de segurança, embora ainda se beneficie de uma orientação de onboarding e execução mais forte.
- Casos de uso explícitos para auditar contratos StarkNet/Cairo, pontes L1-L2, verificação de assinatura e L1 handlers facilitam acionar a skill no contexto certo.
- O conteúdo é substancial e bem estruturado, com 6 padrões de vulnerabilidade nomeados e orientação de detecção em formato de checklist, o que dá aos agentes um suporte prático e acionável.
- As evidências do repositório incluem blocos de código, referências a repo/arquivos e um arquivo de recursos dedicado a padrões de vulnerabilidade, o que melhora a clareza operacional e a confiabilidade.
- Não há comando de instalação nem instruções de configuração, então os usuários do diretório precisam inferir como ativar ou integrar a skill.
- O material de apoio se limita a um arquivo de recursos e não há scripts/testes, então o fluxo pode ser menos completo para casos de borda ou uso com muita automação.
Visão geral da skill cairo-vulnerability-scanner
O que a cairo-vulnerability-scanner faz
A skill cairo-vulnerability-scanner ajuda você a revisar contratos Cairo/StarkNet em busca de problemas de segurança específicos da plataforma que passam fácil despercebidos numa auditoria genérica no estilo Solidity. Ela se concentra em seis padrões críticos, incluindo erros de aritmética com felt252, riscos em mensagens L1-L2, problemas de conversão de endereços e replay de assinaturas.
Para quem ela é indicada
Use a skill cairo-vulnerability-scanner se você estiver fazendo uma Security Audit para apps StarkNet, código de bridge ou lógica de contratos em Cairo. Ela é mais útil quando você já tem os arquivos do contrato e quer uma primeira triagem direcionada de vulnerabilidades antes de uma análise manual mais profunda.
O que a diferencia
O valor não está só em “procurar bugs”, mas em “procurar bugs específicos de Cairo”. Isso importa porque muitas falhas nesse ecossistema vêm de escolhas de tipos, suposições entre camadas e lógica de handlers, e não de reentrância óbvia ou controles de acesso genéricos. A skill é mais forte quando você quer uma checklist rápida e estruturada para padrões de risco já conhecidos em Cairo.
Como usar a skill cairo-vulnerability-scanner
Instale e aponte para o escopo certo
Use o fluxo cairo-vulnerability-scanner install no pacote de skills da Trail of Bits e depois aplique a skill ao repositório ou ao subconjunto de contratos que você realmente quer revisar. A entrada principal deve ser o código-fonte em Cairo, especialmente arquivos .cairo, além de quaisquer módulos de bridge, handler ou verificação de assinatura ligados ao comportamento StarkNet.
Dê um prompt de revisão de segurança, não uma tarefa vaga
Um bom prompt nomeia a área do contrato, as fronteiras de confiança e a preocupação específica. Por exemplo: “Audite este módulo Cairo StarkNet para uso indevido de L1 handler, problemas de aritmética com felt252 e risco de replay de assinatura. Foque em funções acessíveis externamente e na validação de mensagens.” Isso funciona melhor do que “verifique vulnerabilidades”, porque direciona a varredura para os seis padrões pretendidos.
Leia estes arquivos primeiro
Comece por SKILL.md para entender o fluxo esperado e depois examine resources/VULNERABILITY_PATTERNS.md para ver a lógica concreta de detecção e as notas de mitigação. Se o repositório tiver apenas um arquivo de suporte, esse é o que você deve ler antes de rodar a skill em código real.
Use um fluxo enxuto
Comece pelos pontos de entrada do contrato: funções externas, construtores e funções #[l1_handler]. Em seguida, revise a aritmética sobre saldos, as conversões entre felt252, ContractAddress e EthAddress, e qualquer lógica que aceite mensagens ou assinaturas vindas de fora do contrato. Essa ordem reflete como a cairo-vulnerability-scanner foi pensada para encontrar problemas de alto valor com rapidez.
FAQ da skill cairo-vulnerability-scanner
Isso serve para todos os smart contracts?
Não. A skill cairo-vulnerability-scanner é para contratos Cairo e StarkNet, não para auditorias genéricas de EVM. Se a sua base de código for majoritariamente Solidity ou serviços off-chain em Rust, o ganho será pequeno.
Preciso já saber Cairo bem?
Ter uma noção básica ajuda, mas a skill ainda é útil para iniciantes que precisam de um ponto de partida guiado para Security Audit. Ela é especialmente útil quando você entende o fluxo da aplicação, mas precisa de ajuda para checar modos de falha específicos de Cairo.
Em que ela difere de um prompt normal?
Um prompt comum costuma encontrar problemas superficiais. A skill cairo-vulnerability-scanner oferece uma estrutura repetível de revisão para fraquezas conhecidas de StarkNet, o que reduz casos perdidos e facilita comparar os resultados da auditoria entre contratos.
Quando não devo usar?
Não use como único método de revisão antes de um lançamento em produção, e não use se o repositório não tiver contratos Cairo. Ela é uma ferramenta focada, não um substituto para verificação formal completa nem para modelagem de ameaças.
Como melhorar a skill cairo-vulnerability-scanner
Traga o contexto do contrato que muda a auditoria
As melhores entradas nomeiam o papel do contrato, o ativo em risco e o caminho entre camadas. Por exemplo: “Este contrato de depósito de bridge recebe mensagens L1 e faz mint na StarkNet; verifique replay, conversão de endereço e validação do handler.” Isso é muito mais forte do que listar arquivos isoladamente, porque informa à skill quais padrões de vulnerabilidade merecem mais atenção.
Mencione os tipos de dados e as premissas de confiança exatas
Os resultados melhoram quando você inclui os tipos e invariantes que geram bugs em Cairo: matemática com felt252, armazenamento de saldos, conversão de u256, tratamento de ContractAddress e qualquer esquema de assinatura. Se o contrato espera nonces monotônicos, unicidade de mensagens ou valores limitados, diga isso explicitamente.
Itere sobre os primeiros achados
Se a primeira passada trouxer aritmética suspeita ou problemas no tratamento de mensagens, peça uma segunda análise focada só nesses pontos e solicite caminhos de exploração, não apenas observações. Por exemplo: “Revise estas duas funções para explorabilidade de replay ou underflow e sugira a correção mínima.” Isso normalmente gera resultados mais acionáveis de cairo-vulnerability-scanner usage do que repetir a varredura completa sem mudanças.
Alimente a skill com o recorte certo do repositório
Você terá uma saída melhor isolando os arquivos .cairo relevantes do que enviando um monorepo inteiro com linguagens misturadas. Para cairo-vulnerability-scanner for Security Audit, as entradas com mais sinal são os arquivos de contrato, os módulos de handler e qualquer código auxiliar que transforme endereços, assinaturas ou payloads entre camadas.
