Security & vulnerability disclosure
We do not run a paid bug bounty program. CodeNavi does not offer monetary compensation for vulnerability reports. We do offer safe harbor for good-faith research and we credit reporters in the release notes. Please include full technical details in your first email — reports that withhold the finding pending a fee or a call will not be triaged.
Reporting a vulnerability
Vulnerabilities are reported privately by email to security@codenavi.com. There is no public issue tracker for CodeNavi security issues. Please do not publicly disclose a vulnerability before we have had a chance to confirm it and ship a fix.
Include:
- A description of the vulnerability
- Steps to reproduce
- Affected version(s)
- Impact assessment — what an attacker could actually achieve
- A suggested fix, and a CVSS 3.1 severity self-assessment (both optional, both helpful)
Scope
| In scope | Out of scope |
|---|---|
| The CodeNavi server, CLI, and chunkers | The customer's own indexed source code — CodeNavi processes it, but bugs in your code are not CodeNavi vulnerabilities |
| The signed CodeNavi container image distributed with the install package | The host operating system, Docker daemon, or container runtime |
| Default configuration files and example settings | Network-level attacks against deployments bound to a non-localhost address — that is an operator responsibility |
| The bundled Claude Code / Codex / Antigravity plugins | Denial of service by resource exhaustion — expensive tools are rate-limited, but full DoS resistance requires enabling auth and fronting the server appropriately |
The CodeNavi release signing key (cosign.pub) and the signed update flow |
Bugs in upstream dependencies — report those upstream; we track and bump on disclosure |
Response timeline
| Stage | Timeline |
|---|---|
| Acknowledgment | Within 48 hours (calendar) |
| Initial assessment | Within 5 business days |
| Fix or mitigation | Within 30 days for critical/high severity (CVSS ≥ 7.0); best effort for medium/low |
| Public disclosure | Coordinated with the reporter, typically 90 days from confirmation |
Supported versions
| Version | Supported |
|---|---|
| 1.3.x | Yes (current) |
| 1.2.x | Best effort — critical fixes only |
| < 1.2 | No |
Safe harbor
We will not pursue legal action against security researchers acting in good faith and in accordance with this policy. This follows the principles set out in the disclose.io safe harbor framework. Acting in good faith means: only testing against your own installation, not accessing or exfiltrating other people's data, not degrading our services, and giving us a reasonable window to fix the issue before disclosing it.
Release signing key — canonical fingerprints
CodeNavi image tarballs and update manifests are
cosign-signed
with the CodeNavi release key. The public key (cosign.pub) ships inside the
install package — convenient, but it means a tampered package could substitute the key alongside
the artifacts and every signature would still verify.
The defense is an out-of-band fingerprint check: this page is served over a different channel than the package, so compare the key you received against the canonical values below before trusting a signed install or update.
- sha256(cosign.pub)
- 653596650da9d7db8cb8809226274978d454018e5f0b7bb68feb6165c4b0b134
- sha256(DER pubkey)
- 1253eca956137fa4990bdf2566d0790ff67f59310ff27e651cde52c86e44f708
Verify the key shipped in your package matches, before installing:
sha256sum cosign.pub # expect: 653596650da9d7db8cb8809226274978d454018e5f0b7bb68feb6165c4b0b134 cosign.pub openssl pkey -pubin -in cosign.pub -outform DER | sha256sum # expect: 1253eca956137fa4990bdf2566d0790ff67f59310ff27e651cde52c86e44f708 -
A mismatch on either line means the key in your package is not the CodeNavi release key. Stop, do not install, and contact security@codenavi.com.
Security architecture
CodeNavi is built for self-hosted deployment inside a trusted network, and defends in depth
against four primary threats: secret and PII leakage into an LLM context window (44 detection
rules, redaction at chunk time — payment cards and IBANs redacted by default), prompt
injection hidden in code comments and string literals,
supply-chain compromise (SBOM, CVE scanning, pinned model revisions, no remote model code
execution), and unauthorized access to the MCP server (bearer-token auth, a startup exposure
guard, and tiered /health disclosure).
The full architecture, threat model, and disclosure policy ship as SECURITY.md in
every CodeNavi package.