-
Notifications
You must be signed in to change notification settings - Fork 137
Check EV in certs, add TLS 1.3 support #221
Conversation
I don't think that your EV checking algorithm is correct. By flattening the list of EV OIDs you loose the link to the CA certificate. A simple example that will lead to a problem is the following:
|
Yeah, that's a good point. I think I should probably eliminate the field showing which browsers it's trusted in, since I'm a long way off from validating they are actually trusted in those browsers. I should also change the verbiage around |
For clarity, this PR is only really trying to help us detect when entites are trying to use EV, not whether they're actually succeeding. I can add some clarifying comments to that effect, too. |
@konklone I'm currently running a test with all my scanning done in Lambda and with the latest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I did some tests and this appears to be working great!
This adds two new features to the SSLyze scanner:
To detect TLS 1.3, it's using SSLyze's built-in TLS 1.3 scanner. As of this commit, SSLyze is stuck at 1.3 after #217, so it's detecting an older draft of 1.3. When SSLyze is updated to 1.4 again, it should detect TLS 1.3 draft 23.
To prepare the list of EV OIDs:
tl-create
.tl-create
has a bug with Mozilla EV OIDs, and doesn't gather Chrome EV OIDs.sslyze.py
.2.23.140.1.3
from the Microsoft array, which is the EV Code Signing OID.2.23.140.1.1
and put it in its own value. This OID indicates that the certificate is asserting its validation complies with EV guidelines generally, but does not indicate that the CA being used to issue this certificate is trusted for EV in any major browser.To check for EV status, the code:
cryptography
library.2.23.140.1.1
to see if the certificate is asserting itself as EV.2.23.140.1.1
) against each browser list, to see which browsers it matches.