Este repositório contém estudos avançados de segurança e engenharia em Smart Contracts (Solidity), utilizando ferramentas de elite do ecossistema Web3 para garantir contratos escaláveis e resilientes.
- Foundry: Framework de testes de alta performance (Property-based Testing, Fuzzing & Invariants).
- Slither: Analisador estático para detecção de vulnerabilidades críticas.
- GitHub Actions: Pipeline de CI/CD para auditoria automática de segurança a cada commit.
- WSL2/Ubuntu: Ambiente de desenvolvimento Linux otimizado.
- VulnerableVault.sol: Desenvolvimento de um cofre com vulnerabilidade de Reentrancy.
- Correção de Segurança: Implementação do padrão Checks-Effects-Interactions para mitigação de ataques.
- Fuzz Testing: Testes unitários com valores aleatórios (256 runs) para validar funções isoladas.
- Stateful Invariant Testing: Testes de estado para garantir a integridade contábil do contrato.
O motor de testes do Foundry foi configurado para tentar "quebrar" o contrato através de milhares de combinações aleatórias.
Métricas alcançadas:
- Chamadas Totais: 128.000 interações automáticas.
- Cenários (Runs): 256 sequências distintas.
- Resultado: 100% de sucesso.
Além da segurança, o laboratório foca em infraestrutura e otimização:
- ECDSA Verification (
CryptoVerify.sol):- Verificação de assinaturas digitais (r, s, v) off-chain.
- Uso de Assembly (Yul) para manipulação eficiente de memória e extração de componentes de assinatura.
- Validação via Fuzzing respeitando os limites matemáticos da curva Secp256k1.
- Merkle Trees (
MerkleVerifier.sol):- Implementação de verificação de provas Merkle para Whitelists e Airdrops.
- Foco em gas optimization, permitindo validar listas massivas de usuários com custo computacional mínimo na rede.
O projeto utiliza GitHub Actions para rodar o Slither automaticamente a cada push, impedindo que códigos com vulnerabilidades conhecidas sejam integrados ao branch principal.
# Rodar todos os testes (Unitários, Fuzzing e Invariantes)
forge test
# Rodar análise de segurança estática
slither . --compile-force-framework foundry