CVE-2026-33945
NixOS vulnerability analysis and mitigation

Overview

CVE-2026-33945 is a path traversal vulnerability in Incus, a system container and virtual machine manager developed by Linux Containers (lxc). It allows a low-privileged, network-accessible attacker to write arbitrary files as root on the host system by crafting a malicious systemd credential configuration key. All versions of Incus prior to 6.23.0 are affected. The vulnerability was discovered by the team at 7asecurity and disclosed on March 26, 2026. It carries a CVSS v3.1 base score of 9.9 (Critical) per the GitHub Security Advisory, and 9.6 (Critical) per NVD (Github Advisory, Red Hat Bugzilla).

Technical details

The root cause is improper path sanitization (CWE-22: Path Traversal) in Incus's handling of systemd credential configuration keys for containers. Incus supports a systemd.credential.XYZ configuration syntax, where XYZ is used to name a credential file written to a shared directory accessible by the container guest. Because Incus does not validate or sanitize the XYZ portion for directory traversal sequences, an attacker can supply a key such as systemd.credential.../../../../../../root/.bashrc, causing Incus to write the credential content to an arbitrary path outside the intended credentials directory — as root on the host. The attack requires only low privileges (e.g., the ability to set container configuration keys) and no user interaction, and it operates over the network with a changed scope, impacting the host system beyond the container's security boundary (Github Advisory, Github Advisory).

Impact

Successful exploitation enables an attacker to write arbitrary content to any file on the host filesystem as root, bypassing container isolation. This can be leveraged for local privilege escalation (e.g., injecting malicious code into shell initialization files like /root/.bashrc or SSH authorized keys) or denial of service by overwriting critical system or configuration files. While data exfiltration (confidentiality) is not possible through this vector alone, the integrity and availability of the host system are severely compromised, and the attack scope extends beyond the container to the underlying host (Github Advisory, Red Hat Bugzilla).

Exploitability

As of the time of disclosure, there is no public proof-of-concept exploit and no evidence of in-the-wild exploitation (Github Advisory). The vulnerability was responsibly disclosed by the 7asecurity research team. The EPSS score is approximately 0.03% (9th percentile), indicating a currently low probability of exploitation within 30 days. The CVE is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog at this time. However, the low attack complexity and minimal privilege requirements make it a high-priority patching target.

Exploitation steps

  1. Gain low-privileged access: Obtain credentials or API access sufficient to configure an Incus container instance (e.g., a user with permission to set container configuration keys via the Incus API or CLI).
  2. Identify a target file: Choose a sensitive host file to overwrite, such as /root/.bashrc, /etc/cron.d/malicious, or an SSH authorized_keys file, to achieve privilege escalation or persistence.
  3. Craft a malicious credential key: Construct a configuration key using path traversal sequences, for example: systemd.credential.../../../../../../root/.bashrc.
  4. Set the configuration key: Apply the malicious key to a container using the Incus CLI or API, e.g.:
    incus config set <container-name> systemd.credential.../../../../../../root/.bashrc "malicious content"
  5. Trigger credential write: Start or restart the container. Incus processes the credential configuration and writes the attacker-controlled content to the traversed path on the host filesystem as root.
  6. Achieve objective: Depending on the target file, the attacker can escalate privileges (e.g., next root login executes injected .bashrc commands), establish persistence, or cause a denial of service by corrupting critical system files (Github Advisory, Github Advisory).

Indicators of compromise

  • Logs: Incus daemon logs showing container configuration keys containing .. sequences in systemd.credential.* fields; audit logs recording writes to sensitive host paths (e.g., /root/, /etc/) by the Incus daemon process.
  • File System: Unexpected modification timestamps on host files such as /root/.bashrc, /root/.ssh/authorized_keys, /etc/cron.d/*, or other sensitive paths; new or altered files in directories not normally written by Incus.
  • Process: Incus daemon (incusd) spawning unexpected child processes or writing files outside of container-specific credential directories (typically under /var/lib/incus/).
  • Configuration: Container configurations containing systemd.credential keys with path traversal sequences (e.g., ../../) detectable via incus config show <container> or API inspection.

Mitigation and workarounds

The vendor has released a fix in Incus version 6.23.0, which properly sanitizes the credential name component to prevent path traversal. All users running Incus versions prior to 6.23.0 should upgrade immediately. As interim mitigations, administrators should restrict access to the Incus API and CLI to trusted users only, audit existing container configurations for any systemd.credential.* keys containing suspicious path components (e.g., ..), and monitor host filesystem paths for unauthorized modifications. No configuration-based workaround is available that fully mitigates the vulnerability without upgrading (Github Advisory, Red Hat Bugzilla).

Community reactions

The vulnerability was covered by The Hacker Wire, which highlighted the critical nature of the path traversal leading to root arbitrary file write (The Hacker Wire). The OpenSUSE security announce mailing list also distributed an advisory, indicating downstream Linux distribution awareness and patching activity (OpenSUSE Advisory). Red Hat tracked the issue as urgent severity in their Bugzilla system. Community reaction has been focused on the severity of container escape to host root write, with the ENISA EUVD database assigning a maximum base score of 10.0 in their scoring (Red Hat Bugzilla).

Additional resources


SourceThis report was generated using AI

Related NixOS vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-72898CRITICAL10
  • NixOS logoNixOS
  • metabase
YesYesAug 10, 2026
CVE-2026-34191CRITICAL9.1
  • NixOS logoNixOS
  • apr-util
NoYesAug 06, 2026
CVE-2026-32327CRITICAL9.1
  • NixOS logoNixOS
  • apr-util-sqlite-debuginfo
NoYesAug 06, 2026
CVE-2026-34502HIGH7.5
  • NixOS logoNixOS
  • apr-util-odbc
NoYesAug 06, 2026
CVE-2026-34501HIGH7.5
  • NixOS logoNixOS
  • apr-util-mysql
NoYesAug 06, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management