Skip to content

Conversation

@jtesta
Copy link
Contributor

@jtesta jtesta commented May 29, 2025

A user reported in #334 that TLSv1.2 was not being detected on a target. An investigation found that the target was terminating the connection because our constructed ClientHello includes a high number of ciphersuites (351; this is to increase the chances of a server responding). I strongly suspect this server behavior is not conformant to the TLS specs, but regardless, this PR works around the issue by making a second handshake attempt using OpenSSL's built-in functions (which include only 28 ciphersuites in the ClientHello message).

This workaround may be useful for detecting other non-standard TLS implementations as well.

…he strange case where a target improperly rejects our constructed ClientHello.
@rbsec rbsec merged commit debcc0f into rbsec:master Jun 1, 2025
@rbsec
Copy link
Owner

rbsec commented Jun 1, 2025

I've done some testing with this on various local stacks and not seen any issues from it - so looks good. I wonder exactly what it is they're running that's behaving in this way.

Wouldn't it be great if people actually followed standards....?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants