CVE-2026-63343 Overview
CVE-2026-63343 is a symlink attack vulnerability in Incus, an open-source system container and virtual machine manager maintained by the LXC project. The flaw allows an authenticated Incus user to read or overwrite arbitrary files on the host as root by supplying a malicious image containing a metadata.yaml symlink pointing to any host path. The instance metadata API follows the symlink during image processing, breaking container-to-host isolation. Prior fixes for exec-output and templates/ paths using Lstat rejection and os.OpenRoot confinement did not extend to metadata.yaml. Incus version 7.3.0 patches the issue [CWE-73].
Critical Impact
Authenticated users can achieve full host compromise by reading or overwriting any file as root, resulting in privilege escalation from the container control plane to the underlying host operating system.
Affected Products
- Incus system container and virtual machine manager
- All Incus releases prior to version 7.3.0
- Deployments accepting user-supplied container images
Discovery Timeline
- 2026-08-21 - CVE-2026-63343 published to the National Vulnerability Database
- 2026-08-21 - Last updated in NVD database
Technical Details for CVE-2026-63343
Vulnerability Analysis
The vulnerability is a classic external control of file name or path issue in the Incus image handling pipeline. When Incus processes a container image, it reads metadata.yaml from the image contents to configure the instance. The code path that opens metadata.yaml does not verify that the target is a regular file within the image root. An attacker can package an image where metadata.yaml is a symbolic link pointing to any absolute path on the host, such as /etc/shadow, /root/.ssh/authorized_keys, or systemd unit files. Incus, running as root, dereferences the symlink and reads or writes through it. This yields arbitrary file read and arbitrary file write with root privileges, enabling full host takeover from an account that only has permission to create instances from images.
Root Cause
Earlier hardening in Incus addressed symlink handling for exec-output and templates/ paths by rejecting symbolic links via Lstat checks and confining directory operations with os.OpenRoot. The metadata.yaml code path was not included in either mitigation. The image extraction logic trusts the resolved path returned by the operating system rather than validating link status before opening the file.
Attack Vector
An authenticated user with permission to create instances or push images uploads a crafted image archive. The archive contains a metadata.yaml entry that is a symlink to a sensitive host path. When Incus parses the instance metadata through its API, the daemon opens the symlink as root and returns file contents to the attacker or overwrites the target with attacker-controlled data. No user interaction on the host side is required, and the network attack vector reflects Incus's remote API exposure. The vulnerability is described in the GitHub Security Advisory GHSA-fmjx-5j3g-997p.
Detection Methods for CVE-2026-63343
Indicators of Compromise
- Image archives containing a metadata.yaml entry whose type is symbolic link rather than regular file.
- Unexpected modifications to sensitive host files such as /etc/passwd, /etc/shadow, /root/.ssh/authorized_keys, or systemd unit files following image imports.
- Incus daemon file access events that resolve outside the image staging directory.
Detection Strategies
- Inspect uploaded image tarballs for symlinks in metadata paths using tar -tvf image.tar and reject archives whose metadata.yaml is not a regular file.
- Enable and review Incus audit logs for image import and instance create events correlated with new or modified host files.
- Deploy file integrity monitoring on the host to alert on writes to security-sensitive paths originating from the Incus daemon process.
Monitoring Recommendations
- Forward Incus daemon logs and host auditd events to a centralized analytics platform for correlation across image operations and file changes.
- Alert on Incus process activity that opens files outside the configured storage pool or image cache directory.
- Track user actions in the Incus API for anomalous image upload frequency or repeated failed metadata parsing errors.
How to Mitigate CVE-2026-63343
Immediate Actions Required
- Upgrade Incus to version 7.3.0 or later on all hosts running the daemon.
- Restrict image upload and instance creation permissions to trusted operators until patching is complete.
- Audit recently imported images for symlinked metadata.yaml entries and quarantine suspicious archives.
Patch Information
Incus 7.3.0 resolves the vulnerability by applying the same Lstat rejection and os.OpenRoot confinement to the metadata.yaml code path that was previously added for exec-output and templates/. Patch details are documented in the GitHub Security Advisory GHSA-fmjx-5j3g-997p.
Workarounds
- Limit Incus API access to administrators via TLS client certificate restrictions and role-based access controls until the upgrade is applied.
- Only import images from trusted, signed sources and validate archive contents before ingestion.
- Disable remote image upload endpoints where feasible and require operators to stage images through a reviewed pipeline.
# Verify Incus version and reject images with symlinked metadata.yaml
incus --version
# Inspect an image tarball before import
tar -tvf suspect-image.tar | grep -E '(^l|metadata\.yaml)'
# Upgrade Incus on Debian/Ubuntu-based systems
sudo apt update && sudo apt install --only-upgrade incus
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

