]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
setusercontext(): Apply personal settings only on matching effective UID
authorOlivier Certner <olce.freebsd@certner.fr>
Tue, 30 May 2023 16:35:08 +0000 (18:35 +0200)
committerGordon Tetlow <gordon@FreeBSD.org>
Wed, 14 Feb 2024 05:36:19 +0000 (21:36 -0800)
commit9deb5ca77bebd98f6b9d1f5640546dc0a15a8deb
treec80d0c92794ae8b864a288a44064d96e6ea46f87
parent3982cad2a7d3984e03a8c0c9533e571176dcd082
setusercontext(): Apply personal settings only on matching effective UID

Commit 35305a8dc114 (r211393) added a check on whether 'uid' was equal
to getuid() before calling setlogincontext().  Doing so still allows
a setuid program to apply resource limits and priorities specified in
a user-controlled configuration file ('~/.login_conf') where
a non-setuid program could not.  Plug the hole by checking instead that
the process' effective UID is the target one (which is likely what was
meant in the initial commit).

PR:                     271750
Reviewed by:            kib, des
Sponsored by:           Kumacom SAS
Differential Revision:  https://reviews.freebsd.org/D40351
Approved by: so
Security: FreeBSD-EN-24:02.libutil

(cherry picked from commit 892654fe9b5a9115815c30a423b8db47185aebbd)

Approved by:    markj (mentor)

(cherry picked from commit 9fcf54d3750e379868e51e4aa7fbf696877ab2ed)
lib/libutil/login_class.c