net/http: reject userinfo in CrossOriginProtection#79766
Conversation
(*CrossOriginProtection).AddTrustedOrigin fails if its argument contains a path, a query, and/or a fragment, but it doesn't check for the presence of a userinfo part. Such an omission doesn't affect security (because serialized origins don't contain any userinfo part), but it causes invalid origins to be silently accepted, which could create some confusion. With this CL, the method now also fails if its argument contains a userinfo part (even if it's empty).
|
This PR (HEAD: 232ab09) has been imported to Gerrit for code review. Please visit Gerrit at https://go-review.googlesource.com/c/go/+/785520. Important tips:
|
|
Message from Gopher Robot: Patch Set 1: (1 comment) Please don’t reply on this GitHub thread. Visit golang.org/cl/785520. |
|
Message from jub0bs: Patch Set 1: (2 comments) Please don’t reply on this GitHub thread. Visit golang.org/cl/785520. |
|
Message from Viacheslav Danilin: Patch Set 1: Code-Review+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/785520. |
|
Message from Filippo Valsorda: Patch Set 1: Code-Review+2 Please don’t reply on this GitHub thread. Visit golang.org/cl/785520. |
|
Message from Filippo Valsorda: Patch Set 1: Auto-Submit+1 Commit-Queue+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/785520. |
|
Message from golang-scoped@luci-project-accounts.iam.gserviceaccount.com: Patch Set 1: Dry run: CV is trying the patch. Bot data: {"action":"start","triggered_at":"2026-06-04T19:08:59Z","revision":"af20728e1926ae6e2355d00e9463f42f345fb563"} Please don’t reply on this GitHub thread. Visit golang.org/cl/785520. |
|
Message from Filippo Valsorda: Patch Set 1: -Commit-Queue (Performed by <GERRIT_ACCOUNT_60063> on behalf of <GERRIT_ACCOUNT_11715>) Please don’t reply on this GitHub thread. Visit golang.org/cl/785520. |
|
Message from golang-scoped@luci-project-accounts.iam.gserviceaccount.com: Patch Set 1: This CL has passed the run Please don’t reply on this GitHub thread. Visit golang.org/cl/785520. |
|
Message from golang-scoped@luci-project-accounts.iam.gserviceaccount.com: Patch Set 1: LUCI-TryBot-Result+1 Please don’t reply on this GitHub thread. Visit golang.org/cl/785520. |
(*CrossOriginProtection).AddTrustedOrigin fails if its argument contains
a path, a query, and/or a fragment, but it doesn't check for the
presence of a userinfo part. Such an omission doesn't affect security
(because serialized origins don't contain any userinfo part), but it
causes invalid origins to be silently accepted, which could create some
confusion.
With this CL, the method now also fails if its argument contains a
userinfo part (even if it's empty).