CVE-2026-54370
acl < 2.4.0 TOCTOU Symlink Traversal via getfacl/setfacl/chacl
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.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- High
- 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
7.2
acl < 2.4.0 TOCTOU Symlink Traversal via getfacl/setfacl/chacl
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.
- Record
CVE-2026-54370- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 6.3 Medium
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-367
- Updated
- 2026-11-02
EUVDEUVD-2026-40086
7.2
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.
- Record
EUVD-2026-40086- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-r45p-762r-6pqj
7.2
acl before version 2.4.0 contains a time-of-check to time-of-use (TOCTOU) race condition...
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.
- Record
GHSA-r45p-762r-6pqj- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:L/AC:H/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
- 6.3 Medium
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-367
- Updated
- 2026-11-02
NVD
7.2
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.
- Record
CVE-2026-54370- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:L/AC:H/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
- 6.3 Medium
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-367
- Updated
- 2026-11-02
OSV
7.2
acl < 2.4.0 TOCTOU Symlink Traversal via getfacl/setfacl/chacl
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.
- Record
CVE-2026-54370- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-367
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-54370
7.2
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.
- Record
DEBIAN-CVE-2026-54370- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:L/AC:H/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 28 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
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-54370
7.2
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.
- Record
UBUNTU-CVE-2026-54370- CVSS 4.0
- 7.2 High
CVSS:4.0/AV:L/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 6.3 Medium
CVSS:3.1/AV:L/AC:H/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-91394 No score
CVE-2026-54370 affecting package acl for versions less than 2.4.0-1
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.
- Record
AZL-91394- 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-54370 No score
CVE-2026-54370 in acl - Patched by Root
Root has patched CVE-2026-54370 in the acl package for Root:Debian:11. Multiple fixed versions available.
- Record
ROOT-OS-DEBIAN-11-CVE-2026-54370- Updated
- 2026-11-02
OSVROOT-OS-DEBIAN-12-CVE-2026-54370 No score
CVE-2026-54370 in acl - Patched by Root
Root has patched CVE-2026-54370 in the acl package for Root:Debian:12. Multiple fixed versions available.
- Record
ROOT-OS-DEBIAN-12-CVE-2026-54370- Updated
- 2026-11-02
OSVROOT-OS-DEBIAN-13-CVE-2026-54370 No score
CVE-2026-54370 in acl - Patched by Root
Root has patched CVE-2026-54370 in the acl package for Root:Debian:13. Multiple fixed versions available.
- Record
ROOT-OS-DEBIAN-13-CVE-2026-54370- 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
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 105 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 |
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.3 |
rootio-aclRoot:Debian:11 |
before 2.2.53-10.aikido.2 | 2.2.53-10.aikido.22.2.53-10.aikido.3 |
aclRoot:Debian:12 |
before 2.3.1-3.aikido.2 | 2.3.1-3.aikido.22.3.1-3.aikido.3 |
rootio-aclRoot:Debian:12 |
before 2.3.1-3.aikido.2 | 2.3.1-3.aikido.22.3.1-3.aikido.3 |
aclRoot:Debian:13 |
before 2.3.2-2.aikido.2 | 2.3.2-2.aikido.22.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.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-54370 is a high vulnerability (CVSS 7.2) 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.09%, the 0th 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-toctou-symlink-traversal-via-getfacl-setfacl-chacl
nvd.nist.gov/vuln/detail/CVE-2026-54370
github.com/advisories/GHSA-r45p-762r-6pqj
access.redhat.com/errata/RHSA-2026:42736
Show 48 moreShow less
access.redhat.com/security/cve/CVE-2026-54369
access.redhat.com/security/cve/CVE-2026-54370
bugzilla.redhat.com/2490277
bugzilla.redhat.com/2490279
errata.almalinux.org/9/ALSA-2026-42736.html
access.redhat.com/errata/RHSA-2026:42739
errata.almalinux.org/10/ALSA-2026-42739.html
access.redhat.com/errata/RHSA-2026:43420
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-54369
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-54370.json
security-tracker.debian.org/tracker/CVE-2026-54370
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/errata/RHSA-2026:34351
access.redhat.com/security/updates/classification
images.redhat.com
security.access.redhat.com/data/csaf/v2/advisories/2026/rhsa-2026_34351.json
bugzilla.redhat.com/show_bug.cgi?id=2490277
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
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-54370
Left out here: the rest of 5 source descriptions. The JSON record has them.