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

Add check for SLOTH vulnerability #126

Open
janderse opened this issue Feb 4, 2016 · 4 comments
Open

Add check for SLOTH vulnerability #126

janderse opened this issue Feb 4, 2016 · 4 comments

Comments

@janderse
Copy link
Contributor

janderse commented Feb 4, 2016

How about a plug-in for detecting the SLOTH TLS vulnerability?
https://www.mitls.org/pages/attacks/SLOTH

I might write it, but I'd only want to go to that effort if it would likely be incorporated.

I'm thinking it would report on which algorithms the server says it supports, but also try MD5 and SHA1 anyway even if the server doesn't say it supports them, because a number of libraries have been found to incorrectly accept algorithms they don't advertise.

@janderse
Copy link
Contributor Author

janderse commented Feb 4, 2016

Any comments? I'm not sure which type of vulnerability scanners will be accepted and which won't.

@nabla-c0d3
Copy link
Owner

I haven't had time to look into what SLOTH is but my rule for plugins is that I will reject plugins that redo the same thing as existing ones, but provide a different UI/output.
One example would be a new plugin that checks a specific field in the server's certificate (redundant with CertinfoPlugin) and then displays some text in the output about an issue with this field.
Providing a better output is already tracked in #111.

@janderse
Copy link
Contributor Author

janderse commented Feb 4, 2016

SLOTH is about MD5 and/or SHA1 hash algorithms being used in signatures. TLS 1.2 adds the new signature_algorithms extension and the client and server can negotiate which hash algorithms are used for signatures.

This is separate from the cipher suites. So the information about which signature algorithms the server supports is not already available in the XML or text display. No existing plug-in does this.

Clients or servers allowing MD5 in signature_algorithms is a vulnerability, and the SLOTH attack exploits it to break TLS. In addition, some TLS implementations have a related vulnerability where the client or server will accept MD5/SHA1 even when it does not advertise it, which means it can still be exploited. The MD5 attack is cheap enough for anyone to perform. The SHA1 attack is within the reach of intelligence agencies.

@nabla-c0d3
Copy link
Owner

Sounds good - yeah that sounds definitely like a valid, new plugin. This might require some changes to https://github.com/nabla-c0d3/nassl to add some new OpenSSL bindings for the signature_algorithms extension.

@nabla-c0d3 nabla-c0d3 changed the title Detect SLOTH TLS vulnerability Add check for SLOTH vulnerability Oct 9, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants