CVE-2026-87799: Canonical LXD arbitrary file write via symlink in migration stream

CVE-2026-87799 · Severity: critical · CVSS 9.9 · Published 2026-09-28

Canonical LXD, a container and virtual machine management system, has a critical flaw in how it handles data transfers during instance or storage volume migration. An authenticated attacker or a malicious source server can exploit symlink handling in the migration stream to write attacker-controlled files anywhere on the target host with root privileges, leading to complete system compromise.

Technologies: Canonical LXD. Vendors: Canonical.

Quick answers

Is CVE-2026-87799 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-87799 being exploited in the wild.
How severe is CVE-2026-87799?
Critical severity, with a CVSS score of 9.9, published 28 September 2026.
Which products and versions are affected?
Canonical LXD 4.0 through 6.9 (fixed in 4.0.14, 5.0.10, 5.21.8, 6.10+).
Is there a fix for CVE-2026-87799?
No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.
How is CVE-2026-87799 attacked?
It is attacked over the network.
Am I affected by CVE-2026-87799?
Check whether you run Canonical LXD at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

The vulnerability exists in the migration receive path where rsync and btrfs receive are used to replay incoming data streams. These tools follow symlinks when resolving paths, allowing a malicious migration source to plant a symlink (e.g., pointing rootfs to /) in the transferred volume and then write subsequent entries through it to arbitrary locations. The symlink check added in version 7.3 runs after transfer completion, failing to prevent the writes. Affected versions include 4.0 through 6.9; patches are available in 4.0.14, 5.0.10, 5.21.8, and 6.10+.

Affected products

  • Canonical LXD 4.0 through 6.9 (fixed in 4.0.14, 5.0.10, 5.21.8, 6.10+)

Timeline

  • 2026-09-28: disclosed

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.