CVE-2025-68704
Java vulnerability analysis and mitigation

Overview

CVE-2025-68704 is a weak random number generation vulnerability in Jervis, a library for Job DSL plugin scripts and shared Jenkins pipeline libraries. Prior to version 2.2, the avoidTimingAttack() method in SecurityIO.groovy uses java.util.Random() — a non-cryptographically secure PRNG — instead of SecureRandom, undermining its intended timing attack mitigation. The vulnerability affects all Jervis versions before 2.2 (Maven artifact net.gleske:jervis) and was disclosed on January 13, 2026. It carries a CVSS v3.1 score of 7.5 (High) and a CVSS v4.0 score of 8.2 (High) (GitHub Advisory).

Technical details

The root cause is classified as CWE-330 (Use of Insufficiently Random Values). The vulnerable code is located in src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy at lines 593–594, where the avoidTimingAttack() static method computes a random delay using new Random().nextInt(milliseconds * -1) (GitHub Advisory). Because java.util.Random is a linear congruential generator with a predictable seed, an attacker with network access and the ability to observe response timing can statistically predict the generated delay values, negating the constant-time protection the function is designed to provide. The fix replaces java.util.Random with SecureRandom (cryptographically secure PRNG) in Jervis 2.2 (Patch Commit).

Impact

Successful exploitation could allow a network-accessible attacker to conduct timing attacks against Jenkins Job DSL implementations that rely on Jervis for security-sensitive operations, potentially compromising confidential information such as secrets, tokens, or credentials processed by the library (GitHub Advisory). The impact is limited to confidentiality (no integrity or availability impact), but in CI/CD environments where Jervis handles GitHub App authentication tokens or encrypted pipeline secrets, a successful timing attack could expose sensitive credentials and enable lateral movement within the Jenkins infrastructure (Feedly).

Mitigation and workarounds

Upgrade Jervis to version 2.2 or later, which replaces java.util.Random with SecureRandom in the avoidTimingAttack() method (Patch Commit). No workarounds are available for versions prior to 2.2 (GitHub Advisory). Organizations using the Maven artifact net.gleske:jervis in Job DSL plugin scripts or shared Jenkins pipeline libraries should update their dependency to net.gleske:jervis:2.2 (or later, with 2.4 being the latest release as of mid-2026) and rebuild their Jenkins configurations.

Community reactions

The vulnerability received limited public attention, consistent with its niche scope. A brief mention appeared on Mastodon (infosec.exchange) shortly after disclosure, and the advisory was indexed by several vulnerability aggregators including Vulners, VulDB, and CIRCL (Feedly). Red Hat also tracked the CVE in their security advisory system. No significant vendor statements beyond the original GitHub Security Advisory from the maintainer were identified.

Additional resources


SourceThis report was generated using AI

Related Java vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

GHSA-p279-2cqp-84jgCRITICAL9.6
  • Java logoJava
  • org.openidentityplatform.opendj:opendj-server-legacy
NoYesJul 24, 2026
GHSA-fp43-vj7g-pg92HIGH7.5
  • Java logoJava
  • org.omnifaces:omnifaces
NoYesJul 24, 2026
GHSA-7ppr-r889-mcf2HIGH7.5
  • Java logoJava
  • org.http4s:http4s-blaze-server_2.12
NoYesJul 24, 2026
GHSA-mhvj-jhpq-885vHIGH7.4
  • Java logoJava
  • org.http4s:http4s-blaze-server_2.13
NoYesJul 24, 2026
GHSA-46q4-43ph-c6frHIGH7.4
  • Java logoJava
  • org.http4s:blaze-http_2.12
NoYesJul 24, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management