Detect CVE-2026-48769 — Incus Arbitrary File Write via Trusted Image Hash in Microsoft Sentinel
Detects exploitation of CVE-2026-48769, a critical arbitrary file write vulnerability in Incus (github.com/lxc/incus/v7/cmd/incusd) versions prior to 7.2.0. The flaw arises from improper validation (CWE-20) of image hashes during image pull operations, allowing a malicious or compromised image source to write arbitrary files on the Incus client host system. With a CVSS score of 9.9 and public PoC available, this vulnerability is actively exploitable and may lead to full host compromise, container escape, or persistence via overwritten system binaries or configuration files.
MITRE ATT&CK
KQL Detection Query
let IncusImagePull = DeviceProcessEvents
| where FileName in~ ("incus", "incusd")
| where ProcessCommandLine has_any ("image copy", "launch", "image pull", "image import")
| project TimeGenerated, DeviceId, DeviceName, AccountName, ProcessCommandLine, InitiatingProcessFileName, InitiatingProcessCommandLine, FolderPath;
let SuspiciousWrites = DeviceFileEvents
| where InitiatingProcessFileName in~ ("incus", "incusd")
| where FolderPath has_any ("/etc/", "/usr/bin/", "/usr/sbin/", "/bin/", "/sbin/", "/lib/", "/lib64/", "/root/", "/home/")
| where ActionType in ("FileCreated", "FileModified", "FileRenamed")
| project TimeGenerated, DeviceId, DeviceName, FolderPath, FileName, InitiatingProcessCommandLine, InitiatingProcessAccountName;
IncusImagePull
| join kind=inner SuspiciousWrites on DeviceId
| where SuspiciousWrites.TimeGenerated between (IncusImagePull.TimeGenerated .. (IncusImagePull.TimeGenerated + 5m))
| project TimeGenerated, DeviceName, AccountName, ProcessCommandLine, WrittenFile=SuspiciousWrites.FolderPath, InitiatingProcessCommandLine Correlates Incus image pull/launch operations with subsequent file writes to sensitive system paths by the incusd process. A legitimate image operation should not write to /etc, /bin, /usr/bin, or other system directories on the host.
Data Sources
Required Tables
False Positives & Tuning
- Incus daemon legitimately writing to /var/lib/incus during normal image storage operations
- System administrators manually running incus commands that trigger file operations in monitored paths during maintenance
- Automated CI/CD pipelines using incus for containerized build environments with broad filesystem access
Other platforms for CVE-2026-48769
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 1Simulate CVE-2026-48769 — Malicious Image Serving Arbitrary File Write
Expected signal: Process event: incus or incusd spawning with 'image copy' in command line; File creation event: /tmp/pwned created by incusd process; Network connection: incusd connecting to 127.0.0.1:18443
- Test 2Incus Version Detection and Vulnerable Host Discovery
Expected signal: Process events showing incus/incusd invoked with --version or version subcommand; curl process accessing /var/lib/incus/unix.socket
- Test 3Post-Exploitation — Persistence via Written Cron Job
Expected signal: Process event: process named incusd writing to /etc/cron.d/; File creation event: /etc/cron.d/incus-update created; auditd AVC or WRITE record for /etc/cron.d/
Unlock Pro Content
Get the full detection package for CVE-2026-48769 including response playbook, investigation guide, and atomic red team tests.