CVE-2026-47768 is a medium-severity security vulnerability in github.com/juev/nebula-mesh (go), affecting versions <= 0.3.1. It is fixed in 0.3.2.
internal/web/operators.go:251, after handleOperatorCreateAPIKey mints a fresh 32-byte bearer token, the redirect points the operator's browser at: /ui/operators/<id>?newkey=<raw-token>&keyname=<name> The raw API key ends up: in the browser's URL history in the Referer header on every cross-origin asset the detail page loads (any third-party SVG/CSS/JS resource the layout pulls in) in any reverse-proxy or load-balancer access log on the path (nginx default combined log captures the query string) in any structured log sink the operator's local browser-history backup tool ships out Authorization: Bearer <token> headers go through the same hops without these problems because access logs typically don't capture request headers and the browser doesn't replay headers cross-origin. Same handler also appends name (r.FormValue("name")) to the query string without url.QueryEscape, so an & in the operator-supplied key name corrupts query parsing and a \r\n in older proxies could split response headers. Affected All released versions up to v0.3.1. Reproducer As admin, create an API key via /ui/operators/<id>/api-keys (form POST). The 303 Location header carries the raw token in the query string. Open browser DevTools → Network → response headers; or check the reverse-proxy access log; or check the operator-detail page's Referer-emitting fetches. Suggested fix Stash the raw key in a one-shot server-side flash storage (e.g., a row in operatorsessions keyed by session token, with a oneshottoken column and consumedat) or in a short-lived signed cookie. Render the key once inline on the detail page after the redirect, and clear the storage on render. Pattern mirrors the recovery-codes display in the TOTP flow. If the flash-storage refactor is too invasive, the minimal fix is to render the key inline via a POST → 200 OK with HTML (no redirect), losing the post-redirect-get idiom but eliminating the URL exposure. Also fix name query encoding with url.QueryEscape regardless of which fix shape lands. CVSS estimate AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N, 5.5 (medium). AV:L because realistic exploit requires log-read access on shared infrastructure (proxy, CDN, browser-history backup) the operator's session touches.
CVE-2026-47768 has a CVSS score of 5.5 (Medium). The vector is requires local access, low privileges required, and no user interaction. A CVSS score reflects the worst-case severity of the vulnerability, not your specific exposure. Whether this affects your application depends on whether the vulnerable code is present and reachable in your environment.
A fixed version is available (0.3.2). Upgrading removes the vulnerable code path.
go
github.com/juev/nebula-mesh (<= 0.3.1)github.com/juev/nebula-mesh → 0.3.2 (go)Severity tells you how bad this could be in the worst case. It does not tell you whether you are exposed. Exploitability and impact are functions of runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A vulnerable package can sit in your dependency tree and never run.
Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter instead of chasing every advisory.
Kodem's runtime-powered SCA identifies whether CVE-2026-47768 is reachable in your applications. Explore open-source security for your team.
See if CVE-2026-47768 is reachable in your applications. Get a demo
Already deployed Kodem? See CVE-2026-47768 in your environment →Upgrade github.com/juev/nebula-mesh to 0.3.2 or later to resolve this vulnerability.
Kodem Kai can prioritize this vulnerability in your dependency tree and generate a fix recommendation.
CVE-2026-47768 is a medium-severity security vulnerability in github.com/juev/nebula-mesh (go), affecting versions <= 0.3.1. It is fixed in 0.3.2.
CVE-2026-47768 has a CVSS score of 5.5 (Medium). This score reflects the worst-case severity of the vulnerability, not your specific exposure. Whether it represents real risk in your environment depends on whether the vulnerable code is present and reachable.
github.com/juev/nebula-mesh (go) versions <= 0.3.1 is affected.
Yes. CVE-2026-47768 is fixed in 0.3.2. Upgrade to this version or later.
Whether CVE-2026-47768 is exploitable in your environment depends on whether the vulnerable code is present and reachable. A CVSS score is a worst-case rating; it does not account for your specific deployment, configuration, or usage patterns. Kodem, an Intelligent Application Security platform, uses runtime intelligence to show which vulnerabilities actually execute in production, so you can focus on the ones that represent real risk. Get a demo
Exploitability and impact are not fixed properties of a CVE. They depend on runtime truth: whether the vulnerable code is present, reachable, and actually executes in your application. A high CVSS score on a dependency that never runs is not the same as real risk. Kodem, an Intelligent Application Security platform, uses runtime intelligence to reveal which vulnerabilities actually execute in production, so teams prioritize the ones that genuinely matter.
Upgrade github.com/juev/nebula-mesh to 0.3.2 or later.