Incus vulnerable to local privilege escalation through VM screenshot path
Incus is a system container and virtual machine manager. Incus provides an API to retrieve VM screenshots. That API relies on the use of a temporary file for QEMU to write the screenshot to which is then picked up and sent to the user prior to deletion. As versions prior to 6.23.0 use predictable paths under /tmp for this, an attacker with local access to the system can abuse this mechanism by creating their own symlinks ahead of time. On the vast majority of Linux systems, this will result in a "Permission denied" error when requesting a screenshot. That's because the Linux kernel has a security feature designed to block such attacks, `protected_symlinks`. On the rare systems with this purposefully disabled, it's then possible to trick Incus intro truncating and altering the mode and permissions of arbitrary files on the filesystem, leading to a potential denial of service or possible local privilege escalation. Version 6.23.0 fixes the issue.
References
- https://github.com/lxc/incus/security/advisories/GHSA-q9vp-3wcg-8p4x x_refsource_CONFIRM
Affected products
- ==< 6.23.0
Matching in nixpkgs
pkgs.incus
Powerful system container and virtual machine manager
pkgs.incus-lts
Powerful system container and virtual machine manager
pkgs.incus-ui-canonical
Web user interface for Incus
pkgs.terraform-providers.incus
None
Package maintainers
-
@jnsgruk Jon Seager <jon@sgrs.uk>
-
@megheaiulian Meghea Iulian <iulian.meghea@gmail.com>
-
@adamcstephens Adam C. Stephens <happy.plan4249@valkor.net>
-
@mkg20001 Maciej Krüger <mkg20001+nix@gmail.com>
-
@aanderse Aaron Andersen <aaron@fosslib.net>