<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Cve-2026-34178 — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/tags/cve-2026-34178/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata — refreshed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Fri, 10 Apr 2026 19:24:26 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/tags/cve-2026-34178/feed.xml" rel="self" type="application/rss+xml"/><item><title>LXD Backup Import Bypass Allows Privilege Escalation in Restricted Projects</title><link>https://feed.craftedsignal.io/briefs/2026-04-lxd-backup-bypass/</link><pubDate>Fri, 10 Apr 2026 19:24:26 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-04-lxd-backup-bypass/</guid><description>A vulnerability in LXD allows an attacker with instance-creation rights in a restricted project to bypass project restrictions and escalate privileges by crafting a malicious backup archive.</description><content:encoded><![CDATA[<p>A critical vulnerability exists in LXD (versions prior to the fixes mentioned below) that allows an attacker with limited privileges in a restricted project to bypass security restrictions and gain full control of the LXD host. The vulnerability stems from improper validation during instance backup import. Specifically, LXD validates project restrictions against the <code>backup/index.yaml</code> file within the backup archive but creates the instance from the <code>backup/container/backup.yaml</code> file. By crafting a malicious backup archive where <code>index.yaml</code> appears clean while <code>backup.yaml</code> contains configurations that violate project restrictions (e.g., <code>security.privileged=true</code>, <code>raw.lxc</code> host filesystem mounts), an attacker can create a privileged container and escape the restricted environment. This allows them to escalate privileges and potentially compromise the entire LXD host. The attacker needs <code>can_view_instances</code>, <code>can_create_instances</code>, and <code>can_operate_instances</code> permissions. This affects LXD versions up to those patched in April 2026.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>The attacker creates a local directory structure mimicking an LXD backup archive, including <code>backup/index.yaml</code> and <code>backup/container/backup.yaml</code>.</li>
<li>The attacker crafts a <code>backup/index.yaml</code> file with configurations that satisfy project restrictions (e.g., no privileged mode, no raw.lxc).</li>
<li>The attacker crafts a malicious <code>backup/container/backup.yaml</code> file that contains configurations violating project restrictions, such as <code>security.privileged=true</code> and <code>raw.lxc</code> entries to mount the host&rsquo;s LXD Unix socket.</li>
<li>The attacker packages the crafted directory structure into a tar archive (e.g., <code>malicious-backup.tar</code>).</li>
<li>The attacker uses <code>lxc import target-lxd: malicious-backup.tar --project restricted-project</code> to import the malicious backup into the target LXD server. LXD validates against <code>index.yaml</code> at this stage.</li>
<li>LXD extracts the contents of the tar archive, including the malicious <code>backup.yaml</code>, to the storage volume. The actual instance creation uses <code>backup.yaml</code> configuration.</li>
<li>The attacker starts the newly created, privileged container using <code>lxc start target-lxd:escalated-instance --project restricted-project</code>.</li>
<li>The attacker leverages the bind-mounted LXD Unix socket from within the container to interact with the LXD API as a full administrator, allowing them to create admin certificates, access all projects, and modify any instance, leading to full host compromise.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation allows an attacker to completely bypass LXD project restrictions and gain full administrative control over the LXD host. This can lead to the compromise of all containers running on the host, data theft, and further malicious activities. The vulnerability affects multi-tenant environments where LXD is used to isolate different users or projects, allowing a malicious tenant to break out of their restricted environment and compromise the entire system.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Apply the patches provided by Canonical for LXD versions 6, 5.21, and 5.0 to remediate the vulnerability. Specifically, upgrade to LXD 6.7, LXD 5.21.4, or LXD 5.0.6.</li>
<li>Monitor LXD server logs for suspicious <code>lxc import</code> commands, especially those targeting restricted projects. While difficult to detect solely on command line arguments, anomalous import patterns could be a sign of attempted exploitation.</li>
<li>Deploy the provided Sigma rule to detect the creation of containers with <code>security.privileged</code> set to true or with <code>raw.lxc</code> configurations in restricted projects by analyzing the LXD database (if accessible).</li>
<li>As a defense-in-depth measure, consider implementing filesystem integrity monitoring on the LXD storage volumes to detect unauthorized modifications to container configurations.</li>
</ul>
]]></content:encoded><category domain="severity">critical</category><category domain="type">advisory</category><category>lxd</category><category>privilege-escalation</category><category>container-escape</category><category>cve-2026-34178</category></item></channel></rss>