PT-2026-48603 · Unknown · Nebula-Mesh
CVE-2026-48025
·
Published
2026-06-10
·
Updated
2026-07-30
CVSS v4.0
6.9
Medium
| Vector | AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Name of the Vulnerable Software and Affected Versions
nebula-mesh versions prior to 0.3.7
Description
Decrypted CA private keys persist in the process heap because the
CAManager does not zeroise the plaintext ed25519.PrivateKey after use. This occurs when callers at internal/api/enroll.go:116, internal/api/updates.go:297, and internal/api/mobile bundle.go:40 use the manager for a Sign() operation and drop the reference without wiping the underlying slice contents. Consequently, the private keys remain in memory until the Go garbage collector scavenges the slice, which can take minutes, hours, or indefinitely on idle servers. This issue can be exploited via memory-read access, such as core dumps, ptrace, kernel swap to disk, container or VM snapshots, OOM-debug bundles, or side-channel attacks via shared cache lines.Recommendations
Update to version 0.3.7 or later.
As a temporary mitigation, implement a
Wipe() method on CAManager that calls keystore.Zeroize() on the caKey and ensure defer caMgr.Wipe() is called immediately after the Resolve() call at all call sites, including enroll.go:116, updates.go:297, and mobile bundle.go:40.Exploit
Fix
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Nebula-Mesh