CVE-2026-96283 Overview
CVE-2026-96283 is a missing authorization vulnerability [CWE-862] in Flatpak's SystemHelper D-Bus service. A local, authenticated user can invoke org.freedesktop.Flatpak.SystemHelper.CancelPull against another user's in-progress pull operation. The call does not actually cancel the pull, but it removes the operation from internal tracking. The owning user then loses the ability to stop their own pull, and the download continues to run.
The issue affects multi-user Linux systems that rely on Flatpak's system-wide installation helper. Red Hat has published an advisory tracking the flaw under CVE-2026-96283.
Critical Impact
A low-privileged local user can disrupt another user's Flatpak pull operations and prevent the owner from cancelling long-running downloads, causing limited availability impact.
Affected Products
- Flatpak (upstream project) — SystemHelper D-Bus service
- Red Hat distributions shipping affected Flatpak builds (see Red Hat advisory)
- Linux systems using system-wide Flatpak installations via flatpak-system-helper
Discovery Timeline
- 2026-09-27 - CVE-2026-96283 published to the National Vulnerability Database (NVD)
- 2026-09-29 - Last updated in NVD database
Technical Details for CVE-2026-96283
Vulnerability Analysis
Flatpak installs applications system-wide through a privileged helper daemon, flatpak-system-helper, exposed on the system D-Bus as org.freedesktop.Flatpak.SystemHelper. The helper exposes a CancelPull method that stops an ongoing OSTree pull associated with an installation transaction.
The helper does not verify that the caller owns the pull referenced by the CancelPull request. Any local user able to reach the system bus can target a pull initiated by any other user on the host. The server-side handler removes the pull from its internal tracking table but does not terminate the underlying OSTree download. The original user's client can no longer locate the pull to cancel it, and the download continues to consume network and disk resources until completion or system intervention.
Root Cause
The root cause is a missing authorization check [CWE-862] in the CancelPull D-Bus method handler. The function accepts a pull identifier from any authenticated caller and acts on it without validating the association between the caller's UID and the pull's owner. Combined with the fact that CancelPull only mutates tracking state rather than signalling the worker performing the transfer, the missing check produces both a cross-user interference primitive and an untracked, uncancellable background operation.
Attack Vector
Exploitation requires local access and low privileges. An attacker with a shell on the target host enumerates in-progress pulls on the system bus and invokes CancelPull against a victim's pull identifier using any D-Bus client such as gdbus or busctl. The attack vector is local (AV:L), requires low privileges (PR:L), and no user interaction. There is no confidentiality or integrity impact; the impact is limited to availability of the pull-cancellation function. See the GitHub Flatpak Security Advisory for technical details.
No public proof-of-concept exploit is available at the time of writing.
Detection Methods for CVE-2026-96283
Indicators of Compromise
- Unexpected CancelPull calls to org.freedesktop.Flatpak.SystemHelper originating from UIDs that do not own the referenced pull.
- Long-running ostree pull processes spawned by flatpak-system-helper that persist after the initiating user attempted cancellation.
- User reports that flatpak install or flatpak update operations cannot be interrupted with Ctrl-C or flatpak cancel.
Detection Strategies
- Enable D-Bus auditing or dbus-monitor --system on sensitive hosts to log method calls to org.freedesktop.Flatpak.SystemHelper.CancelPull with caller UID.
- Correlate flatpak-system-helper audit events with the UID that initiated the parent transaction to flag cross-user CancelPull invocations.
- Review journalctl -u flatpak-system-helper for repeated pull activity without matching cancellation completions.
Monitoring Recommendations
- Forward system D-Bus audit logs and flatpak-system-helper journal entries to a central log platform for behavioural analysis.
- Alert on sustained outbound bandwidth from ostree processes on multi-user hosts, particularly after a user-initiated cancel.
- Track package versions of Flatpak across the fleet to confirm patched builds are deployed.
How to Mitigate CVE-2026-96283
Immediate Actions Required
- Apply the Flatpak updates referenced in the Red Hat CVE-2026-96283 Advisory as soon as vendor packages are available.
- Inventory multi-user Linux systems that use system-wide Flatpak installations and prioritize them for patching.
- Restrict interactive local access on shared hosts to trusted users until patches are deployed.
Patch Information
Refer to the GitHub Flatpak Security Advisory GHSA-89xm-3m96-w3jg for upstream fix commits and affected version ranges. Distribution-specific package versions are tracked in the Red Hat Bug Report #2539424.
Workarounds
- Prefer per-user installations (flatpak install --user) over system-wide installations where feasible, since per-user pulls do not transit the SystemHelper daemon.
- Use Polkit rules to further restrict which local users may invoke org.freedesktop.Flatpak.SystemHelper methods on multi-user systems.
- Limit shell access on shared workstations and servers that run flatpak-system-helper.
# Example: restrict Flatpak SystemHelper access via Polkit
# /etc/polkit-1/rules.d/50-flatpak-systemhelper.rules
polkit.addRule(function(action, subject) {
if (action.id.indexOf("org.freedesktop.Flatpak.") === 0 &&
!subject.isInGroup("flatpak-admins")) {
return polkit.Result.AUTH_ADMIN;
}
});
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.