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

Added support for channel binding tokens when using HTTPS connections #6

Merged
merged 6 commits into from
Sep 3, 2020

Conversation

jborean93
Copy link
Owner

@jborean93 jborean93 commented Aug 25, 2020

Currently if a WSMan target has set Auth/CbtHardeningLevel = Strict then OMI will fail to connect over HTTPS when using Negotiate/Kerberos. This is because the current code does not pass in the necessary structure to GSSAPI that binds the auth with the TLS channel that the CBT check is for.

This PR retrieves the CBT data for GSSAPI if possible and makes sure it's passed into gss_init_sec_context if available. It also rejigs some of the SSL connection code in preparation for cert verification that I'm hoping to look into next.

TODO:

  • Add Integration tests (I think this will fail due to MIT bug when SPNEGO didn't pass along the CBT info until 1.18.2 - krb5/krb5@d16325a)
    • Integration tests with Kerberos
    • Integration tests with NTLM
    • SHA1 cert
    • SHA256 cert
    • SHA384 cert
    • SHA512 cert
    • RSASSA-PSS
  • Test on macOS
  • Add docs on this functionality and the limitations

@jborean93 jborean93 merged commit d1e8f5a into main Sep 3, 2020
@jborean93 jborean93 deleted the cbt branch September 3, 2020 03:04
jborean93 added a commit that referenced this pull request Oct 15, 2020
…#6)

* Added support for channel binding tokens when using HTTPS connections
jborean93 added a commit that referenced this pull request Oct 4, 2021
…#6)

* Added support for channel binding tokens when using HTTPS connections
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.

1 participant