blob: deab7620657dfe7fda16aa8f673d2f35d027e71f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
From: Hannes Reinecke <hare@suse.de>
Date: Wed, 1 Apr 2009 20:31:01 +0000 (+0200)
Subject: [multipathd] /var/run/multipathd.sock is world-writable
X-Git-Url: http://git.kernel.org/gitweb.cgi?p=linux%2Fstorage%2Fmultipath-tools%2F.git;a=commitdiff_plain;h=0a0319d381249760c71023edbe0ac9c093bb4a74;hp=15d4bdddcb9b71e0ec6fecc3c37a1b8cae8f51ff
[multipathd] /var/run/multipathd.sock is world-writable
Due to an stray 'umask()' the socket file is in fact world-writable,
allowing for an easy exploit.
References: 458598
---
diff --git a/multipathd/main.c b/multipathd/main.c
index 8a1a63d..9957f1f 100644
--- a/multipathd/main.c
+++ b/multipathd/main.c
@@ -1454,8 +1454,9 @@ daemonize(void)
close(in_fd);
close(out_fd);
- chdir("/");
- umask(0);
+ if (chdir("/") < 0)
+ fprintf(stderr, "cannot chdir to '/', continuing\n");
+
return 0;
}
|