diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2015-08-05 17:25:20 +0200 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2015-08-17 15:32:37 +0200 |
commit | 5845a325b10e48b1e4c21976b0856ad1d012bbb4 (patch) | |
tree | 921d9a6040f537ebd6c5c8a1b482a4e201b72ba3 | |
parent | 366631d15723db68fdb5c47e18ff9253689648ab (diff) | |
download | sssd-5845a325b10e48b1e4c21976b0856ad1d012bbb4.tar.gz sssd-5845a325b10e48b1e4c21976b0856ad1d012bbb4.tar.xz sssd-5845a325b10e48b1e4c21976b0856ad1d012bbb4.zip |
p11child: set restrictive umask and clear environment
https://fedorahosted.org/sssd/ticket/2754
Before doing any calls, set a very restrictive umask and clear
environment variables to harden p11child execution.
Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>
-rw-r--r-- | src/p11_child/p11_child_nss.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/p11_child/p11_child_nss.c b/src/p11_child/p11_child_nss.c index 6948c142a..44ba66788 100644 --- a/src/p11_child/p11_child_nss.c +++ b/src/p11_child/p11_child_nss.c @@ -481,6 +481,9 @@ int main(int argc, const char *argv[]) /* Set debug level to invalid value so we can decide if -d 0 was used. */ debug_level = SSSDBG_INVALID; + clearenv(); + umask(077); + pc = poptGetContext(argv[0], argc, argv, long_options, 0); while ((opt = poptGetNextOpt(pc)) != -1) { switch(opt) { |