CVE-2026-54369
acl < 2.4.0 Symlink Traversal Privilege Escalation via libacl Functions
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() that allows local attackers to escalate privileges by replacing any pathname component with a symbolic link. Attackers who control any component of a pathname processed by a privileged caller can redirect ACL read or write operations to arbitrary files or directories, enabling unauthorized manipulation of access control lists and local privilege escalation.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
8.4
acl < 2.4.0 Symlink Traversal Privilege Escalation via libacl Functions
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() that allows local attackers to escalate privileges by replacing any pathname component with a symbolic link. Attackers who control any component of a pathname processed by a privileged caller can redirect ACL read or write operations to arbitrary files or directories, enabling unauthorized manipulation of access control lists and local privilege escalation.
- Record
CVE-2026-54369- CVSS 4.0
- 8.4 High
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-59, CWE-59
- Updated
- 2026-11-02
EUVDEUVD-2026-40085
8.4
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() that allows local attackers to escalate privileges by replacing any pathname component with a symbolic link. Attackers who control any component of a pathname processed by a privileged caller can redirect ACL read or write operations to arbitrary files or directories, enabling unauthorized manipulation of access control lists and local privilege escalation.
- Record
EUVD-2026-40085- CVSS 4.0
- 8.4 High
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-53ch-pxc8-6g72
8.4
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based...
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() that allows local attackers to escalate privileges by replacing any pathname component with a symbolic link. Attackers who control any component of a pathname processed by a privileged caller can redirect ACL read or write operations to arbitrary files or directories, enabling unauthorized manipulation of access control lists and local privilege escalation.
- Record
GHSA-53ch-pxc8-6g72- CVSS 4.0
- 8.4 High
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-59
- Updated
- 2026-11-02
NVD
8.4
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() that allows local attackers to escalate privileges by replacing any pathname component with a symbolic link. Attackers who control any component of a pathname processed by a privileged caller can redirect ACL read or write operations to arbitrary files or directories, enabling unauthorized manipulation of access control lists and local privilege escalation.
- Record
CVE-2026-54369- CVSS 4.0
- 8.4 High
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-59
- Updated
- 2026-11-02
OSV
8.4
acl < 2.4.0 Symlink Traversal Privilege Escalation via libacl Functions
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() that allows local attackers to escalate privileges by replacing any pathname component with a symbolic link. Attackers who control any component of a pathname processed by a privileged caller can redirect ACL read or write operations to arbitrary files or directories, enabling unauthorized manipulation of access control lists and local privilege escalation.
- Record
CVE-2026-54369- CVSS 4.0
- 8.4 High
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-59
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-54369
8.4
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() that allows local attackers to escalate privileges by replacing any pathname component with a symbolic link. Attackers who control any component of a pathname processed by a privileged caller can redirect ACL read or write operations to arbitrary files or directories, enabling unauthorized manipulation of access control lists and local privilege escalation.
- Record
DEBIAN-CVE-2026-54369- CVSS 4.0
- 8.4 High
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Updated
- 2026-11-02
Show 35 moreShow less
OSVOESA-2026-3079
7.1
acl security update
This package contains commands for manipulating POSIX access control lists, and the libacl.so dynamic library which contains the POSIX 1003.1e draft standard 17 functions for manipulating access control lists.
Security Fix(es):
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() that allows local attackers to escalate privileges by replacing any pathname component with a symbolic link. Attackers who control any component of a pathname processed by a privileged caller can redirect ACL read or write operations to arbitrary files or directories, enabling unauthorized manipulation of access control lists and local privilege escalation.(CVE-2026-54369)
acl before version 2.4.0 contains a time-of-check to time-of-use (TOCTOU) race condition vulnerability that allows local attackers to escalate privileges by replacing a pathname component with a symbolic link between an lstat() check and subsequent symlink-following operations such as stat(), chown(), chmod(), acl_get_file(), and acl_set_file(). Attackers who control a pathname component can redirect file access control list operations to arbitrary files when getfacl, setfacl, or chacl is invoked by a privileged process over an attacker-controlled path, resulting in local privilege escalation.(CVE-2026-54370)
- Record
OESA-2026-3079- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:34351
7.1
Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update
- Record
RHSA-2026:34351- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:42736
7.1
Red Hat Security Advisory: acl security update
- Record
RHSA-2026:42736- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:42739
7.1
Red Hat Security Advisory: acl security update
- Record
RHSA-2026:42739- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:43420
7.1
Red Hat Security Advisory: acl security update
- Record
RHSA-2026:43420- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:64805
7.1
Red Hat Security Advisory: acl security update
- Record
RHSA-2026:64805- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:67140
7.1
Red Hat Security Advisory: acl security update
- Record
RHSA-2026:67140- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:67142
7.1
Red Hat Security Advisory: acl security update
- Record
RHSA-2026:67142- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:67144
7.1
Red Hat Security Advisory: acl security update
- Record
RHSA-2026:67144- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:71656
7.1
Red Hat Security Advisory: acl security update
- Record
RHSA-2026:71656- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:72819
7.1
Red Hat Security Advisory: acl security update
- Record
RHSA-2026:72819- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRHSA-2026:72820
7.1
Red Hat Security Advisory: acl security update
- Record
RHSA-2026:72820- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRLSA-2026:42736
7.1
Important: acl security update
Access Control Lists (ACLs) are used to define fine-grained discretionary access rights for files and directories. The acl packages contain the getfacl and setfacl utilities needed for manipulating access control lists.
Security Fix(es):
-
acl: Symlink traversal privilege escalation via libacl functions (CVE-2026-54369)
-
acl: TOCTOU Symlink Traversal via getfacl/setfacl (CVE-2026-54370)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
- Record
RLSA-2026:42736- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRLSA-2026:42739
7.1
Important: acl security update
Access Control Lists (ACLs) are used to define fine-grained discretionary access rights for files and directories. The acl packages contain the getfacl and setfacl utilities needed for manipulating access control lists.
Security Fix(es):
-
acl: Symlink traversal privilege escalation via libacl functions (CVE-2026-54369)
-
acl: TOCTOU Symlink Traversal via getfacl/setfacl (CVE-2026-54370)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
- Record
RLSA-2026:42739- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVRLSA-2026:43420
7.1
Important: acl security update
Access Control Lists (ACLs) are used to define fine-grained discretionary access rights for files and directories. The acl packages contain the getfacl and setfacl utilities needed for manipulating access control lists.
Security Fix(es):
-
acl: Symlink traversal privilege escalation via libacl functions (CVE-2026-54369)
-
acl: TOCTOU Symlink Traversal via getfacl/setfacl (CVE-2026-54370)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
- Record
RLSA-2026:43420- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-54369
8.4
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() that allows local attackers to escalate privileges by replacing any pathname component with a symbolic link. Attackers who control any component of a pathname processed by a privileged caller can redirect ACL read or write operations to arbitrary files or directories, enabling unauthorized manipulation of access control lists and local privilege escalation.
- Record
UBUNTU-CVE-2026-54369- CVSS 4.0
- 8.4 High
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 7.1 High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVALSA-2026:42736 No score
Important: acl security update
Access Control Lists (ACLs) are used to define fine-grained discretionary access rights for files and directories. The acl packages contain the getfacl and setfacl utilities needed for manipulating access control lists.
Security Fix(es):
- acl: Symlink traversal privilege escalation via libacl functions (CVE-2026-54369)
- acl: TOCTOU Symlink Traversal via getfacl/setfacl (CVE-2026-54370)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
- Record
ALSA-2026:42736- Updated
- 2026-11-02
OSVALSA-2026:42739 No score
Important: acl security update
Access Control Lists (ACLs) are used to define fine-grained discretionary access rights for files and directories. The acl packages contain the getfacl and setfacl utilities needed for manipulating access control lists.
Security Fix(es):
- acl: Symlink traversal privilege escalation via libacl functions (CVE-2026-54369)
- acl: TOCTOU Symlink Traversal via getfacl/setfacl (CVE-2026-54370)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
- Record
ALSA-2026:42739- Updated
- 2026-11-02
OSVALSA-2026:43420 No score
Important: acl security update
Access Control Lists (ACLs) are used to define fine-grained discretionary access rights for files and directories. The acl packages contain the getfacl and setfacl utilities needed for manipulating access control lists.
Security Fix(es):
- acl: Symlink traversal privilege escalation via libacl functions (CVE-2026-54369)
- acl: TOCTOU Symlink Traversal via getfacl/setfacl (CVE-2026-54370)
For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.
- Record
ALSA-2026:43420- Updated
- 2026-11-02
OSVAZL-91397 No score
CVE-2026-54369 affecting package acl for versions less than 2.4.0-1
acl before version 2.4.0 contains a symlink traversal vulnerability in the libacl pathname-based functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() that allows local attackers to escalate privileges by replacing any pathname component with a symbolic link. Attackers who control any component of a pathname processed by a privileged caller can redirect ACL read or write operations to arbitrary files or directories, enabling unauthorized manipulation of access control lists and local privilege escalation.
- Record
AZL-91397- Updated
- 2026-11-05
OSVCLSA-2026-1784909800 No score
acl: Fix of 2 CVEs
- rebase to 2.4.0 to fix CVE-2026-54369 and CVE-2026-54370
- Record
CLSA-2026-1784909800- Updated
- 2026-11-02
OSVCLSA-2026-1784982822 No score
acl: Fix of 2 CVEs
- rebase to 2.4.0 to fix CVE-2026-54369 and CVE-2026-54370
- Record
CLSA-2026-1784982822- Updated
- 2026-11-02
OSVCLSA-2026-1785151239 No score
acl: Fix of 2 CVEs
- rebase to 2.4.0 to fix CVE-2026-54369 and CVE-2026-54370
- Record
CLSA-2026-1785151239- Updated
- 2026-11-02
OSVCLSA-2026-1785151263 No score
acl: Fix of 2 CVEs
- rebase to 2.4.0 to fix CVE-2026-54369 and CVE-2026-54370
- Record
CLSA-2026-1785151263- Updated
- 2026-11-02
OSVCLSA-2026-1785151703 No score
acl: Fix of 2 CVEs
- rebase to 2.4.0 to fix CVE-2026-54369 and CVE-2026-54370
- Record
CLSA-2026-1785151703- Updated
- 2026-11-02
OSVMGASA-2026-0321 No score
Updated acl attr packages fix security vulnerabilities
The updated acl and attr packages fix security issues.
- Record
MGASA-2026-0321- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11312-1 No score
acl-2.4.0-1.1 on GA media
These are all security issues fixed in the acl-2.4.0-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11312-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:21832-1 No score
Security update for acl, attr
This update for acl, attr fixes the following issue:
- CVE-2026-54369,CVE-2026-54370,CVE-2026-54371: Symlink Traversal Privilege Escalation via getfattr/setfattr, getfacl/setfacl/chacl, libacl (bsc#1268867).
Changes for acl:
- Update to 2.4.0 (jsc#PED-16501): Major Issues Fixed:
- The libacl library functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() take a pathname argument and follow symbolic links. When a privileged user calls one of those functions, an attacker that controls a pathname component can replace a file or directory with a symbolic link and redirect the operation to a different file. This can lead to local privilege escalation. (CVE-2026-54369, bsc#1268867) The library functions cannot be fixed without breaking compatibility; the described behaviour is by design. Instead, version 2.4.0 of the acl package introduces the additional functions acl_get_file_at(), acl_set_file_at(), acl_extended_file_at(), and acl_delete_def_file_at(). These functions each take a dirfd file descriptor argument and an at_flags argument and accept the AT_SYMLINK_NOFOLLOW and AT_EMPTY_PATH flags. Use these functions to control when to follow symbolic links. (CVE-2026-54370, bsc#1268867) In addition, the libacl functions acl_get_fd(), acl_set_fd(), and acl_extended_fd() functions always operate on the access ACL; the library previously did not offer a way to operate on the default ACL of a directory file descriptor. The new functions remove that restriction. It will be up to each individual program to start using these new library functions where appropriate.
- When walking directory trees, the getfacl, setfacl, chacl, and getfattr utilities constructed the full pathname of each file in the tree and use that pathname to access the file. When a privileged user used those utilities, an attacker that controlled a pathname component could replace a directory with a symbolic link and redirect the operation to a different file, leading to a local privilege escalation. (CVE-2026-54371, bsc#1268867) This is fixed by using directory file descriptors and operating relative to those directory file descriptors.
- When resolving the final pathname component, the getfacl, setfacl, chacl, getfattr, and setfattr utilities in some cases used functions that resolve symbolic links. This includes the above mentioned libacl functions, but also stat(), chmod(), and chown(). This is fixed by using symlink-safe functions throughout the code.
- When restoring a backup, the setfacl and setfattr utilities read the full pathnames of files from the backup. When those pathnames were resolved, pathname components that are symbolic links were traversed. An attacker that controlled a pathname component could replace it with a symbolic link, causing a privileged user to operate on a file other than the one intended. This could lead to the same kind of local privilege escalation as discussed before. This is fixed by using openat2(RESOLVE_NO_SYMLINKS) to resolve the directory components of a pathname, but see Compatibility Notes below for the details. Minor Issues Fixed:
- When a symbolic link was specified on the command line but symbolic link traversal was disabled using option -P (--physical), the getfacl and setfacl utilities previously silently ignored the symlink. Now, an ELOOP ("Too many levels of symbolic links") error will result instead.
- acl_delete_entry() now verifies that the specified entry belongs to the specified acl.
- Numeric uids and gids that cannot be represented in types uid_t and gid_t are checked more carefully and invalid numbers are rejected.
- Functions acl_get_file(), acl_get_file_at(), and acl_get_fd() will retry several times when the size of an ACL grows unexpectedly; previously, they only grew the allocated buffer once before giving up.
- When passed a directory file descriptor, function perm_copy_fd() didn't copy the default ACL from one…
- Record
openSUSE-SU-2026:21832-1- Updated
- 2026-11-02
OSVROOT-OS-DEBIAN-11-CVE-2026-54369 No score
CVE-2026-54369 in acl - Patched by Root
Root has patched CVE-2026-54369 in the acl package for Root:Debian:11. Multiple fixed versions available.
- Record
ROOT-OS-DEBIAN-11-CVE-2026-54369- Updated
- 2026-11-02
OSVROOT-OS-DEBIAN-12-CVE-2026-54369 No score
CVE-2026-54369 in acl - Patched by Root
Root has patched CVE-2026-54369 in the acl package for Root:Debian:12. Multiple fixed versions available.
- Record
ROOT-OS-DEBIAN-12-CVE-2026-54369- Updated
- 2026-11-02
OSVROOT-OS-DEBIAN-13-CVE-2026-54369 No score
CVE-2026-54369 in acl - Patched by Root
Root has patched CVE-2026-54369 in the acl package for Root:Debian:13. Multiple fixed versions available.
- Record
ROOT-OS-DEBIAN-13-CVE-2026-54369- Updated
- 2026-11-02
OSVSUSE-SU-2026:23670-1 No score
Security update for acl, attr
This update for acl, attr fixes the following issue:
- CVE-2026-54369,CVE-2026-54370,CVE-2026-54371: Symlink Traversal Privilege Escalation via getfattr/setfattr, getfacl/setfacl/chacl, libacl (bsc#1268867).
Changes for acl:
- Update to 2.4.0 (jsc#PED-16501): Major Issues Fixed:
- The libacl library functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() take a pathname argument and follow symbolic links. When a privileged user calls one of those functions, an attacker that controls a pathname component can replace a file or directory with a symbolic link and redirect the operation to a different file. This can lead to local privilege escalation. (CVE-2026-54369, bsc#1268867) The library functions cannot be fixed without breaking compatibility; the described behaviour is by design. Instead, version 2.4.0 of the acl package introduces the additional functions acl_get_file_at(), acl_set_file_at(), acl_extended_file_at(), and acl_delete_def_file_at(). These functions each take a dirfd file descriptor argument and an at_flags argument and accept the AT_SYMLINK_NOFOLLOW and AT_EMPTY_PATH flags. Use these functions to control when to follow symbolic links. (CVE-2026-54370, bsc#1268867) In addition, the libacl functions acl_get_fd(), acl_set_fd(), and acl_extended_fd() functions always operate on the access ACL; the library previously did not offer a way to operate on the default ACL of a directory file descriptor. The new functions remove that restriction. It will be up to each individual program to start using these new library functions where appropriate.
- When walking directory trees, the getfacl, setfacl, chacl, and getfattr utilities constructed the full pathname of each file in the tree and use that pathname to access the file. When a privileged user used those utilities, an attacker that controlled a pathname component could replace a directory with a symbolic link and redirect the operation to a different file, leading to a local privilege escalation. (CVE-2026-54371, bsc#1268867) This is fixed by using directory file descriptors and operating relative to those directory file descriptors.
- When resolving the final pathname component, the getfacl, setfacl, chacl, getfattr, and setfattr utilities in some cases used functions that resolve symbolic links. This includes the above mentioned libacl functions, but also stat(), chmod(), and chown(). This is fixed by using symlink-safe functions throughout the code.
- When restoring a backup, the setfacl and setfattr utilities read the full pathnames of files from the backup. When those pathnames were resolved, pathname components that are symbolic links were traversed. An attacker that controlled a pathname component could replace it with a symbolic link, causing a privileged user to operate on a file other than the one intended. This could lead to the same kind of local privilege escalation as discussed before. This is fixed by using openat2(RESOLVE_NO_SYMLINKS) to resolve the directory components of a pathname, but see Compatibility Notes below for the details. Minor Issues Fixed:
- When a symbolic link was specified on the command line but symbolic link traversal was disabled using option -P (--physical), the getfacl and setfacl utilities previously silently ignored the symlink. Now, an ELOOP ("Too many levels of symbolic links") error will result instead.
- acl_delete_entry() now verifies that the specified entry belongs to the specified acl.
- Numeric uids and gids that cannot be represented in types uid_t and gid_t are checked more carefully and invalid numbers are rejected.
- Functions acl_get_file(), acl_get_file_at(), and acl_get_fd() will retry several times when the size of an ACL grows unexpectedly; previously, they only grew the allocated buffer once before giving up.
- When passed a directory file descriptor, function perm_copy_fd() didn't copy the default ACL from one…
- Record
SUSE-SU-2026:23670-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:23705-1 No score
Security update for acl, attr
This update for acl, attr fixes the following issue:
- CVE-2026-54369,CVE-2026-54370,CVE-2026-54371: Symlink Traversal Privilege Escalation via getfattr/setfattr, getfacl/setfacl/chacl, libacl (bsc#1268867).
Changes for acl:
- Update to 2.4.0 (jsc#PED-16501): Major Issues Fixed:
- The libacl library functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() take a pathname argument and follow symbolic links. When a privileged user calls one of those functions, an attacker that controls a pathname component can replace a file or directory with a symbolic link and redirect the operation to a different file. This can lead to local privilege escalation. (CVE-2026-54369, bsc#1268867) The library functions cannot be fixed without breaking compatibility; the described behaviour is by design. Instead, version 2.4.0 of the acl package introduces the additional functions acl_get_file_at(), acl_set_file_at(), acl_extended_file_at(), and acl_delete_def_file_at(). These functions each take a dirfd file descriptor argument and an at_flags argument and accept the AT_SYMLINK_NOFOLLOW and AT_EMPTY_PATH flags. Use these functions to control when to follow symbolic links. (CVE-2026-54370, bsc#1268867) In addition, the libacl functions acl_get_fd(), acl_set_fd(), and acl_extended_fd() functions always operate on the access ACL; the library previously did not offer a way to operate on the default ACL of a directory file descriptor. The new functions remove that restriction. It will be up to each individual program to start using these new library functions where appropriate.
- When walking directory trees, the getfacl, setfacl, chacl, and getfattr utilities constructed the full pathname of each file in the tree and use that pathname to access the file. When a privileged user used those utilities, an attacker that controlled a pathname component could replace a directory with a symbolic link and redirect the operation to a different file, leading to a local privilege escalation. (CVE-2026-54371, bsc#1268867) This is fixed by using directory file descriptors and operating relative to those directory file descriptors.
- When resolving the final pathname component, the getfacl, setfacl, chacl, getfattr, and setfattr utilities in some cases used functions that resolve symbolic links. This includes the above mentioned libacl functions, but also stat(), chmod(), and chown(). This is fixed by using symlink-safe functions throughout the code.
- When restoring a backup, the setfacl and setfattr utilities read the full pathnames of files from the backup. When those pathnames were resolved, pathname components that are symbolic links were traversed. An attacker that controlled a pathname component could replace it with a symbolic link, causing a privileged user to operate on a file other than the one intended. This could lead to the same kind of local privilege escalation as discussed before. This is fixed by using openat2(RESOLVE_NO_SYMLINKS) to resolve the directory components of a pathname, but see Compatibility Notes below for the details. Minor Issues Fixed:
- When a symbolic link was specified on the command line but symbolic link traversal was disabled using option -P (--physical), the getfacl and setfacl utilities previously silently ignored the symlink. Now, an ELOOP ("Too many levels of symbolic links") error will result instead.
- acl_delete_entry() now verifies that the specified entry belongs to the specified acl.
- Numeric uids and gids that cannot be represented in types uid_t and gid_t are checked more carefully and invalid numbers are rejected.
- Functions acl_get_file(), acl_get_file_at(), and acl_get_fd() will retry several times when the size of an ACL grows unexpectedly; previously, they only grew the allocated buffer once before giving up.
- When passed a directory file descriptor, function perm_copy_fd() didn't copy the default ACL from one…
- Record
SUSE-SU-2026:23705-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:23726-1 No score
Security update for acl, attr
This update for acl, attr fixes the following issue:
- CVE-2026-54369,CVE-2026-54370,CVE-2026-54371: Symlink Traversal Privilege Escalation via getfattr/setfattr, getfacl/setfacl/chacl, libacl (bsc#1268867).
Changes for acl:
- Update to 2.4.0 (jsc#PED-16501): Major Issues Fixed:
- The libacl library functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() take a pathname argument and follow symbolic links. When a privileged user calls one of those functions, an attacker that controls a pathname component can replace a file or directory with a symbolic link and redirect the operation to a different file. This can lead to local privilege escalation. (CVE-2026-54369, bsc#1268867) The library functions cannot be fixed without breaking compatibility; the described behaviour is by design. Instead, version 2.4.0 of the acl package introduces the additional functions acl_get_file_at(), acl_set_file_at(), acl_extended_file_at(), and acl_delete_def_file_at(). These functions each take a dirfd file descriptor argument and an at_flags argument and accept the AT_SYMLINK_NOFOLLOW and AT_EMPTY_PATH flags. Use these functions to control when to follow symbolic links. (CVE-2026-54370, bsc#1268867) In addition, the libacl functions acl_get_fd(), acl_set_fd(), and acl_extended_fd() functions always operate on the access ACL; the library previously did not offer a way to operate on the default ACL of a directory file descriptor. The new functions remove that restriction. It will be up to each individual program to start using these new library functions where appropriate.
- When walking directory trees, the getfacl, setfacl, chacl, and getfattr utilities constructed the full pathname of each file in the tree and use that pathname to access the file. When a privileged user used those utilities, an attacker that controlled a pathname component could replace a directory with a symbolic link and redirect the operation to a different file, leading to a local privilege escalation. (CVE-2026-54371, bsc#1268867) This is fixed by using directory file descriptors and operating relative to those directory file descriptors.
- When resolving the final pathname component, the getfacl, setfacl, chacl, getfattr, and setfattr utilities in some cases used functions that resolve symbolic links. This includes the above mentioned libacl functions, but also stat(), chmod(), and chown(). This is fixed by using symlink-safe functions throughout the code.
- When restoring a backup, the setfacl and setfattr utilities read the full pathnames of files from the backup. When those pathnames were resolved, pathname components that are symbolic links were traversed. An attacker that controlled a pathname component could replace it with a symbolic link, causing a privileged user to operate on a file other than the one intended. This could lead to the same kind of local privilege escalation as discussed before. This is fixed by using openat2(RESOLVE_NO_SYMLINKS) to resolve the directory components of a pathname, but see Compatibility Notes below for the details. Minor Issues Fixed:
- When a symbolic link was specified on the command line but symbolic link traversal was disabled using option -P (--physical), the getfacl and setfacl utilities previously silently ignored the symlink. Now, an ELOOP ("Too many levels of symbolic links") error will result instead.
- acl_delete_entry() now verifies that the specified entry belongs to the specified acl.
- Numeric uids and gids that cannot be represented in types uid_t and gid_t are checked more carefully and invalid numbers are rejected.
- Functions acl_get_file(), acl_get_file_at(), and acl_get_fd() will retry several times when the size of an ACL grows unexpectedly; previously, they only grew the allocated buffer once before giving up.
- When passed a directory file descriptor, function perm_copy_fd() didn't copy the default ACL from one…
- Record
SUSE-SU-2026:23726-1- Updated
- 2026-11-02
OSVSUSE-SU-2026:4176-1 No score
Security update for acl, attr
This update for acl, attr fixes the following issue:
- CVE-2026-54369,CVE-2026-54370,CVE-2026-54371: Symlink Traversal Privilege Escalation via getfattr/setfattr, getfacl/setfacl/chacl, libacl (bsc#1268867).
Changes for acl:
- Update to 2.4.0 (jsc#PED-16501): Major Issues Fixed:
- The libacl library functions acl_get_file(), acl_set_file(), acl_extended_file(), and acl_delete_def_file() take a pathname argument and follow symbolic links. When a privileged user calls one of those functions, an attacker that controls a pathname component can replace a file or directory with a symbolic link and redirect the operation to a different file. This can lead to local privilege escalation. (CVE-2026-54369, bsc#1268867) The library functions cannot be fixed without breaking compatibility; the described behaviour is by design. Instead, version 2.4.0 of the acl package introduces the additional functions acl_get_file_at(), acl_set_file_at(), acl_extended_file_at(), and acl_delete_def_file_at(). These functions each take a dirfd file descriptor argument and an at_flags argument and accept the AT_SYMLINK_NOFOLLOW and AT_EMPTY_PATH flags. Use these functions to control when to follow symbolic links. (CVE-2026-54370, bsc#1268867) In addition, the libacl functions acl_get_fd(), acl_set_fd(), and acl_extended_fd() functions always operate on the access ACL; the library previously did not offer a way to operate on the default ACL of a directory file descriptor. The new functions remove that restriction. It will be up to each individual program to start using these new library functions where appropriate.
- When walking directory trees, the getfacl, setfacl, chacl, and getfattr utilities constructed the full pathname of each file in the tree and use that pathname to access the file. When a privileged user used those utilities, an attacker that controlled a pathname component could replace a directory with a symbolic link and redirect the operation to a different file, leading to a local privilege escalation. (CVE-2026-54371, bsc#1268867) This is fixed by using directory file descriptors and operating relative to those directory file descriptors.
- When resolving the final pathname component, the getfacl, setfacl, chacl, getfattr, and setfattr utilities in some cases used functions that resolve symbolic links. This includes the above mentioned libacl functions, but also stat(), chmod(), and chown(). This is fixed by using symlink-safe functions throughout the code.
- When restoring a backup, the setfacl and setfattr utilities read the full pathnames of files from the backup. When those pathnames were resolved, pathname components that are symbolic links were traversed. An attacker that controlled a pathname component could replace it with a symbolic link, causing a privileged user to operate on a file other than the one intended. This could lead to the same kind of local privilege escalation as discussed before. This is fixed by using openat2(RESOLVE_NO_SYMLINKS) to resolve the directory components of a pathname, but see Compatibility Notes below for the details. Minor Issues Fixed:
- When a symbolic link was specified on the command line but symbolic link traversal was disabled using option -P (--physical), the getfacl and setfacl utilities previously silently ignored the symlink. Now, an ELOOP ('Too many levels of symbolic links') error will result instead.
- acl_delete_entry() now verifies that the specified entry belongs to the specified acl.
- Numeric uids and gids that cannot be represented in types uid_t and gid_t are checked more carefully and invalid numbers are rejected.
- Functions acl_get_file(), acl_get_file_at(), and acl_get_fd() will retry several times when the size of an ACL grows unexpectedly; previously, they only grew the allocated buffer once before giving up.
- When passed a directory file descriptor, function perm_copy_fd() didn't copy the default ACL from one…
- Record
SUSE-SU-2026:4176-1- Updated
- 2026-11-02
Affected products
- acl project acl
- red hat discovery 2
- red hat enterprise linux 10
- red hat enterprise linux 10.0 extended update support
- red hat enterprise linux 6
- red hat enterprise linux 7
- red hat enterprise linux 8
- red hat enterprise linux 9
- red hat hardened images
- red hat insights proxy 1.5
- red hat openshift container platform 4
- red hat openshift container platform 4.22
Show 2 moreShow less
Affected packages
| Package | Affected | Fixed |
|---|---|---|
aclAlmaLinux:9 From an advisory covering 2 CVEs |
before 2.4.0-1.el9_8 | 2.4.0-1.el9_8 |
libaclAlmaLinux:9 From an advisory covering 2 CVEs |
before 2.4.0-1.el9_8 | 2.4.0-1.el9_8 |
libacl-develAlmaLinux:9 From an advisory covering 2 CVEs |
before 2.4.0-1.el9_8 | 2.4.0-1.el9_8 |
aclAlmaLinux:10 From an advisory covering 2 CVEs |
before 2.4.0-1.el10_2 | 2.4.0-1.el10_2 |
libaclAlmaLinux:10 From an advisory covering 2 CVEs |
before 2.4.0-1.el10_2 | 2.4.0-1.el10_2 |
libacl-develAlmaLinux:10 From an advisory covering 2 CVEs |
before 2.4.0-1.el10_2 | 2.4.0-1.el10_2 |
aclAlmaLinux:8 From an advisory covering 2 CVEs |
before 2.4.0-1.el8_10 | 2.4.0-1.el8_10 |
libaclAlmaLinux:8 From an advisory covering 2 CVEs |
before 2.4.0-1.el8_10 | 2.4.0-1.el8_10 |
libacl-develAlmaLinux:8 From an advisory covering 2 CVEs |
before 2.4.0-1.el8_10 | 2.4.0-1.el8_10 |
aclAzure Linux:3 |
before 2.4.0-1 | 2.4.0-1 |
Show 159 moreShow less
| Package | Affected | Fixed |
|---|---|---|
aclTuxCare:AlmaLinux:9.2 From an advisory covering 2 CVEs |
before 2.4.0-1.el9_2.tuxcare.els1 | 2.4.0-1.el9_2.tuxcare.els1 |
libaclTuxCare:AlmaLinux:9.2 From an advisory covering 2 CVEs |
before 2.4.0-1.el9_2.tuxcare.els1 | 2.4.0-1.el9_2.tuxcare.els1 |
libacl-develTuxCare:AlmaLinux:9.2 From an advisory covering 2 CVEs |
before 2.4.0-1.el9_2.tuxcare.els1 | 2.4.0-1.el9_2.tuxcare.els1 |
aclTuxCare:AlmaLinux:9.6 From an advisory covering 2 CVEs |
before 2.4.0-1.el9_6.tuxcare.els1 | 2.4.0-1.el9_6.tuxcare.els1 |
libaclTuxCare:AlmaLinux:9.6 From an advisory covering 2 CVEs |
before 2.4.0-1.el9_6.tuxcare.els1 | 2.4.0-1.el9_6.tuxcare.els1 |
libacl-develTuxCare:AlmaLinux:9.6 From an advisory covering 2 CVEs |
before 2.4.0-1.el9_6.tuxcare.els1 | 2.4.0-1.el9_6.tuxcare.els1 |
aclTuxCare:CentOS-Stream:8 From an advisory covering 2 CVEs |
before 2.4.0-1.el8.tuxcare.els1 | 2.4.0-1.el8.tuxcare.els1 |
libaclTuxCare:CentOS-Stream:8 From an advisory covering 2 CVEs |
before 2.4.0-1.el8.tuxcare.els1 | 2.4.0-1.el8.tuxcare.els1 |
libacl-develTuxCare:CentOS-Stream:8 From an advisory covering 2 CVEs |
before 2.4.0-1.el8.tuxcare.els1 | 2.4.0-1.el8.tuxcare.els1 |
aclTuxCare:CentOS:8.4 From an advisory covering 2 CVEs |
before 2.4.0-1.el8.tuxcare.els1 | 2.4.0-1.el8.tuxcare.els1 |
libaclTuxCare:CentOS:8.4 From an advisory covering 2 CVEs |
before 2.4.0-1.el8.tuxcare.els1 | 2.4.0-1.el8.tuxcare.els1 |
libacl-develTuxCare:CentOS:8.4 From an advisory covering 2 CVEs |
before 2.4.0-1.el8.tuxcare.els1 | 2.4.0-1.el8.tuxcare.els1 |
aclTuxCare:CentOS:8.5 From an advisory covering 2 CVEs |
before 2.4.0-1.el8.tuxcare.els1 | 2.4.0-1.el8.tuxcare.els1 |
libaclTuxCare:CentOS:8.5 From an advisory covering 2 CVEs |
before 2.4.0-1.el8.tuxcare.els1 | 2.4.0-1.el8.tuxcare.els1 |
libacl-develTuxCare:CentOS:8.5 From an advisory covering 2 CVEs |
before 2.4.0-1.el8.tuxcare.els1 | 2.4.0-1.el8.tuxcare.els1 |
aclDebian:12 |
All versions, plus listed versions 2.3.1-32.3.1-42.3.1-52.3.1-62.3.2-12.3.2-22.3.2-32.4.0-1 |
None known |
aclDebian:13 |
All versions, plus listed versions 2.3.2-22.3.2-32.4.0-1 |
None known |
aclDebian:14 |
before 2.4.0-1, plus listed versions 2.3.2-22.3.2-3 |
2.4.0-1 |
aclMageia:10 From an advisory covering 3 CVEs |
before 2.4.0-3.mga10 | 2.4.0-3.mga10 |
attrMageia:10 From an advisory covering 3 CVEs |
before 2.6.0-1.mga10 | 2.6.0-1.mga10 |
aclMageia:9 From an advisory covering 3 CVEs |
before 2.4.0-1.mga9 | 2.4.0-1.mga9 |
attrMageia:9 From an advisory covering 3 CVEs |
before 2.6.0-1.mga9 | 2.6.0-1.mga9 |
aclopenEuler:20.03-LTS-SP4 From an advisory covering 2 CVEs |
before 2.2.53-14.oe2003sp4 | 2.2.53-14.oe2003sp4 |
aclopenEuler:22.03-LTS-SP4 From an advisory covering 2 CVEs |
before 2.3.1-7.oe2203sp4 | 2.3.1-7.oe2203sp4 |
aclopenEuler:24.03-LTS-SP1 From an advisory covering 2 CVEs |
before 2.3.1-7.oe2403sp1 | 2.3.1-7.oe2403sp1 |
aclopenEuler:24.03-LTS-SP3 From an advisory covering 2 CVEs |
before 2.3.1-7.oe2403sp3 | 2.3.1-7.oe2403sp3 |
aclopenEuler:24.03-LTS-SP4 From an advisory covering 2 CVEs |
before 2.3.1-7.oe2403sp4 | 2.3.1-7.oe2403sp4 |
aclRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:2.4.0-0.1.hum1 | 0:2.4.0-0.1.hum1 |
libaclRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:2.4.0-0.1.hum1 | 0:2.4.0-0.1.hum1 |
libacl-develRed Hat:hummingbird:1 From an advisory covering 2 CVEs |
before 0:2.4.0-0.1.hum1 | 0:2.4.0-0.1.hum1 |
libacl-debuginfoRed Hat:enterprise_linux:9::appstream From an advisory covering 2 CVEs |
before 0:2.4.0-1.el9_8 | 0:2.4.0-1.el9_8 |
libacl-develRed Hat:enterprise_linux:9::appstream From an advisory covering 2 CVEs |
before 0:2.4.0-1.el9_8 | 0:2.4.0-1.el9_8 |
aclRed Hat:enterprise_linux:9::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el9_8 | 0:2.4.0-1.el9_8 |
libaclRed Hat:enterprise_linux:9::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el9_8 | 0:2.4.0-1.el9_8 |
libacl-debuginfoRed Hat:enterprise_linux:9::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el9_8 | 0:2.4.0-1.el9_8 |
acl-debuginfoRed Hat:enterprise_linux:9::appstream From an advisory covering 2 CVEs |
before 0:2.4.0-1.el9_8 | 0:2.4.0-1.el9_8 |
acl-debugsourceRed Hat:enterprise_linux:9::appstream From an advisory covering 2 CVEs |
before 0:2.4.0-1.el9_8 | 0:2.4.0-1.el9_8 |
acl-debuginfoRed Hat:enterprise_linux:9::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el9_8 | 0:2.4.0-1.el9_8 |
acl-debugsourceRed Hat:enterprise_linux:9::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el9_8 | 0:2.4.0-1.el9_8 |
libacl-debuginfoRed Hat:enterprise_linux:10.2 From an advisory covering 2 CVEs |
before 0:2.4.0-1.el10_2 | 0:2.4.0-1.el10_2 |
libacl-develRed Hat:enterprise_linux:10.2 From an advisory covering 2 CVEs |
before 0:2.4.0-1.el10_2 | 0:2.4.0-1.el10_2 |
aclRed Hat:enterprise_linux:10.2 From an advisory covering 2 CVEs |
before 0:2.4.0-1.el10_2 | 0:2.4.0-1.el10_2 |
libaclRed Hat:enterprise_linux:10.2 From an advisory covering 2 CVEs |
before 0:2.4.0-1.el10_2 | 0:2.4.0-1.el10_2 |
acl-debuginfoRed Hat:enterprise_linux:10.2 From an advisory covering 2 CVEs |
before 0:2.4.0-1.el10_2 | 0:2.4.0-1.el10_2 |
acl-debugsourceRed Hat:enterprise_linux:10.2 From an advisory covering 2 CVEs |
before 0:2.4.0-1.el10_2 | 0:2.4.0-1.el10_2 |
aclRed Hat:enterprise_linux:8::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el8_10 | 0:2.4.0-1.el8_10 |
libaclRed Hat:enterprise_linux:8::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el8_10 | 0:2.4.0-1.el8_10 |
libacl-debuginfoRed Hat:enterprise_linux:8::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el8_10 | 0:2.4.0-1.el8_10 |
libacl-develRed Hat:enterprise_linux:8::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el8_10 | 0:2.4.0-1.el8_10 |
acl-debuginfoRed Hat:enterprise_linux:8::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el8_10 | 0:2.4.0-1.el8_10 |
acl-debugsourceRed Hat:enterprise_linux:8::baseos From an advisory covering 2 CVEs |
before 0:2.4.0-1.el8_10 | 0:2.4.0-1.el8_10 |
libacl-debuginfoRed Hat:enterprise_linux_eus:10.0 |
before 0:2.4.0-0.el10_0.1 | 0:2.4.0-0.el10_0.1 |
aclRed Hat:enterprise_linux_eus:10.0 |
before 0:2.4.0-0.el10_0.1 | 0:2.4.0-0.el10_0.1 |
libaclRed Hat:enterprise_linux_eus:10.0 |
before 0:2.4.0-0.el10_0.1 | 0:2.4.0-0.el10_0.1 |
acl-debuginfoRed Hat:rhel_eus:9.6::appstream |
before 0:2.4.0-0.el9_6.1 | 0:2.4.0-0.el9_6.1 |
acl-debugsourceRed Hat:rhel_eus:9.6::appstream |
before 0:2.4.0-0.el9_6.1 | 0:2.4.0-0.el9_6.1 |
aclRed Hat:rhel_eus:9.6::baseos |
before 0:2.4.0-0.el9_6.1 | 0:2.4.0-0.el9_6.1 |
acl-debuginfoRed Hat:rhel_eus:9.6::baseos |
before 0:2.4.0-0.el9_6.1 | 0:2.4.0-0.el9_6.1 |
acl-debugsourceRed Hat:rhel_eus:9.6::baseos |
before 0:2.4.0-0.el9_6.1 | 0:2.4.0-0.el9_6.1 |
acl-debuginfoRed Hat:rhel_e4s:9.2::appstream |
before 0:2.4.0-0.el9_2.1 | 0:2.4.0-0.el9_2.1 |
acl-debugsourceRed Hat:rhel_e4s:9.2::appstream |
before 0:2.4.0-0.el9_2.1 | 0:2.4.0-0.el9_2.1 |
aclRed Hat:rhel_e4s:9.2::baseos |
before 0:2.4.0-0.el9_2.1 | 0:2.4.0-0.el9_2.1 |
acl-debuginfoRed Hat:rhel_e4s:9.2::baseos |
before 0:2.4.0-0.el9_2.1 | 0:2.4.0-0.el9_2.1 |
acl-debugsourceRed Hat:rhel_e4s:9.2::baseos |
before 0:2.4.0-0.el9_2.1 | 0:2.4.0-0.el9_2.1 |
acl-debuginfoRed Hat:rhel_e4s:9.4::appstream |
before 0:2.4.0-0.el9_4.1 | 0:2.4.0-0.el9_4.1 |
acl-debugsourceRed Hat:rhel_e4s:9.4::appstream |
before 0:2.4.0-0.el9_4.1 | 0:2.4.0-0.el9_4.1 |
aclRed Hat:rhel_e4s:9.4::baseos |
before 0:2.4.0-0.el9_4.1 | 0:2.4.0-0.el9_4.1 |
acl-debuginfoRed Hat:rhel_e4s:9.4::baseos |
before 0:2.4.0-0.el9_4.1 | 0:2.4.0-0.el9_4.1 |
acl-debugsourceRed Hat:rhel_e4s:9.4::baseos |
before 0:2.4.0-0.el9_4.1 | 0:2.4.0-0.el9_4.1 |
aclRed Hat:rhel_e4s:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
acl-debuginfoRed Hat:rhel_e4s:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
acl-debugsourceRed Hat:rhel_e4s:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
libaclRed Hat:rhel_e4s:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
libacl-debuginfoRed Hat:rhel_e4s:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
libacl-develRed Hat:rhel_e4s:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
aclRed Hat:rhel_tus:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
acl-debuginfoRed Hat:rhel_tus:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
acl-debugsourceRed Hat:rhel_tus:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
libaclRed Hat:rhel_tus:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
libacl-debuginfoRed Hat:rhel_tus:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
libacl-develRed Hat:rhel_tus:8.8::baseos |
before 0:2.4.0-0.el8_8.1 | 0:2.4.0-0.el8_8.1 |
aclRed Hat:rhel_aus:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
acl-debuginfoRed Hat:rhel_aus:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
acl-debugsourceRed Hat:rhel_aus:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
libaclRed Hat:rhel_aus:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
libacl-debuginfoRed Hat:rhel_aus:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
libacl-develRed Hat:rhel_aus:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
aclRed Hat:rhel_eus_long_life:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
acl-debuginfoRed Hat:rhel_eus_long_life:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
acl-debugsourceRed Hat:rhel_eus_long_life:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
libaclRed Hat:rhel_eus_long_life:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
libacl-debuginfoRed Hat:rhel_eus_long_life:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
libacl-develRed Hat:rhel_eus_long_life:8.6::baseos |
before 0:2.4.0-0.el8_6.1 | 0:2.4.0-0.el8_6.1 |
aclRed Hat:rhel_aus:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
acl-debuginfoRed Hat:rhel_aus:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
acl-debugsourceRed Hat:rhel_aus:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
libaclRed Hat:rhel_aus:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
libacl-debuginfoRed Hat:rhel_aus:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
libacl-develRed Hat:rhel_aus:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
aclRed Hat:rhel_eus_long_life:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
acl-debuginfoRed Hat:rhel_eus_long_life:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
acl-debugsourceRed Hat:rhel_eus_long_life:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
libaclRed Hat:rhel_eus_long_life:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
libacl-debuginfoRed Hat:rhel_eus_long_life:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
libacl-develRed Hat:rhel_eus_long_life:8.4::baseos |
before 0:2.4.0-0.el8_4.1 | 0:2.4.0-0.el8_4.1 |
aclRocky Linux:9 From an advisory covering 2 CVEs |
before 0:2.4.0-1.el9_8 | 0:2.4.0-1.el9_8 |
aclRocky Linux:10 From an advisory covering 2 CVEs |
before 0:2.4.0-1.el10_2 | 0:2.4.0-1.el10_2 |
aclRocky Linux:8 From an advisory covering 2 CVEs |
before 0:2.4.0-1.el8_10 | 0:2.4.0-1.el8_10 |
aclRoot:Debian:11 |
before 2.2.53-10.aikido.2 | 2.2.53-10.aikido.22.2.53-10.aikido.32.2.53-10.root.io.1 |
rootio-aclRoot:Debian:11 |
before 2.2.53-10.aikido.2 | 2.2.53-10.aikido.22.2.53-10.aikido.32.2.53-10.root.io.1 |
aclRoot:Debian:12 |
before 2.3.1-3.aikido.2 | 2.3.1-3.aikido.22.3.1-3.aikido.32.3.1-3.root.io.1 |
rootio-aclRoot:Debian:12 |
before 2.3.1-3.aikido.2 | 2.3.1-3.aikido.22.3.1-3.aikido.32.3.1-3.root.io.1 |
aclRoot:Debian:13 |
before 2.3.2-2.aikido.2 | 2.3.2-2.aikido.22.3.2-2.root.io.12.3.2-2.aikido.62.3.2-2.aikido.32.3.2-2.aikido.42.3.2-2.aikido.5 |
rootio-aclRoot:Debian:13 |
before 2.3.2-2.aikido.2 | 2.3.2-2.aikido.22.3.2-2.root.io.12.3.2-2.aikido.62.3.2-2.aikido.32.3.2-2.aikido.42.3.2-2.aikido.5 |
aclSUSE:Linux Micro 6.2 From an advisory covering 3 CVEs |
before 2.4.0-160000.1.1 | 2.4.0-160000.1.1 |
attrSUSE:Linux Micro 6.2 From an advisory covering 3 CVEs |
before 2.6.0-160000.1.1 | 2.6.0-160000.1.1 |
aclSUSE:Linux Enterprise Server 16.0 From an advisory covering 3 CVEs |
before 2.4.0-160000.1.1 | 2.4.0-160000.1.1 |
attrSUSE:Linux Enterprise Server 16.0 From an advisory covering 3 CVEs |
before 2.6.0-160000.1.1 | 2.6.0-160000.1.1 |
aclSUSE:Linux Enterprise Server for SAP applications 16.0 From an advisory covering 3 CVEs |
before 2.4.0-160000.1.1 | 2.4.0-160000.1.1 |
attrSUSE:Linux Enterprise Server for SAP applications 16.0 From an advisory covering 3 CVEs |
before 2.6.0-160000.1.1 | 2.6.0-160000.1.1 |
aclSUSE:Linux Enterprise Micro 5.3 From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise Micro 5.3 From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise Micro 5.4 From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise Micro 5.4 From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise Micro 5.5 From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise Micro 5.5 From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise Module for Basesystem 15 SP7 From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise Module for Basesystem 15 SP7 From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise High Performance Computing 15 SP5-ESPOS From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise High Performance Computing 15 SP5-LTSS From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise Server 15 SP4-LTSS From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise Server 15 SP4-LTSS From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise Server 15 SP5-LTSS From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise Server 15 SP5-LTSS From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise Server 15 SP6-LTSS From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise Server 15 SP6-LTSS From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise Server for SAP Applications 15 SP4 From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise Server for SAP Applications 15 SP4 From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise Server for SAP Applications 15 SP5 From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise Server for SAP Applications 15 SP5 From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclSUSE:Linux Enterprise Server for SAP Applications 15 SP6 From an advisory covering 3 CVEs |
before 2.4.0-150000.4.6.1 | 2.4.0-150000.4.6.1 |
attrSUSE:Linux Enterprise Server for SAP Applications 15 SP6 From an advisory covering 3 CVEs |
before 2.6.0-150000.4.3.1 | 2.6.0-150000.4.3.1 |
aclUbuntu:14.04:LTS |
All versions, plus listed versions 2.2.52-1 |
None known |
aclUbuntu:16.04:LTS |
All versions, plus listed versions 2.2.52-22.2.52-3 |
None known |
aclUbuntu:18.04:LTS |
All versions, plus listed versions 2.2.52-3build1 |
None known |
aclUbuntu:20.04:LTS |
All versions, plus listed versions 2.2.53-42.2.53-52.2.53-5ubuntu12.2.53-6 |
None known |
aclUbuntu:22.04:LTS |
All versions, plus listed versions 2.2.53-10ubuntu22.3.1-1 |
None known |
aclUbuntu:24.04:LTS |
All versions, plus listed versions 2.3.1-32.3.1-4ubuntu12.3.2-12.3.2-1build12.3.2-1build1.1 |
None known |
aclUbuntu:25.10 |
All versions, plus listed versions 2.3.2-2 |
None known |
aclUbuntu:26.04:LTS |
All versions, plus listed versions 2.3.2-2 |
None known |
aclopenSUSE:Tumbleweed From an advisory covering 3 CVEs |
before 2.4.0-1.1 | 2.4.0-1.1 |
aclopenSUSE:Leap 16.0 From an advisory covering 3 CVEs |
before 2.4.0-160000.1.1 | 2.4.0-160000.1.1 |
attropenSUSE:Leap 16.0 From an advisory covering 3 CVEs |
before 2.6.0-160000.1.1 | 2.6.0-160000.1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | ||
| facts | OSV | |
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-54369 is a high vulnerability (CVSS 8.4) in Acl Project Acl, published June 29, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.15%, the 4th percentile. Fixed in acl 2.4.0-1.
References
cgit.git.savannah.nongnu.org/cgit/acl.git/commit?id=3589787cd589b34bdd9265936e17190b6d3f17d1
cgit.git.savannah.nongnu.org/cgit/acl.git/commit?id=24a227d0ab8576612194f8a56c2314389adc74a5
vulncheck.com/advisories/acl-symlink-traversal-privilege-escalation-via-libacl-functions
access.redhat.com/security/cve/CVE-2026-54369
bugzilla.redhat.com/show_bug.cgi?id=2490277
security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-54369.json
Show 69 moreShow less
access.redhat.com/errata/RHSA-2026:54769
access.redhat.com/errata/RHSA-2026:64805
access.redhat.com/errata/RHSA-2026:42739
access.redhat.com/errata/RHSA-2026:67142
access.redhat.com/errata/RHSA-2026:67144
access.redhat.com/errata/RHSA-2026:67140
access.redhat.com/errata/RHSA-2026:42736
access.redhat.com/errata/RHSA-2026:43420
access.redhat.com/errata/RHSA-2026:46836
access.redhat.com/errata/RHSA-2026:34351
access.redhat.com/errata/RHSA-2026:53371
access.redhat.com/errata/RHSA-2026:50205
access.redhat.com/errata/RHSA-2026:44481
access.redhat.com/errata/RHSA-2026:58981
nvd.nist.gov/vuln/detail/CVE-2026-54369
github.com/advisories/GHSA-53ch-pxc8-6g72
access.redhat.com/security/cve/CVE-2026-54370
bugzilla.redhat.com/2490277
bugzilla.redhat.com/2490279
errata.almalinux.org/9/ALSA-2026-42736.html
errata.almalinux.org/10/ALSA-2026-42739.html
errata.almalinux.org/8/ALSA-2026-43420.html
errata.tuxcare.com/els_os/almalinux9.2esu/CLSA-2026-1784909800.html
nvd.nist.gov/vuln/detail/CVE-2026-54370
errata.tuxcare.com/els_os/tuxcare9.6esu/CLSA-2026-1784982822.html
errata.tuxcare.com/els_os/centos-stream8els/CLSA-2026-1785151239.html
errata.tuxcare.com/els_os/centos8.4els/CLSA-2026-1785151263.html
errata.tuxcare.com/els_os/centos8.5els/CLSA-2026-1785151703.html
savannah.nongnu.org/projects/acl
github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54369.json
security-tracker.debian.org/tracker/CVE-2026-54369
advisories.mageia.org/MGASA-2026-0321.html
bugs.mageia.org/show_bug.cgi?id=35779
openwall.com/lists/oss-security/2026/06/29/1
lists.fedoraproject.org/archives/list/[email protected]/message/3TDUECPBS6YQPFZZ6RNXV3T5EFLLHQZS
lists.fedoraproject.org/archives/list/[email protected]/message/CGDSXLCG4AXTWFBAKM6XYUUYO6LZ7YXY
lists.opensuse.org/archives/list/[email protected]/message/NOOHLEV27XADU2EMOLPK2E6IY2TZKFKQ
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2026-3079
access.redhat.com/security/updates/classification
images.redhat.com
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_34351.json
cve.org/CVERecord?id=CVE-2026-54369
bugzilla.redhat.com/show_bug.cgi?id=2490279
cve.org/CVERecord?id=CVE-2026-54370
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_42736.json
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_42739.json
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_43420.json
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_64805.json
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_67140.json
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_67142.json
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_67144.json
access.redhat.com/errata/RHSA-2026:71656
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_71656.json
access.redhat.com/errata/RHSA-2026:72819
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_72819.json
access.redhat.com/errata/RHSA-2026:72820
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_72820.json
errata.rockylinux.org/RLSA-2026:42736
errata.rockylinux.org/RLSA-2026:42739
errata.rockylinux.org/RLSA-2026:43420
suse.com/support/update/announcement/2026/suse-su-202623670-1
bugzilla.suse.com/1268867
suse.com/security/cve/CVE-2026-54369
suse.com/security/cve/CVE-2026-54370
suse.com/security/cve/CVE-2026-54371
suse.com/support/update/announcement/2026/suse-su-202623705-1
suse.com/support/update/announcement/2026/suse-su-202623726-1
suse.com/support/update/announcement/2026/suse-su-20264176-1
ubuntu.com/security/CVE-2026-54369
Left out here: the rest of 5 source descriptions. The JSON record has them.