Skip to content

Avoid failing HTTP/2 requests with upgrade-insecure-requests#12799

Merged
normanmaurer merged 1 commit intonetty:4.1from
chrisvest:41-h2-header-validation-fix
Sep 13, 2022
Merged

Avoid failing HTTP/2 requests with upgrade-insecure-requests#12799
normanmaurer merged 1 commit intonetty:4.1from
chrisvest:41-h2-header-validation-fix

Conversation

@chrisvest
Copy link
Copy Markdown
Member

Motivation:
This is a non-standard header that is not explicitly called out as connection related, even though it can be argued that it is. Regardless, Chrome and Firefox do actually send this header in their HTTP/2 requests, so rejecting these is quite troublesome. Safari doesn't send this header.

Modification:
Remove the check for upgrade-insecure-requests in the header validation in HpackDecoder. Also update tests to match.

Result:
HTTP/2 requests from Chrome and Firefox are no longer rejected by the header validation.

Fixes #12798

Motivation:
This is a non-standard header that is not _explicitly_ called out as connection related, even though it can be argued that it is.
Regardless, Chrome and Firefox do actually send this header in their HTTP/2 requests, so rejecting these is quite troublesome.
Safari doesn't send this header.

Modification:
Remove the check for `upgrade-insecure-requests` in the header validation in HpackDecoder.
Also update tests to match.

Result:
HTTP/2 requests from Chrome and Firefox are no longer rejected by the header validation.

Fixes netty#12798
@chrisvest chrisvest added this to the 4.1.82.Final milestone Sep 13, 2022
@normanmaurer normanmaurer merged commit 570c5d7 into netty:4.1 Sep 13, 2022
@normanmaurer
Copy link
Copy Markdown
Member

@chrisvest can you port this to main as well

chrisvest added a commit that referenced this pull request Sep 13, 2022
Motivation:
This is a non-standard header that is not _explicitly_ called out as connection related, even though it can be argued that it is.
Regardless, Chrome and Firefox do actually send this header in their HTTP/2 requests, so rejecting these is quite troublesome.
Safari doesn't send this header.

Modification:
Remove the check for `upgrade-insecure-requests` in the header validation in HpackDecoder.
Also update tests to match.

Result:
HTTP/2 requests from Chrome and Firefox are no longer rejected by the header validation.

Fixes #12798
@chrisvest
Copy link
Copy Markdown
Member Author

Ported

@chrisvest chrisvest deleted the 41-h2-header-validation-fix branch September 13, 2022 17:04
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.

Chrome/Firefox send upgrade-insecure-requests header

2 participants