mirror of
https://github.com/slackhq/nebula.git
synced 2026-11-15 18:36:52 +01:00
Warn when the info API's windows pipe is outside the protected namespace
A program reading the info API opens the pipe by name and has no owner check of its own, so for a name any local user could create first, whoever did would be answering its queries. nebula refuses to serve a held name and logs it, but the program cannot tell. The daemon now warns at bind when the configured name is not under \\.\pipe\ProtectedPrefix\Administrators\, and the example config and CHANGELOG say to put it there. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
1 parent
660a271466
commit
c5c826d163
5 files changed
+30
-1
No files matched your search
@@ -337,6 +337,10 @@ func pathTooLong(path string) bool { return len(path) > maxSocketPath }
|
||||
// of its own with CtlSocketKey.
|
||||
const DefaultSocketPath = "/var/run/" + DirName + "/ctl.sock"
|
||||
|
||||
// unprotectedNameWarning is for windows pipe names; a unix socket's directory is
|
||||
// checked instead.
|
||||
func unprotectedNameWarning(string) string { return "" }
|
||||
|
||||
// checkSocketPath refuses a configured socket path that is relative, or too long to
|
||||
// bind. A relative path would mean a different socket to the daemon and to nebula ctl,
|
||||
// each resolving it against the directory it happened to be started from.
|
||||
|
||||
Reference in new issue
Block a user