From: Gary Lockyer Date: Sun, 10 Dec 2017 20:54:34 +0000 (+1300) Subject: source3/libsmb/unexpected.c set socket close on exec X-Git-Tag: talloc-2.1.11~147 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=40877f3e8af9756db29ee7bf3ab555aa2953243c;p=thirdparty%2Fsamba.git source3/libsmb/unexpected.c set socket close on exec Set SOCKET_CLOEXEC on the sockets returned by accept. This ensures that the socket is unavailable to any child process created by system(). Making it harder for malicious code to set up a command channel, as seen in the exploit for CVE-2015-0240 Signed-off-by: Gary Lockyer Reviewed-by: Andrew Bartlett --- diff --git a/source3/libsmb/unexpected.c b/source3/libsmb/unexpected.c index c645fbce7e4..dd9ff7a22e1 100644 --- a/source3/libsmb/unexpected.c +++ b/source3/libsmb/unexpected.c @@ -157,6 +157,7 @@ static void nb_packet_server_listener(struct tevent_context *ev, if (sock == -1) { return; } + smb_set_close_on_exec(sock); DEBUG(6,("accepted socket %d\n", sock)); client = talloc_zero(server, struct nb_packet_client);