Security Policy¶
DebugBox takes security seriously. All released images follow strict practices to minimize risk.
Vulnerability Reporting¶
Do not open public GitHub issues for security vulnerabilities.
Please report privately via Email.
Subject: [SECURITY] DebugBox vulnerability: [brief description]
Include:
- Description and steps to reproduce
- Affected variant and version (e.g.,
power-1.0.0) - Potential impact and severity assessment
We follow responsible disclosure:
- Acknowledgment: Within 72 hours
- Investigation: Details shared via private discussion
- Fix timeline: Based on severity (HIGH/CRITICAL: immediate)
- Patch release: Before public announcement
- Credit: Given if desired
→ Full policy on GitHub: SECURITY.md
Security Practices¶
Automated Vulnerability Scanning¶
Every release is scanned with Trivy:
- HIGH and CRITICAL vulnerabilities block release entirely
- All three variants (lite, balanced, power) scanned
- Both
linux/amd64andlinux/arm64validated - Results logged in GitHub Actions workflow
Why only amd64 scanning before push?
- 99% of vulnerabilities are in shared base layers (OS packages, dependencies)
- amd64 and arm64 have identical software stacks (only CPU instruction sets differ)
- Industry standard: Docker Official Images, Python, Node, Redis all follow this pattern
Local scanning:
make scan
Image Design Security¶
- Runs as root — required for tools like
tcpdump,strace(ephemeral debugging only) - No baked-in secrets — credentials not compiled in
- Minimal variants — lite excludes compilers/development tools to reduce attack surface
- Pinned dependencies — critical tools version-locked and SHA-verified where possible
- Alpine Linux base — minimal (~3.9 MB) attack surface vs. Debian/Ubuntu
Release Security¶
From RELEASE.md:
| Version | Support Duration | Security Patches |
|---|---|---|
| Current (v1.x) | 12 months | All severities |
| Previous (v1.x-1) | 6 months | HIGH/CRITICAL only |
| Older (v1.x-2+) | Community/best-effort | None guaranteed |
Example: When v1.1.0 is released:
- v1.0.x gets 6 months of security-only patches
- v0.9.x shifts to community support
Immutable Released Images¶
- Released versions never change — once published, images are immutable
- Older versions remain available forever — for historical reference or rollback
- If a vulnerability is found:
- Patched version released immediately (e.g., v1.0.0 → v1.0.1)
- Old release marked with warning in GitHub Releases
- Users on
:latestauto-receive fix - Users on pinned versions can upgrade at their discretion
Best Practices for Users¶
Version Pinning (Strongly Recommended)¶
Production:
# Always pin version AND variant
kubectl debug my-pod -it --image=ghcr.io/ibtisam-iq/debugbox:1.0.0
docker run -it ghcr.io/ibtisam-iq/debugbox:lite-1.0.0
Never use :latest in production manifests.
Variant Selection¶
- Use lite when possible (14 MB, smallest attack surface)
- Upgrade to balanced for standard debugging (46 MB)
- Use power only when needed for advanced forensics (104 MB)
Runtime Hygiene¶
- Run in isolated namespaces
- Delete debugging pods immediately after use
- Don't leave debugging containers running in production
- Monitor GitHub security advisories: watch → Custom → Security alerts
Multi-Architecture Considerations¶
- DebugBox is identical across amd64 and arm64 (same security guarantees)
- No architecture-specific vulnerabilities known
- Both architectures scanned before release
Known Vulnerabilities & Suppressions¶
DebugBox is transparent about any CVEs in optional dependencies:
Check SECURITY.md for:
- List of suppressed vulnerabilities (if any)
- Rationale for each suppression
- Risk assessment per variant
Acknowledgments¶
Thank you to security researchers who report issues responsibly.
Hall of Fame: No reports yet — help us keep DebugBox secure!
Quick Links¶
- Report vulnerability: Email
- GitHub Security Advisories: github.com/ibtisam-iq/debugbox/security
- Releases & Security Notes: github.com/ibtisam-iq/debugbox/releases
- Subscribe to alerts: Watch repository → Custom → Security alerts