This document outlines the security governance framework for the Soroban Security Scanner, including vulnerability disclosure, security review processes, and incident response procedures.
If you discover a security vulnerability in the Soroban Security Scanner, please follow our responsible disclosure process:
- Initial Report: Submit a Vulnerability Report through GitHub Issues
- Security Team Review: Our security team will acknowledge receipt within 48 hours
- Assessment Period: We will assess the vulnerability within 5 business days
- Resolution Timeline:
- Critical: 24-48 hours
- High: 7 days
- Medium: 14 days
- Low: 30 days
- Public Disclosure: After fix deployment, coordinated disclosure
For critical security issues requiring immediate attention:
- Email: security-emergency@soroban-security.org
- PGP Key: [TBD]
- Phone: [TBD - for authorized reporters only]
Note: Do NOT create public GitHub issues for security vulnerabilities until they have been addressed.
All code changes undergo automated security scanning:
-
Static Analysis
- Rust: Clippy, cargo-audit
- JavaScript/TypeScript: ESLint security rules
- Smart Contracts: Soroban-specific analyzers
-
Dependency Scanning
- Cargo-audit for Rust dependencies
- npm audit for JavaScript dependencies
- Automated dependency updates with Dependabot
-
Container Security
- Docker image scanning
- Kubernetes manifest validation
- Secrets detection
| Change Type | Review Required | Reviewers |
|---|---|---|
| Smart Contract Changes | β Mandatory | Security Lead + 2 external auditors |
| Core Scanner Modifications | β Mandatory | Security Team |
| Protocol Changes | β Mandatory | Security Lead + Protocol Council |
| Authentication/Authorization | β Mandatory | Security Team + Technical Lead |
| Infrastructure Changes | β Recommended | DevOps + Security |
| Documentation Updates | β Not Required | N/A |
| Test Updates | β Not Required | N/A |
- Input validation and sanitization
- Authentication and authorization checks
- Access control implementation
- Encryption and key management
- Error handling and logging
- Race condition prevention
- Memory safety (Rust smart contracts)
- Reentrancy protection
- Integer overflow/underflow protection
- Front-running protection
- Smart contract upgrade safety
- Timelock adequacy
- Multi-signature requirements met
For all smart contract changes:
- Runtime verification using Soroban SDK tools
- Property-based testing with foundry/forge
- Invariant checking
- Formal specification in TLA+ or similar
- Third-party audit report
| Severity | Description | Response Time |
|---|---|---|
| Critical | Active exploit, data breach, fund loss | < 1 hour |
| High | Vulnerability with exploit potential | < 4 hours |
| Medium | Vulnerability without known exploit | < 24 hours |
| Low | Minor security issue | < 7 days |
- Detection: Automated monitoring or manual report
- Triage: Security team confirms incident (15 minutes)
- Containment: Emergency protocols activated (1 hour)
- Disable vulnerable features
- Deploy emergency patches
- Implement circuit breakers
- Notify stakeholders
- Eradication: Root cause removal (4-24 hours)
- Recovery: Full service restoration (4-48 hours)
- Post-Incident: Review and documentation (within 7 days)
- Detection & Triage: < 4 hours
- Containment: < 12 hours
- Eradication: < 3 days
- Recovery: < 7 days
- Post-Incident: < 14 days
- Triage: < 24 hours
- Fix Deployment: < 14 days
- Verification: < 21 days
- Triage: < 7 days
- Fix Deployment: < 30 days
In critical security incidents, the following emergency protocols may be invoked:
- Emergency Council Session: Within 1 hour
- Emergency Vote: 24-hour window, 90% threshold
- Emergency Deployment: Immediate after approval
- Transparency Report: Within 24 hours of resolution
- Runtime Security: Falco, Prometheus alerts
- Network Security: IDS/IPS, anomaly detection
- Access Monitoring: Audit logs, SIEM integration
- Smart Contract Monitoring: On-chain event tracking
| Metric | Warning | Critical |
|---|---|---|
| Failed Auth Attempts | 10/min | 50/min |
| Smart Contract Reverts | 5% | 20% |
| Response Time | 2s | 5s |
| Error Rate | 1% | 5% |
| Resource Usage | 70% | 90% |
All vulnerabilities are scored using CVSS v3.1:
- Critical (9.0-10.0): Immediate action required
- High (7.0-8.9): Action required within 7 days
- Medium (4.0-6.9): Action required within 30 days
- Low (0.1-3.9): Action required within 90 days
All vulnerabilities tracked in dedicated security project:
- Jira/GitHub Issues with security labels
- SLA tracking dashboard
- Regular status updates
- Post-remediation verification
| Role | Training | Frequency |
|---|---|---|
| Developers | Secure Coding, Rust Security | Quarterly |
| DevOps | Infrastructure Security, K8s Hardening | Quarterly |
| QA | Security Testing, Penetration Testing | Semi-annually |
| Management | Security Governance, Risk Management | Annually |
- OWASP Top 10
- NIST Cybersecurity Framework
- ISO 27001
- SOC 2 Type II
- Smart Contract Security Best Practices (ConsenSys, Trail of Bits)
- Internal Security Audit: Quarterly
- External Penetration Test: Semi-annually
- Smart Contract Audit: Per major release
- Compliance Audit: Annually
- Chair: Security Lead
- Members: Security researchers, protocol council reps, external advisors
- Meetings: Bi-weekly for incident review, monthly for security posture
- Monthly: Security metrics and incident summary
- Quarterly: Security posture report
- Annually: Comprehensive security review
- Architecture Threat Model (updated quarterly)
- Data Flow Diagrams (updated per major change)
- Access Control Matrix (updated per change)
- Cryptographic Implementation Details
- Incident Response Playbooks
- Disaster Recovery Plan
Coming Soon:
- HackerOne program
- Reward tiers: $500 - $100,000
- Scope: Smart contracts, core infrastructure
- Safe harbor policy for good faith researchers
| Purpose | Contact |
|---|---|
| Vulnerability Reporting | security@soroban-security.org |
| Emergency Response | security-emergency@soroban-security.org |
| Security Inquiries | security-team@soroban-security.org |
- Version: 1.0
- Effective Date: [Current Date]
- Review Cycle: Annual
- Last Updated: [Current Date]
For questions about this policy, contact the Security Team.