diff options
Diffstat (limited to 'share/security/patches/SA-11:10/pam.patch')
-rw-r--r-- | share/security/patches/SA-11:10/pam.patch | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/share/security/patches/SA-11:10/pam.patch b/share/security/patches/SA-11:10/pam.patch new file mode 100644 index 0000000000..a8d38235e8 --- /dev/null +++ b/share/security/patches/SA-11:10/pam.patch @@ -0,0 +1,18 @@ +Index: contrib/openpam/lib/openpam_configure.c +=================================================================== +--- contrib/openpam/lib/openpam_configure.c (revision 228383) ++++ contrib/openpam/lib/openpam_configure.c (revision 228384) +@@ -285,6 +285,13 @@ + size_t len; + int r; + ++ /* don't allow to escape from policy_path */ ++ if (strchr(service, '/')) { ++ openpam_log(PAM_LOG_ERROR, "invalid service name: %s", ++ service); ++ return (-PAM_SYSTEM_ERR); ++ } ++ + for (path = openpam_policy_path; *path != NULL; ++path) { + len = strlen(*path); + if ((*path)[len - 1] == '/') { |