SUSE-RU-2026:1228-1: important: Recommended update for shadow
SLE-UPDATES
null at suse.de
Thu Apr 9 16:32:16 UTC 2026
# Recommended update for shadow
Announcement ID: SUSE-RU-2026:1228-1
Release Date: 2026-04-09T08:27:29Z
Rating: important
References:
* bsc#1144060
* bsc#1176006
* bsc#1181400
* bsc#1182850
* bsc#1185897
* bsc#1187536
* bsc#1189139
* bsc#1199026
* bsc#1203823
* bsc#1205502
* bsc#1206627
* bsc#1214806
* bsc#1246052
* bsc#916845
* jsc#PED-14520
* jsc#PED-3144
Cross-References:
* CVE-2013-4235
* CVE-2023-4641
CVSS scores:
* CVE-2013-4235 ( SUSE ): 6.7 CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H
* CVE-2013-4235 ( NVD ): 4.7 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N
* CVE-2023-4641 ( SUSE ): 3.3 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
* CVE-2023-4641 ( NVD ): 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
* CVE-2023-4641 ( NVD ): 4.7 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N
Affected Products:
* Basesystem Module 15-SP7
* openSUSE Leap 15.6
* SUSE Linux Enterprise Desktop 15 SP7
* SUSE Linux Enterprise Real Time 15 SP7
* SUSE Linux Enterprise Server 15 SP7
* SUSE Linux Enterprise Server for SAP Applications 15 SP7
An update that solves two vulnerabilities, contains two features and has 12
fixes can now be installed.
## Description:
This update for shadow fixes the following issues:
shadow is updated to 4.17.2 to bring lots of features and bug fixes.
* util-linux-2.41 introduced new variable: LOGIN_ENV_SAFELIST. Recognize it
and update dependencies.
* Set SYS_{UID,GID}_MIN to 201: After repeated similar requests to change the
ID ranges we set the above mentioned value to 201. The max value will stay
at 499. This range should be sufficient and will give us leeway for the
future. It's not straightforward to find out which static UIDs/GIDs are used
in all packages.
Update to 4.17.2:
* src/login_nopam.c: Fix compiler warnings #1170
* lib/chkname.c: Put limits for LOGIN_NAME_MAX and sysconf(_SC_LOGIN_NAME_MAX)
#1169
* Use HTTPS in link to Wikipedia article on password strength #1164
* lib/attr.h: use C23 attributes only with gcc >= 10 #1172
* login: Fix no-pam authorization regression #1174
* man: Add Portuguese translation #1178
* Update French translation #1177
* Add cheap defense mechanisms #1171
* Add Romanian translation #1176
Update to 4.17.1:
* Fix `su -` regression #1163
Update to 4.17.0:
* Fix the lower part of the domain of csrand_uniform()
* Fix use of volatile pointer
* Use str2[u]l() instead of atoi(3)
* Use a2i() in various places
* Fix const correctness
* Use uid_t for holding UIDs (and GIDs)
* Move all sprintf(3)-like APIs to a subdirectory
* Move all copying APIs to a subdirectory
* Fix forever loop on ENOMEM
* Fix REALLOC() nmemb calculation
* Remove id(1)
* Remove groups(1)
* Use local time for human-readable dates
* Use %F instead of %Y-%m-%d with strftime(3)
* is_valid{user,group}_name(): Set errno to distinguish the reasons
* Recommend --badname only if it is useful
* Add fmkomstemp() to fix mode of /etc/default/useradd
* Fix use-after-free bug in sgetgrent()
* Update Catalan translation
* Remove references to cppw, cpgr
* groupadd, groupmod: Update gshadow file with -U
* Added option -a for listing active users only, optimized using if
aflg,return
* Added information in lastlog man page for new option '-a'
* Plenty of code cleanup and clarifications
* Disable flushing sssd caches. The sssd's files provider is no longer
available.
Update to 4.16.0:
* The shadow implementations of id(1) and groups(1) are deprecated in favor of
the GNU coreutils and binutils versions. They will be removed in 4.17.0.
* The rlogind implementation has been removed.
* The libsubid major version has been bumped, since it now requires
specification of the module's free() implementation.
Update to 4.15.1:
* Fix a bug that caused spurious error messages about unknown login.defs
configuration options #967
* Adding checks for fd omission #964
* Use temporary stat buffer #974
* Fix wrong french translation #975
Update to 4.15.0
* libshadow:
* Use utmpx instead of utmp. This fixes a regression introduced in 4.14.0.
* Fix build error (parameter name omitted).
* Build system:
* Link correctly with libdl.
* Install pam configs for chpasswd(8) and newusers(8) when using ./configure
--with-libpam --disable-account-tools-setuid.
* Merge libshadow and libmisc into a single libshadow. This fixes problems in
the linker, which were reported at least in Gentoo.
* Fix build with musl libc.
* Support out of tree builds
* useradd(8):
* Set proper SELinux labels for def_usrtemplate
Update to 4.14.6:
* login(1):
* Fix off-by-one bugs.
* passwd(1):
* Don't silently truncate passwords of length >= 200 characters. Instead,
accept a length of PASS_MAX, and reject longer ones.
* libshadow:
* Fix calculation in strtoday(), which caused a wrong half-day offset in some
cases (bsc#1176006)
* Fix parsing of dates in get_date() (bsc#1176006)
* Use utmpx instead of utmp. This fixes a regression introduced in 4.14.0.
Update to 4.14.5:
* Build system:
* Fix regression introduced in 4.14.4, due to a typo. chgpasswd had been
deleted from a Makefile variable, but it should have been chpasswd.
Update to 4.14.4:
* Build system:
* Link correctly with libdl.
* Install pam configs for chpasswd(8) and newusers(8) when using ./configure
--with-libpam --disable-account-tools-setuid.
* libshadow:
* Fix build error (parameter name omitted).
* Fix off-by-one bug.
* Remove warning.
Update to 4.14.3:
* libshadow: Avoid null pointer dereference (#904)
* Remove pam_keyinit from PAM configuration. (bsc#1199026 bsc#1203823) This
was introduced for bsc#1144060.
Update to 4.14.2:
* libshadow:
* Fix build with musl libc.
* Avoid NULL dereference.
* Update utmp at an initial login
* useradd(8):
* Set proper SELinux labels for def_usrtemplate
* Manual:
* Document --prefix in chage(1), chpasswd(8), and passwd(1)
Update to 4.14.1:
Build system: Merge libshadow and libmisc into a single libshadow. This fixes
problems in the linker, which were reported at least in Gentoo. #791
* Set proper SELinux labels for new homedirs.
Update to 4.14.0:
* configure: add with-libbsd option
* Code cleanup
* Replace utmp interface #757
* new option enable-logind #674
* shadow userdel: add the adaptation to the busybox ps in
01-kill_user_procs.sh
* chsh: warn if root sets a shell not listed in /etc/shells #535
* newgrp: fix potential string injection
* lastlog: fix alignment of Latest header
* Fix yescrypt support #748
* chgpasswd: Fix segfault in command-line options
* gpasswd: Fix password leak (bsc#1214806, CVE-2023-4641)
* Add --prefix to passwd, chpasswd and chage #714 (bsc#1206627)
* usermod: fix off-by-one issues #701
* ch(g)passwd: Check selinux permissions upon startup #675
* sub_[ug]id_{add,remove}: fix return values
* chsh: Verify that login shell path is absolute #730
* process_prefix_flag: Drop privileges
* run_parts for groupadd and groupdel #706
* newgrp/useradd: always set SIGCHLD to default
* useradd/usermod: add --selinux-range argument #698
* sssd: skip flushing if executable does not exist #699
* semanage: Do not set default SELinux range #676
* Add control character check #687
* usermod: respect --prefix for --gid option
* Fix null dereference in basename
* newuidmap and newgidmap: support passing pid as fd
* Prevent out of boundary access #633
* Explicitly override only newlines #633
* Correctly handle illegal system file in tz #633
* Supporting vendor given -shells- configuration file #599
* Warn if failed to read existing /etc/nsswitch.conf
* chfn: new_fields: fix wrong fields printed
* Allow supplementary groups to be added via config file #586
* useradd: check if subid range exists for user #592 (rh#2012929)
* Rename lastlog to lastlog.legacy to be able to switch to Y2038 safe lastlog2
as default [jsc#PED-3144]
* bsc#1205502: Fix useradd audit event logging of ID field
Update to 4.13:
* useradd.8: fix default group ID
* Revert drop of subid_init()
* Georgian translation
* useradd: Avoid taking unneeded space: do not reset non-existent data in
lastlog
* relax username restrictions
* selinux: check MLS enabled before setting serange
* copy_tree: use fchmodat instead of chmod
* copy_tree: don't block on FIFOs
* add shell linter
* copy_tree: carefully treat permissions
* lib/commonio: make lock failures more detailed
* lib: use strzero and memzero where applicable
* Update Dutch translation
* Don't test for NULL before calling free
* Use libc MAX() and MIN()
* chage: Fix regression in print_date
* usermod: report error if homedir does not exist
* libmisc: minimum id check for system accounts
* fix usermod -rG x y wrongly adding a group
* man: add missing space in useradd.8.xml
* lastlog: check for localtime() return value
* Raise limit for passwd and shadow entry length
* Remove adduser-old.c
* useradd: Fix buffer overflow when using a prefix
* Don't warn when failed to open /etc/nsswitch.conf
Update to 4.12.3:
Revert removal of subid_init, which should have bumped soname. So note that 4.12
through 4.12.2 were broken for subid users.
Update to 4.12.2:
* Address CVE-2013-4235 (TOCTTOU when copying directories) [bsc#916845]
Update to 4.12.1:
* Fix uk manpages
Update to 4.12:
* Add absolute path hint to --root
* Various cleanups
* Fix Ubuntu release used in CI tests
* add -F options to userad
* useradd manpage updates
* Check for ownerid (not just username) in subid ranges
* Declare file local functions static
* Use strict prototypes
* Do not drop const qualifier for Basename
* Constify various pointers
* Don't return uninitialized memory
* Don't let compiler optimize away memory cleaning
* Remove many obsolete compatibility checks and defines
* Modify ID range check in useradd
* Use "extern "C"" to make libsubid easier to use from C++
* French translation updates
* Fix s/with-pam/with-libpam/
* Spanish translation updates
* French translation fixes
* Default max group name length to 32
* Fix PAM service files without-selinux
* Improve manpages
* groupadd, useradd, usermod
* groups and id
* pwck
* Fix condition under which pw_dir check happens
* logoutd: switch to strncat
* AUTHORS: improve markdown output
* Handle ERANGE errors correctly
* Check for fopen NULL return
* Split get_salt() into its own fn juyin)
* Get salt before chroot to ensure /dev/urandom.
* Chpasswd code cleanup
* Work around git safe.directory enforcement
* Alphabetize order in usermod help
* Erase password copy on error branches
* Suggest using --badname if needed
* Update translation files
* Correct badnames option to badname
* configure: replace obsolete autoconf macros
* tests: replace egrep with grep -E
* Update Ukrainian translations
* Cleanups
* Remove redeclared variable
* Remove commented out code and FIXMEs
* Add header guards
* Initialize local variables
* CI updates
* Create github workflow to install dependencies
* Enable CodeQL
* Update actions version
* libmisc: use /dev/urandom as fallback if other methods fail
Provide /etc/login.defs.d on SLE15 since we support and use it
Update to 4.11.1:
* build: include lib/shadowlog_internal.h in dist tarballs
Update to 4.11: * Handle possible TOCTTOU issues in usermod/userdel \-
(CVE-2013-4235) \- Use O_NOFOLLOW when copying file \- Kill all user tasks in
userdel * Fix useradd -D segfault * Clean up obsolete libc feature-check ifdefs
* Fix -fno-common build breaks due to duplicate Prog declarations * Have single
date_to_str definition * Fix libsubid SONAME version * Clarify licensing info,
use SPDX.
Update to 4.10:
* From this release forward, su from this package should be considered
deprecated. Please replace any users of it with su rom util-linux
* libsubid fixes
* Rename the test program list_subid_ranges to getsubids, write a manpage, so
distros can ship it.
* Add libeconf dep for new*idmap
* Allow all group types with usermod -G
* Avoid useradd generating empty subid range
* Handle NULL pw_passwd
* Fix default value SHA_get_salt_rounds
* Use https where possible in README
* Update content and format of README
* Translation updates
* Switch from xml2po to itstool in 'make dist'
* Fix double frees
* Add LOG_INIT configurable to useradd
* Add CREATE_MAIL_SPOOL documentation
* Create a security.md
* Fix su never being SIGKILLd when trapping TERM
* Fix wrong SELinux labels in several possible cases
* Fix missing chmod in chadowtb_move
* Handle malformed hushlogins entries
* Fix groupdel segv when passwd does not exist
* Fix covscan-found newgrp segfault
* Remove trailing slash on hoedir
* Fix passwd -l message - it does not change expirey
* Fix SIGCHLD handling bugs in su and vipw
* Remove special case for "" in usermod
* Implement usermod -rG to remove a specific group
* call pam_end() after fork in child path for su and login
* useradd: In absence of /etc/passwd, assume 0 == root
* lib: check NULL before freeing data
* Fix pwck segfault
* Really enable USERGROUPS_ENAB [bsc#1189139].
Added hardening to systemd service(s) (bsc#1181400). * Add LOGIN_KEEP_USERNAME
to login.defs.
* Remove PREVENT_NO_AUTH from login.defs. Only used by the unpackaged login
and su.
* Remove variables BCRYPT_MIN_ROUNDS, BCRYPT_MAX_ROUNDS, YESCRYPT_COST_FACTOR,
not supported by the current configuratiton.
* login.defs: Enable USERGROUPS_ENAB and CREATE_HOME to be compatible with
other Linux distros and the other tools creating user accounts in use on
openSUSE. Set HOME_MODE to 700 for security reasons and compatibility.
[bsc#1189139] [bsc#1182850]
Update to 4.9:
* Updated translations
* Major salt updates
* Various coverity and cleanup fixes
* Consistently use 0 to disable PASS_MIN_DAYS in man
* Implement NSS support for subids and a libsubid
* setfcap: retain setfcap when mapping uid 0
* login.defs: include HMAC_CRYPTO_ALGO key
* selinux fixes
* Fix path prefix path handling
* Manpage updates
* Treat an empty passwd field as invalid(Haelwenn Monnier)
* newxidmap: allow running under alternative gid
* usermod: check that shell is executable
* Add yescript support
* useradd memleak fixes
* useradd: use built-in settings by default
* getdefs: add foreign
* buffer overflow fixes
* Adding run-parts style for pre and post useradd/del
* login.defs/MOTD_FILE: Use "" instead of blank entry [bsc#1187536]
* Add /etc/login.defs.d directory
* Enable shadowgrp so that we can set more secure group passwords using
shadow.
* Disable MOTD_FILE to allow the use of pam_motd to unify motd message output
[bsc#1185897]. Else motd entries of e.g. cockpit will not be shown.
## Patch Instructions:
To install this SUSE update use the SUSE recommended installation methods like
YaST online_update or "zypper patch".
Alternatively you can run the command listed for your product:
* openSUSE Leap 15.6
zypper in -t patch SUSE-2026-1228=1 openSUSE-SLE-15.6-2026-1228=1
* Basesystem Module 15-SP7
zypper in -t patch SUSE-SLE-Module-Basesystem-15-SP7-2026-1228=1
## Package List:
* openSUSE Leap 15.6 (aarch64 ppc64le s390x x86_64 i586)
* libsubid5-4.17.2-150600.17.18.1
* libsubid-devel-4.17.2-150600.17.18.1
* shadow-debuginfo-4.17.2-150600.17.18.1
* libsubid5-debuginfo-4.17.2-150600.17.18.1
* shadow-4.17.2-150600.17.18.1
* shadow-debugsource-4.17.2-150600.17.18.1
* openSUSE Leap 15.6 (noarch)
* login_defs-4.17.2-150600.17.18.1
* Basesystem Module 15-SP7 (aarch64 ppc64le s390x x86_64)
* libsubid5-4.17.2-150600.17.18.1
* libsubid-devel-4.17.2-150600.17.18.1
* shadow-debuginfo-4.17.2-150600.17.18.1
* libsubid5-debuginfo-4.17.2-150600.17.18.1
* shadow-4.17.2-150600.17.18.1
* shadow-debugsource-4.17.2-150600.17.18.1
* Basesystem Module 15-SP7 (noarch)
* login_defs-4.17.2-150600.17.18.1
## References:
* https://www.suse.com/security/cve/CVE-2013-4235.html
* https://www.suse.com/security/cve/CVE-2023-4641.html
* https://bugzilla.suse.com/show_bug.cgi?id=1144060
* https://bugzilla.suse.com/show_bug.cgi?id=1176006
* https://bugzilla.suse.com/show_bug.cgi?id=1181400
* https://bugzilla.suse.com/show_bug.cgi?id=1182850
* https://bugzilla.suse.com/show_bug.cgi?id=1185897
* https://bugzilla.suse.com/show_bug.cgi?id=1187536
* https://bugzilla.suse.com/show_bug.cgi?id=1189139
* https://bugzilla.suse.com/show_bug.cgi?id=1199026
* https://bugzilla.suse.com/show_bug.cgi?id=1203823
* https://bugzilla.suse.com/show_bug.cgi?id=1205502
* https://bugzilla.suse.com/show_bug.cgi?id=1206627
* https://bugzilla.suse.com/show_bug.cgi?id=1214806
* https://bugzilla.suse.com/show_bug.cgi?id=1246052
* https://bugzilla.suse.com/show_bug.cgi?id=916845
* https://jira.suse.com/browse/PED-14520
* https://jira.suse.com/browse/PED-3144
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.suse.com/pipermail/sle-updates/attachments/20260409/1931b191/attachment.htm>
More information about the sle-updates
mailing list