Currently, we support the following versions with security updates:
| Version | Supported |
|---|---|
| 0.1.x | ✅ |
We take the security of Term seriously. If you believe you have found a security vulnerability, please report it to us as described below.
- Open a public GitHub issue for security vulnerabilities
- Include sensitive information in pull requests
- Email security concerns to: [Add your security email here]
- Include the word "SECURITY" in the subject line
- Provide detailed steps to reproduce the issue
- Allow us reasonable time to address the issue before public disclosure
- Acknowledgment: We'll acknowledge receipt within 48 hours
- Assessment: We'll assess the issue and determine its severity
- Fix Timeline: We'll provide an estimated timeline for a fix
- Disclosure: We'll coordinate disclosure timing with you
When contributing to Term, please follow these security guidelines:
-
Dependencies:
- Only add dependencies that are necessary
- Prefer well-maintained crates with good security track records
- Check dependencies using
cargo auditbefore submitting PRs
-
Code Practices:
- Never commit secrets, tokens, or credentials
- Avoid using
unsafecode unless absolutely necessary - Handle errors properly - avoid
unwrap()in production code - Validate all inputs, especially when parsing external data
-
Testing:
- Include tests for security-sensitive code paths
- Test error conditions and edge cases
- Run the full test suite before submitting PRs
Term includes several security-focused features:
- Input Validation: All data sources are validated before processing
- Safe Query Execution: SQL injection prevention through parameterized queries
- Memory Safety: Leverages Rust's memory safety guarantees
- Dependency Scanning: Automated vulnerability scanning via GitHub Actions
We appreciate responsible disclosure and will acknowledge security researchers who help us keep Term secure.