From: Darren Tucker Date: Mon, 24 Apr 2017 09:40:31 +0000 (+1000) Subject: Deny socketcall in seccomp filter on ppc64le. X-Git-Tag: V_7_6_P1~216 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8b0eee148f7cf8b248c30d1bae57300f2cc5aafd;p=thirdparty%2Fopenssh-portable.git Deny socketcall in seccomp filter on ppc64le. OpenSSL is using socket() calls (in FIPS mode) when handling ECDSA keys in privsep child. The socket() syscall is already denied in the seccomp filter, but in ppc64le kernel, it is implemented using socketcall() syscall, which is not denied yet (only SYS_SHUTDOWN is allowed) and therefore fails hard. Patch from jjelen at redhat.com. --- diff --git a/sandbox-seccomp-filter.c b/sandbox-seccomp-filter.c index 2831e9d10..200932a8c 100644 --- a/sandbox-seccomp-filter.c +++ b/sandbox-seccomp-filter.c @@ -225,6 +225,7 @@ static const struct sock_filter preauth_insns[] = { #endif #ifdef __NR_socketcall SC_ALLOW_ARG(__NR_socketcall, 0, SYS_SHUTDOWN), + SC_DENY(__NR_ssocketcall, EACCES), #endif #if defined(__NR_ioctl) && defined(__s390__) /* Allow ioctls for ICA crypto card on s390 */