-
Notifications
You must be signed in to change notification settings - Fork 118
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
The pyca/cryptography RSA PKCS#1 v1.5 is unsafe, making the users of it vulnerable to Bleichenbacher attacks #193
Comments
At the very least I will add documentation about the problem. Should we also disable RSA1_5 by default ? At least until pyca provides some option ? |
and what users that need this mechanism for interoperability are expected to do? rewrite their application in some other language?
disabling it is probably the best way to gauge how extensively it is used, but there are two problems that are apparent to me:
pyca specifically is asking for users of the API to help design a new API that the users can use safely (API that doesn't require side-channel free code on python level), so unless you contribute to the project you use, I don't see it happening soon |
@simo5 will you ask for CVE or should I? |
I do not think this is a CVE level event for jwcrypto. |
well, it was using an API that was insecure, just because we didn't know about it doesn't change the fact that it was vulnerable now it's not, because a change in jwcrypto |
We did do just a work around because python cryptography is not "yet" fixing it, the problem is still on pyca side IMO. |
If applications generally don't provide list of algorithms that they wish to support on receiving end, then no, the vulnerability is in jwcrypto for allowing its use. |
@simo5 even if you decide not to publish a security advisory for this, the users need to start using this new code, so could you release a new version? |
The API provided by pyca/cryptography is not secure, as documented in their docs:
pyca/cryptography@8686d52
As far as I can tell, it's one of the APIs that jwcrypto uses to implement the key management:
jwcrypto/jwcrypto/jwe.py
Line 36 in 3b7e832
That would mean that jwcrypto is vulnerable to Bleichenbacher attacks.
To fix it, implementing an API with built-in workarounding of padding oracle attacks is necessary in pyca/cryptography, as briefly described in pyca/cryptography#5510.
The text was updated successfully, but these errors were encountered: