| Version | Supported | End of Life |
|---|---|---|
| 2.0.x | ✅ | Active |
| 1.x | ❌ | 2025-04-24 |
| < 1.0 | ❌ | Unsupported |
eBrowser v2.0 implements an 8-layer defense-in-depth security model:
Layer 8: Anti-Fingerprinting — Canvas/WebGL/Font/Timing protection
Layer 7: Privacy Engine — Tracker blocker, URL cleaning, GPC/DNT
Layer 6: Application Firewall — Domain blocklist, CIDR, rate limiting
Layer 5: DNS Security — DoH, DNSSEC, rebinding protection
Layer 4: Content Security — CSP, XSS scanner, CORS, HSTS
Layer 3: Process Sandbox — seccomp-BPF, namespaces, W^X
Layer 2: Memory Safety — Canaries, quarantine, UAF detection
Layer 1: Compiler Hardening — FORTIFY_SOURCE, PIE, RELRO, stack protector
-fstack-protector-strong— Stack buffer overflow detection-D_FORTIFY_SOURCE=2— Runtime buffer overflow checks-fPIE+-pie— Address Space Layout Randomization (ASLR)-Wl,-z,relro,-z,now— Full RELRO (GOT hardening)-Wl,-z,noexecstack— Non-executable stack (NX)
- Process Sandbox — seccomp-BPF syscall filtering, Linux namespace isolation
- Memory Safety — Canary values (0xDEADC0DE), quarantine zone for UAF detection, double-free detection, memory zeroing on free
- W^X Enforcement — No memory region is both writable and executable
- 138 unit tests — Including dedicated security test suites
- 5 libFuzzer harnesses — HTML parser, CSS parser, URL parser, XSS scanner, firewall
- AddressSanitizer — Heap/stack overflow, use-after-free detection
- UndefinedBehaviorSanitizer — Integer overflow, null deref detection
- Valgrind — Nightly leak checks on all test suites
- cppcheck — Static analysis for common vulnerability patterns
- CodeQL — GitHub-integrated semantic code analysis
Email: security@embeddedos.org
Do NOT open public GitHub issues for security vulnerabilities.
- Affected component and version
- Step-by-step reproduction instructions
- Proof-of-concept (code, crash dump, fuzzer input)
- Impact assessment (confidentiality, integrity, availability)
- Suggested CVSS score if applicable
| Phase | Timeline |
|---|---|
| Acknowledge | 24 hours |
| Triage + assign | 72 hours |
| Fix developed | 30 days |
| Patch released | 90 days |
| Public disclosure | 90 days (coordinated) |
This is a new release with comprehensive security review:
- All code has been fuzz-tested with ASan/UBSan
- Memory safety module detects buffer overflows at runtime
- No external dependencies with known CVEs (pure C, only LVGL for rendering)
We consider security research conducted in good faith to be authorized and will not pursue legal action against researchers who follow responsible disclosure practices.
We currently do not operate a formal bug bounty program. Critical vulnerability reporters will be credited in release notes and the SECURITY.md hall of fame.
A Software Bill of Materials (SBOM) in CycloneDX format is available at:
sbom/ebrowser-2.0.0.cdx.json