WaratekVRT Sign in

CVE-2025-59432

Severity6.6 Medium CVSS 4.0
Fixed in3.2
WeaknessCWE-208
Published22 Sep 2025
Updated11 Oct 2026

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 version 3.2, a timing attack vulnerability exists in the SCRAM Java implementation. The issue arises because Arrays.equals was used to compare secret values such as client proofs and server signatures. Since Arrays.equals performs a short-circuit comparison, the execution time varies depending on how many leading bytes match. This behavior could allow an attacker to perform a timing side-channel attack and potentially infer sensitive authentication material. All users relying on SCRAM authentication are impacted. This vulnerability has been patched in version 3.1 by replacing Arrays.equals with MessageDigest.isEqual, which ensures constant-time comparison.

CWE-385

Exploitation status

No public exploit

No exploit has been reported in the sources we check. Published a year ago.

  • CISA KEV not listed
  • VulnCheck KEV not listed
  • CISA Vulnrichment exploitation: none
  • Indexed PoC none indexed
  • EPSS 0.70% chance in 30 days

Waratek protection

No exploit published

Within Waratek scope. In the sources we check, nobody has published exploit code for this CVE or reported it being exploited.

A public code fix exists: ongres/scram e0b0cf9.

  • Protection none
  • Action unverified
  • Review automated Upstream data
  • Record active
Decided by Medium or Low severity, no CISA or VulnCheck KEV listing, no PoC clearing the evidence bar, no CISA verdict, no Oracle advisory
Finding This CVE is MEDIUM severity, is not listed in CISA KEV or VulnCheck KEV, has no public exploit or PoC in any indexed source, carries no CISA Vulnrichment finding of a demonstrated exploit, and is not part of an Oracle Critical Patch Update. None of the signals that would put it in front of an engineer is present, and the volume of CVEs below that bar is too great to take one at a time, so no rule is written for it. This is a decision about what we act on, not a finding that the CVE is harmless — a patch may well be derivable, and a low-severity defect can still be one link in a longer chain.
Candidate fix https://github.com/ongres/scram/commit/e0b0cf99f05406a0d26682c72fcb5728e95124b3 : a commit: the change itself

Affected software and releases

Maven packages

Affected and fixed versions, from OSV.dev
PackageIntroducedFixedLast affected
com.ongres.scram:scram-common 0 3.2 unbounded

Products and versions

1 product, 1 version entry
SourceVendorProductSchemeAffected versions
osv com.ongres.scram scram-common generic < 3.2

References

URLTags
https://github.com/ongres/scram/commit/e0b0cf99f05406a0d26682c72fcb5728e95124b3 commit
https://github.com/ongres/scram/security/advisories/GHSA-3wfh-36rx-9537 WEB
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/security/MessageDigest.html#isEqual(byte%5B%5D,byte%5B%5D) WEB
https://github.com/ongres/scram PACKAGE

Timeline

Published2025-09-22By the CVE Program.
NVD record modified2026-10-11NVD's own last-modified date for this record.