CVE-2026-47722 nebula-mesh: Host advanced overrides allow YAML injection into agent config.yml
An attacker can inject YAML into agent configurations via unvalidated host fields, potentially leading to code execution on managed nodes.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-47722?
CVE-2026-47722 is a high-severity code injection vulnerability in juev nebula-mesh, published on 23 Jul 2026. Any signed-in user can exploit it over the network, 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.2, `internal/configgen/generator.go:86,108,119` interpolates the operator-supplied `ListenHost` and `TunDevice` fields raw into a `text/template` that produces the agent's `config.yml`. `internal/web/advanced.go:20-35` accepts both with only `strings.TrimSpace` — no character or shape validation. Version 0.3.2 fixes the issue.
Weakness: CWE-94
Which versions are affected by CVE-2026-47722?
3 open source packages ship an affected version, including github.com/juev/nebula-mesh.
| Package | Affected | Fixed in |
|---|---|---|
github.com/juev/nebula-mesh Go | All versions | 0.3.2 |
github.com/juev/nebula-mesh Go | All versions | 0.3.2 |
github.com/juev/nebula-mesh Go | All versions | 0.3.2 |
How do I fix CVE-2026-47722?
Upgrade github.com/juev/nebula-mesh to 0.3.2 or later.
Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.
Is CVE-2026-47722 being exploited?
There is no known exploitation of CVE-2026-47722 in the wild and no public exploit code.
Sources
Also known as GHSA-7hp6-g3pq-3pc3, GO-2026-5223.