CVE-2026-61699
nicheCertificate revocation not enforced in nebula-mesh, letting revoked hosts stay connected
nebula-mesh prior to 0.7.1 fails to enforce certificate revocation across the mesh: when an operator revokes a host, the blocklist is never propagated into any peer's config.yml, so the revoked host's certificate remains accepted by every peer under the same certificate authority until it expires (up to 30 days for agent-issued and 365 days for mobile-issued certificates). An attacker who has exfiltrated a host's key and certificate (host.key and host.crt) can connect using stock slackhq/nebula, ignore the control-plane agent's 403/410 poll responses, and retain full overlay reachability to all peers and internal mesh services even after revocation. The control-plane UI and audit log misleadingly report the host as blocked, giving operators false assurance that isolation succeeded. Any deployment of the self-hosted nebula-mesh control plane running a version prior to 0.7.1 is affected. No public proof-of-concept or known in-the-wild exploitation exists, and EPSS estimates only about a 0.2% probability of exploitation within 30 days.
What to do: Upgrade nebula-mesh to version 0.7.1 or later. Until upgraded, and for hosts revoked under earlier versions, treat revoked credentials as still valid until certificate expiry (30 days for agent, 365 days for mobile): rotate the affected host's key and certificate if it was compromised or offboarded, and manually verify that blocklists are present in each peer's config.yml. Monitor overlay traffic for hosts shown as blocked, since the UI and audit log may overstate the effectiveness of revocation.
| nebula-mesh (open-source project) nebula-mesh self-hosted control plane for Slack Nebula mesh VPN | all versions prior to 0.7.1 (fixed in 0.7.1) |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
nebula-mesh is a self-hosted control plane for Slack Nebula mesh VPN. Prior to version 0.7.1, revocation is the only in-band mechanism that isolates a compromised/offboarded host from a Nebula mesh. Because the blocklist never reaches any peer's config.yml, a Blocked host retains full overlay reachability to every peer under its CA (and internal services on the mesh) for up to 30d (agent) / 365d (mobile). An attacker who exfiltrates host.key+host.crt can run stock slackhq/nebula directly, ignore the agent's 403/410 poll responses, and stay connected after the operator revokes the host. Operator-visible state (UI shows blocked, audit log records it) is misleading. This issue has been patched in version 0.7.1.
- Weakness
- CWE-299, CWE-672
- Vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
In the news0 stories
No ingested article mentions this CVE yet.