Skip to content

x/tools/gopls: -port and -listen flag makes it easy to bind to 0.0.0.0 and allow RCE #79211

@nicholashusin

Description

@nicholashusin

gopls by default communicates via pipe. However, -port and -listen flags are supported as means of debugging. If -listen is given a value without an explicit host (e.g. :8080), or -port is used, gopls will listen on 0.0.0.0. As a result, users might inadvertently cause gopls to bind 0.0.0.0. This can allow a malicious party on the same network to execute code arbitrarily via gopls.

This is filed as a PUBLIC issue due to the relatively niche setup: we expect that the majority of gopls users are not using these flags. This is CVE-2026-42503.

Metadata

Metadata

Assignees

Labels

BugReportIssues describing a possible bug in the Go implementation.SecurityToolsThis label describes issues relating to any tools in the x/tools repository.goplsIssues related to the Go language server, gopls.

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions