Description
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.
Published: 2026-09-04
Score: 6.9 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Unauthorized certificate issuance allowing revoked hosts to regain network access
Action: Immediate Patch
AI Analysis

Impact

A host that has been blocked or offboarded can obtain a new, valid Nebula VPN certificate because the control plane does not re-evaluate revocation at the time of issuance. The vulnerability allows an unauthorized or compromised host to be re-enrolled and therefore re-established on the mesh, potentially compromising confidentiality, integrity, and availability of the network. The weakness is an authorization failure that permits certificate issuance and renewal without checking the host’s current block status or operator/CA validity, exposing the system to misuse of privileged credentials.

Affected Systems

forgekeep:nebula-mesh – the nebula-mesh control plane. All releases prior to version 0.3.7 are affected; the patch is supplied in release v0.3.7. No other versions or vendors are indicated.

Risk and Exploitability

The CVSS score of 6.9 indicates a moderate risk. The vulnerability is not listed in the CISA KEV catalog. Likely exploitation requires that an attacker has some ability to interact with the nebula-mgmt API or to host a re-enrollment request, which is usually restricted to internal network traffic. Because the blocklist is only enforced at poll time, a revoked host can bypass revocation immediately upon re-enrollment, making the attack practical if the attacker gains sufficient API access.

Generated by OpenCVE AI on September 4, 2026 at 21:33 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade nebula-mesh to version 0.3.7 or later, which disables blocklist checks at enrollment and ensures operator/CA status is validated during renewal.
  • Revoke or remove certificates for hosts that are currently blocked or offboarded, ensuring they cannot re-enroll until properly authorized.
  • Restart the nebula-mgmt service to apply the updated blocklist and renewal logic, and verify that the blocklist enforcement functions by attempting a test re-enrollment of a revoked host.

Generated by OpenCVE AI on September 4, 2026 at 21:33 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-339v-266x-79xr nebula-mesh: Host revocation is not durable - blocked/offboarded hosts can regain a valid certificate
History

Mon, 07 Sep 2026 08:45:00 +0000

Type Values Removed Values Added
First Time appeared Forgekeep
Forgekeep nebula-mesh
Vendors & Products Forgekeep
Forgekeep nebula-mesh

Sat, 05 Sep 2026 22:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 04 Sep 2026 19:45:00 +0000

Type Values Removed Values Added
Description 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.
Title nebula-mesh - Host revocation is not durable: blocked/offboarded hosts can regain a valid certificate
Weaknesses CWE-285
CWE-862
References
Metrics cvssV4_0

{'score': 6.9, 'vector': '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'}


Subscriptions

Forgekeep Nebula-mesh
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-04T19:50:03.057Z

Reserved: 2026-06-09T19:39:52.404Z

Link: CVE-2026-53602

cve-icon Vulnrichment

Updated: 2026-09-04T19:49:59.146Z

cve-icon NVD

Status : Deferred

Published: 2026-09-04T20:17:23.130

Modified: 2026-09-08T21:05:26.920

Link: CVE-2026-53602

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-07T08:25:58Z

Weaknesses