From 0b647d1ca7e079f3bb2fe95c3ca7c05898315a6e Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Wed, 23 May 2018 15:38:24 +0200 Subject: Infoleak ifnames and be more permissive Listing interfaces is already permitted by the OS, so we allow this info leak too. --- uapi_bsd.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'uapi_bsd.go') diff --git a/uapi_bsd.go b/uapi_bsd.go index b2a7644..bb16d2c 100644 --- a/uapi_bsd.go +++ b/uapi_bsd.go @@ -150,7 +150,7 @@ func UAPIOpen(name string) (*os.File, error) { // check if path exist - err := os.MkdirAll(socketDirectory, 0700) + err := os.MkdirAll(socketDirectory, 0755) if err != nil && !os.IsExist(err) { return nil, err } @@ -167,6 +167,7 @@ func UAPIOpen(name string) (*os.File, error) { return nil, err } + oldUmask := unix.Umask(0077) listener, err := func() (*net.UnixListener, error) { // initial connection attempt @@ -191,6 +192,7 @@ func UAPIOpen(name string) (*os.File, error) { } return net.ListenUnix("unix", addr) }() + unix.Umask(oldUmask) if err != nil { return nil, err -- cgit v1.2.3