CVE-2026-47725 nebula-mesh: Web UI lacks CSRF tokens on /ui/* mutating endpoints

Medium 6.9 Published Updated

Attackers can force authenticated users to perform unwanted actions on the nebula-mesh web interface due to missing CSRF tokens on mutating endpoints.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-47725?

CVE-2026-47725 is a medium-severity vulnerability in juev nebula-mesh, published on 28 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

nebula-mesh is a self-hosted control plane for Slack Nebula mesh virtual private network. Prior to version 0.3.3, every /ui/* POST / PUT / PATCH / DELETE route processes the request as soon as the session cookie validates. SameSite=Lax on the session cookie prevents most cross-site form submits but does not protect: top-level form-submit navigations from third-party pages (some browsers still send Lax cookies on top-level POSTs); same-registrable-domain attackers (sibling-subdomain XSS, subdomain takeover); the GET /ui/logout route, which a third-party <img src=".../ui/logout"> can force-trigger. This issue has been patched in version 0.3.3.

Weakness: CWE-352

Which versions are affected by CVE-2026-47725?

3 open source packages ship an affected version, including github.com/juev/nebula-mesh.

PackageAffectedFixed in
github.com/juev/nebula-mesh GoAll versions0.3.3
github.com/juev/nebula-mesh GoAll versions0.3.3
github.com/juev/nebula-mesh GoAll versions0.3.3

How do I fix CVE-2026-47725?

Upgrade github.com/juev/nebula-mesh to 0.3.3 or later.

Is CVE-2026-47725 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-47725 exists.

Sources

Also known as GHSA-273q-qgh5-wrj6, GO-2026-5049.

Is CVE-2026-47725 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free