HomeFreeBSD

pam_exec: fix segfault when authtok is null

Description

pam_exec: fix segfault when authtok is null

According to pam_exec(8), the expose_authtok option should be ignored
when the service function is pam_sm_setcred. Currently pam_exec only
prevent prompt for anth token when expose_authtok is set on
pam_sm_setcred. This subsequently led to segfault when there isn't an
existing auth token available.

Bug reported on this: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=263893

After reading https://reviews.freebsd.org/rS349556 I am not sure if the
default behaviour supposed to be simply not prompt for authentication
token, or is it to ignore the option entirely as stated in the man page.

This patch is therefore only adding an additional NULL check on the item
pam_get_item provide, and exit with PAM_SYSTEM_ERR when such item is
NULL.

MFC after: 1 week
Reviewed by: des, khng
Differential Revision: https://reviews.freebsd.org/D35169

(cherry picked from commit b75e0eed345d2ab047a6b1b00a9a7c3bf92e992c)

Details

Provenance
nyan_myuji.xyzAuthored on May 22 2022, 4:33 PM
khngCommitted on Jun 24 2022, 9:09 AM
Reviewer
des
Differential Revision
D35169: pam_exec: fix segfault when existing auth token is null on `pam_sm_set_cred`
Parents
rGd4af9eb430ce: modules: Only build MAC modules if options MAC is set
Branches
Unknown
Tags
Unknown