Detect CVE-2026-48749: Incus Arbitrary File Read/Write via rootfs Symlink in Malicious Image in IBM QRadar
Detects exploitation of CVE-2026-48749, a critical vulnerability in Incus (github.com/lxc/incus/v7/cmd/incusd) versions prior to 7.2.0. Attackers can craft a malicious container image with symlinks in the rootfs/ directory that resolve to host filesystem paths, enabling arbitrary file read and write on the underlying host. This constitutes a container escape primitive and may lead to full host compromise. CVSS 9.9 with public PoC available.
MITRE ATT&CK
QRadar Detection Query
SELECT
DATEFORMAT(devicetime, 'yyyy-MM-dd HH:mm:ss') AS event_time,
logsourcename(logsourceid) AS log_source,
"username",
"filename",
"filepath",
"processname",
"eventname",
CATEGORYNAME(category) AS category_name,
magnitude
FROM events
WHERE
LOGSOURCETYPENAME(devicetype) IN ('Linux', 'LinuxAuditd', 'Syslog')
AND devicetime > NOW() - 86400000
AND (
("processname" ILIKE '%incusd%' OR "processname" ILIKE '%incus%')
AND (
"filepath" ILIKE '/var/lib/incus/%/rootfs/%'
OR "filepath" ILIKE '/etc/passwd'
OR "filepath" ILIKE '/etc/shadow'
OR "filepath" ILIKE '/root/.ssh/%'
OR "filepath" ILIKE '/etc/sudoers%'
)
)
OR (
"eventname" ILIKE '%symlink%'
AND "filepath" ILIKE '%incus%rootfs%'
)
ORDER BY devicetime DESC
LIMIT 500 QRadar AQL query detecting incusd process interactions with sensitive host filesystem paths and symlink creation events within Incus rootfs storage directories.
Data Sources
Required Tables
False Positives & Tuning
- Authorized container operations that temporarily access host configuration for overlay mounts
- Incus health check processes that probe system files as part of capability detection
- Container storage migration tasks accessing both rootfs and host paths
- Administrative debugging sessions using incus exec that traverse filesystem boundaries
Other platforms for CVE-2026-48749
Testing Methodology
Validate this detection against 3 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Create malicious Incus image with rootfs symlink targeting /etc/passwd
Expected signal: auditd syscall events for symlink() within /var/lib/incus/*/rootfs/; file open events on host /etc/passwd initiated by incusd process; DeviceFileEvents showing incusd accessing /etc/passwd outside container namespace
- Test 2Exploit rootfs symlink for host SSH authorized_keys write
Expected signal: File write event on host /root/.ssh/authorized_keys attributed to incusd or container init process; auditd records showing write() syscall to /root/.ssh/authorized_keys from incusd context; FIM alert on /root/.ssh/authorized_keys modification
- Test 3Read host /etc/shadow via rootfs symlink for credential harvesting
Expected signal: File read event on host /etc/shadow initiated by incusd process context; auditd openat() syscall on /etc/shadow attributed to container namespace but resolved to host inode; audit log entry for privileged file access outside expected paths
Unlock Pro Content
Get the full detection package for CVE-2026-48749 including response playbook, investigation guide, and atomic red team tests.