From 284f4f6b70998b2b46dc74c3003c82cb1db0e742 Mon Sep 17 00:00:00 2001 From: Bernd Edlinger Date: Wed, 4 Apr 2018 14:45:49 +0200 Subject: Don't use getenv for critical functions when run as setuid/setgid Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell (Merged from https://github.com/openssl/openssl/pull/5856) --- crypto/conf/conf_mod.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'crypto/conf') diff --git a/crypto/conf/conf_mod.c b/crypto/conf/conf_mod.c index 99f0fcc2b5..4a848b8c8f 100644 --- a/crypto/conf/conf_mod.c +++ b/crypto/conf/conf_mod.c @@ -480,9 +480,11 @@ char *CONF_get1_default_config_file(void) char *file, *sep = ""; int len; - file = getenv("OPENSSL_CONF"); - if (file) - return OPENSSL_strdup(file); + if (!OPENSSL_issetugid()) { + file = getenv("OPENSSL_CONF"); + if (file) + return OPENSSL_strdup(file); + } len = strlen(X509_get_default_cert_area()); #ifndef OPENSSL_SYS_VMS -- cgit v1.2.3