Skip to content

Reject connect - #56

Merged
mjbraun merged 2 commits into
mainfrom
reject-connect
Sep 9, 2026
Merged

Reject connect#56
mjbraun merged 2 commits into
mainfrom
reject-connect

Conversation

@mjbraun

@mjbraun mjbraun commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

No description provided.

Request validators check the Host header of each request, but a request
tunneled through CONNECT is delivered to whatever the CONNECT line named.
A client holding a secret scoped to one host could CONNECT to another
host and send a tunneled request with the allowed host in its Host
header, and the secret would be injected and delivered to the CONNECT
target. The shipped client never uses CONNECT, so refuse it outright.
The dial guard that refuses private, loopback, and fdaa::/8 addresses
was only installed when the hostnames list contained a literal IP, so a
deployment configured with DNS names or nothing at all ran with no guard.
Install it unconditionally. Tests that run their upstream on loopback
opt out with AllowPrivateUpstreams.
@mjbraun
mjbraun requested a review from timflyio September 8, 2026 16:32

@timflyio timflyio left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good to me

@mjbraun
mjbraun merged commit f275cdd into main Sep 9, 2026
1 check passed
@mjbraun
mjbraun deleted the reject-connect branch September 9, 2026 17:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants