{"id":"CVE-2026-53602","summary":"nebula-mesh - Host revocation is not durable: blocked/offboarded hosts can regain a valid certificate","details":"nebula-mesh is a self-hosted control plane for Slack Nebula mesh VPN. Prior to version 0.3.7, two related authorization gaps let a host that should no longer be trusted obtain a fresh, valid Nebula certificate, because nebula-mgmt does not re-evaluate revocation/authorization state at certificate issuance time — only at poll time. Firstly, the blocklist is not enforced at sign / re-enroll time. internal/api/enroll.go:128 calls caMgr.Sign(...) without consulting the blocklist. The blocklist is only checked in the poll path (internal/api/updates.go:57, fingerprintInBlocklist). The blocklist is keyed by certificate fingerprint (internal/store/sqlite.go), so a re-enrollment produces a new fingerprint that is not in the blocklist. Secondly, renewal does not re-validate operator / CA status. Auto-renewal at poll time (internal/api/updates.go:285-319, signHostCert) reads host.Name, host.Groups, host.NebulaIPs from the DB and re-signs without checking whether the owning operator is still active or the CA still valid. DisableOperator (internal/store/sqlite_operators.go) revokes sessions and API keys but does not retire the operator's CAs, and pki/signer.go checks only CA cert time-expiry, not operator/CA status. This issue has been patched in version 0.3.7.","aliases":["GHSA-339v-266x-79xr","GO-2026-5950"],"modified":"2026-09-06T03:46:08.675063239Z","published":"2026-09-04T19:40:16.908Z","related":["openSUSE-SU-2026:21483-1"],"database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-285","CWE-862"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/53xxx/CVE-2026-53602.json"},"references":[{"type":"WEB","url":"https://github.com/forgekeep/nebula-mesh/releases/tag/v0.3.7"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/53xxx/CVE-2026-53602.json"},{"type":"ADVISORY","url":"https://github.com/forgekeep/nebula-mesh/security/advisories/GHSA-339v-266x-79xr"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-53602"},{"type":"REPORT","url":"https://github.com/forgekeep/nebula-mesh/issues/178"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/forgekeep/nebula-mesh","events":[{"introduced":"0"},{"fixed":"01e9fae8cbff05ee4c9cf04b14f712205e05517d"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"0.3.7"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["v0.3.6","v0.3.5","v0.3.4","v0.3.3","v0.3.2","v0.3.1","v0.3.0","v0.2.0","v0.1.2","v0.1.1","v0.1.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-53602.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N"}]}