We take security seriously and provide security updates for the following versions:
| Version | Supported | Notes |
|---|---|---|
1.0.x |
✅ |
Current stable release |
< 1.0.0 |
❌ |
Pre-release, not supported |
Bunsenite provides the following security guarantees:
-
Zero
unsafeblocks: Enforced by#![deny(unsafe_code)]compiler directive -
Rust ownership model: Prevents use-after-free, double-free, and memory leaks
-
No null pointer dereferences: Rust’s type system eliminates this class of bugs
-
Bounds checking: All array/vector accesses are bounds-checked
-
Compile-time guarantees: Type errors are caught before runtime
-
No implicit conversions: Explicit type conversions required
-
Strong typing: Prevents type confusion vulnerabilities
-
Minimal dependencies: Only essential, well-audited crates
-
No network dependencies: Offline-first design eliminates network attack surface
-
Pinned versions: Dependencies locked to specific versions for reproducibility
-
Regular audits: Dependencies audited using
cargo audit
Please do NOT report security vulnerabilities through public GitHub/GitLab issues.
Report security vulnerabilities via:
-
GitHub Security Advisories: Create a new security advisory (preferred)
-
GitLab Confidential Issue: Use GitLab’s confidential issue feature
Please include:
-
Description: Clear description of the vulnerability
-
Impact: What an attacker could achieve
-
Reproduction: Step-by-step instructions to reproduce
-
Affected versions: Which versions are affected
-
Proposed fix: If you have one (optional)
-
Disclosure timeline: Your preferred disclosure timeline
-
Initial response: Within 48 hours
-
Triage: Within 1 week
-
Fix development: Depends on severity (critical: days, low: weeks)
-
Public disclosure: Coordinated with reporter, typically 90 days after fix
We use the following severity classifications:
-
Remote code execution
-
Privilege escalation to admin/root
-
Authentication bypass
Response: Patch within 48 hours, immediate release
-
SQL injection (not applicable to Bunsenite)
-
Information disclosure of sensitive data
-
Denial of service affecting availability
Response: Patch within 1 week, expedited release
-
Cross-site scripting (XSS) (browser/WASM context)
-
Information disclosure of non-sensitive data
-
Low-impact denial of service
Response: Patch within 2 weeks, next regular release
-
Keep updated: Always use the latest stable version
-
Verify signatures: Check release signatures (when available)
-
Audit dependencies: Run
cargo auditregularly -
Minimal permissions: Run with least privilege necessary
-
Air-gapped environments: Bunsenite works offline by design
-
Nickel evaluation: Bunsenite evaluates Nickel code, which could contain:
-
Infinite loops (resource exhaustion)
-
Large memory allocations
-
Consider: Run evaluation in sandboxed environment for untrusted input
-
-
File I/O: File reading follows OS permissions
-
Does NOT escalate privileges
-
Respects filesystem boundaries
-
-
WASM sandbox: Browser WASM runs in sandbox, but:
-
Subject to browser security model
-
Can consume memory/CPU (denial of service)
-
Bunsenite does NOT implement cryptography. For cryptographic needs:
-
Use established libraries (e.g.,
ring,sodiumoxide) -
Never roll your own crypto
-
Follow NIST/IETF recommendations
-
OWASP Top 10: N/A (not a web application)
-
CWE Top 25: Memory safety issues prevented by Rust
-
GDPR: No personal data collection
-
CCPA: No personal data collection
We use:
-
cargo audit: Check for known vulnerabilities in dependencies -
cargo clippy: Lint for security anti-patterns -
cargo deny: Check licenses and security advisories -
GitLab Security Scanner: Automated SAST in CI/CD
-
Dependabot: (Planned) Automated dependency updates
-
GitHub Security Advisories: Report a vulnerability
-
Security.txt: See
.well-known/security.txt(RFC 9116 compliant)
We believe in responsible disclosure and will credit security researchers who:
-
Report vulnerabilities responsibly
-
Allow coordinated disclosure
-
Follow our security policy
Credits will be listed in: - CHANGELOG.md - Release notes - SECURITY.md (this file)
Security research conducted in good faith will not result in legal action, provided:
-
You respect our disclosure timeline
-
You do not exploit vulnerabilities beyond proof-of-concept
-
You do not access user data or disrupt service
-
You comply with applicable laws
We support security researchers and the white-hat community.
Last updated: 2025-12-18 Version: 1.0.2