SCRAM: Silent channel-binding authentication downgrade via unsupported certificate algorithms
Description
SCRAM (Salted Challenge Response Authentication Mechanism) is part of the family of Simple Authentication and Security Layer (SASL, RFC 4422) authentication mechanisms. Prior to 3.3, a flaw in com.ongres.scram:scram-client and com.ongres.scram:scram-common allows an attacker capable of a TLS man-in-the-middle attack to silently downgrade a connection from SCRAM-SHA-256-PLUS with channel binding to standard SCRAM-SHA-256 without channel binding when TlsServerEndpoint processes an X.509 certificate using a modern signature algorithm such as Ed25519; getChannelBindingData() can return an empty byte array after NoSuchAlgorithmException, and the ScramClient builder treats that as absent channel-binding data. This issue is fixed in version 3.3.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
com.ongres.scram:scram-clientMaven | < 3.3 | 3.3 |
com.ongres.scram:scram-commonMaven | < 3.3 | 3.3 |
Affected products
3- Range: <3.3
- Range: <3.3
Patches
Vulnerability mechanics
References
3- github.com/advisories/GHSA-p9jg-fcr6-3mhfghsaADVISORY
- github.com/ongres/scram/releases/tag/3.3mitrex_refsource_MISC
- github.com/ongres/scram/security/advisories/GHSA-p9jg-fcr6-3mhfghsax_refsource_CONFIRMWEB
News mentions
0No linked articles in our index yet.