Skip to content
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

Optionally verifying the ClientHello sent on wire #126

Open
gaukas opened this issue Oct 18, 2022 · 1 comment
Open

Optionally verifying the ClientHello sent on wire #126

gaukas opened this issue Oct 18, 2022 · 1 comment
Labels
enhancement Feature with low severity but good value

Comments

@gaukas
Copy link
Member

gaukas commented Oct 18, 2022

Implement an optional feature which, when enabled, will:

  • Capture the bytes of ClientHello sent on wire
  • Compare it with the desired ClientHelloMessage
  • Throw error and tear down connection if didn't match

This may help us in preventing unintended behaviors of malfunctioning extensions in uTLS.


Original Post: net4people/bbs#139 (comment) by @klzgrad

@gaukas gaukas added the enhancement Feature with low severity but good value label Oct 18, 2022
@klzgrad
Copy link

klzgrad commented Oct 18, 2022

This is meant to prevent accidental leakage of unmodified Go fingerprints as reported in net4people/bbs#139. The check must be as close to the wire as possible and can check for known wrong fingerprints e.g. default Go fingerprints.

But the action should be determined after reproducing the original bug. If the bug turns out to be caused by incorrect configuration or bugs within uTLS, the check can catch it. If the problematic code path is caused by external factors that make uTLS entirely unused then I don't think this would help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Feature with low severity but good value
Projects
None yet
Development

No branches or pull requests

2 participants