-
Notifications
You must be signed in to change notification settings - Fork 5.9k
Xray-core: More robust browser header masquerading (chrome, firefox, edge) #5802
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
53 commits
Select commit
Hold shift + click to select a range
1d1119b
Added a new field generating valid Chrome UA CH.
PoneyClairDeLune 2ca5615
Added the missing headers in the DoH context.
PoneyClairDeLune cfaebf0
Extra Chrome headers in the observatory.
PoneyClairDeLune c8f0b35
More Chrome headers in transport authenticators.
PoneyClairDeLune 903150a
Remaining places to add headers.
PoneyClairDeLune 30a5666
Adjusted headers in HU and WS.
PoneyClairDeLune 8962725
Oops!
PoneyClairDeLune 0a50325
A shared method for applying headers.
PoneyClairDeLune 79cfded
Re-ordered header writing.
PoneyClairDeLune c5e6f51
Yep I suck at Go...
PoneyClairDeLune a42fec7
Note to self: Configure Go 1.26 next time.
PoneyClairDeLune a99942e
Ugh!
PoneyClairDeLune f7c68ca
Does it work?
PoneyClairDeLune 02bc287
I'm hopeful.
PoneyClairDeLune 393ad42
Full headers from both Chrome and Firefox ESR.
PoneyClairDeLune 23fc883
Avoided argument naming confusion.
PoneyClairDeLune 0d79813
Implemented Chromium's brand GREASE algorithm.
PoneyClairDeLune 2d45dd5
Full Chromium brand GREASE implementation.
PoneyClairDeLune fcc7feb
Always remember to include imports!
PoneyClairDeLune d9e512b
Why weren't some headers added?
PoneyClairDeLune 8b6961b
Bollocks.
PoneyClairDeLune 15da2fc
Bloody hell!
PoneyClairDeLune 53c980d
So the headers already were initiated before?!
PoneyClairDeLune 0108793
What if I disable UA write in gRPC?
PoneyClairDeLune 009237a
For Sunbutt's sake, Go!
PoneyClairDeLune 14ea9b1
As long as it works. But still...
PoneyClairDeLune 14caef5
Fuck you Go!
PoneyClairDeLune 22f9007
Final test.
PoneyClairDeLune b00a07e
Near-perfect match on final check on headers.
PoneyClairDeLune b6fe4d8
Fuuuuuuuuuuuuuuuuuuuuuck
PoneyClairDeLune 01377d3
`same-origin`.
PoneyClairDeLune afed94c
Browsers are fundamentally incapable of true gRPC.
PoneyClairDeLune 7c08462
A better way to test the presence of UA.
PoneyClairDeLune 4d3a412
Are you fucking kidding me?
PoneyClairDeLune f749b66
Cleanup & commented out lines for behaviour switch.
PoneyClairDeLune cdd8931
Bypass canonical headers for `CH-UA` headers.
PoneyClairDeLune b4d2b2a
`!chrome`, `!firefox`
PoneyClairDeLune ee9589a
May Sunbutt and Moonbutt pass this commit.
PoneyClairDeLune 6b47fa9
Celestia has a giant cake-infused rear!
PoneyClairDeLune d37d16b
Test the waters.
PoneyClairDeLune d3ff8e7
Special value handlers to a single common method.
PoneyClairDeLune ff4909e
Added headers for Microsoft Edge and `!edge` UA.
PoneyClairDeLune 680fd53
A better dynamic CH UA brand allocation.
PoneyClairDeLune e98393f
Turns out a version generator for Firefox...
PoneyClairDeLune b7697c2
Special values in gRPC are entirely different.
PoneyClairDeLune 373cc4b
Ugh, the cost of one single typo...
PoneyClairDeLune 2cc15e9
Hopefully not confusing.
PoneyClairDeLune 6073680
A better name for the method.
PoneyClairDeLune 663bd12
One other rename before merging.
PoneyClairDeLune 3a2e00f
Some corrections.
PoneyClairDeLune 6070bc8
Still thinks this is a bad idea. Will it compile?
PoneyClairDeLune 7498105
One final rename for clarity.
PoneyClairDeLune a142197
Naming coherence adherance.
PoneyClairDeLune File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.