Nari is pre-1.0 (current language version 0.0.1, stdlib 0.0.4). Only the
main branch and the most recent tagged release receive security fixes.
| Version | Supported |
|---|---|
main (HEAD) |
✅ |
| Latest tag | ✅ |
| Older tags | ❌ |
Please do not open a public GitHub issue for security-sensitive reports.
Instead, file a private vulnerability report through GitHub's built-in advisory workflow:
- Go to https://github.com/nari-lang/nari/security/advisories.
- Click Report a vulnerability.
- Include:
- a description of the issue and the impact you believe it has,
- a minimal reproducer (Nari script, command line, or
naricinput), - affected versions / commit SHA,
- any suggested mitigations.
You should receive an acknowledgment within a few days. We will work with you to confirm the issue, prepare a fix, and coordinate disclosure.
- Memory-safety bugs in the interpreter, JIT, bytecode verifier, or builtins (e.g. UAF, OOB read/write, type confusion, double free).
- Sandbox escapes in the
naricbytecode loader / verifier. - Vulnerabilities in stdlib facilities that handle untrusted input
(
JSON.parse,Hex.decode,Base64.decode,Archive.extract,Hash.sha256File, HTTP client, FFI loader). - Authentication, authorization, or integrity issues in the package manager
(
npkg) or the package registry interaction.
- Issues that require an attacker to already control the source
.nari/.naricfile and the host system. Nari is not a security boundary against attacker-supplied source code. - Denial-of-service via deliberately pathological scripts (deep recursion, infinite loops, huge allocations) - these are language-level concerns, not vulnerabilities, unless they bypass an explicit limit such as the parser's nesting cap or the bytecode verifier.
- Issues only reproducible in the
--muslexperimental build (FFI is known not to work cleanly there). - Reports generated by automated scanners with no demonstrated exploit.
We aim to:
- Acknowledge reports within 7 days.
- Provide a triage decision within 14 days.
- Land a fix on
mainand request CVEs for confirmed issues before public disclosure.