Skip to content

← Public intelligence

Maven package

net.gleske:jervis

Open actionable advisories and recorded vendor fixes. This public package view has no inventory attached and cannot establish whether your deployment is affected. A vendor fix never resolves your finding; verify your installed version and the source guidance.

Open advisories

7 actionable advisories, newest first. Withdrawn advisories and news are excluded. Coverage is partial.

  1. High, CVSS 8.7MavenPublished

    Jervis's AES CBC Mode is Without Authentication

    CVE-2025-68931 · GHSA-gxp5-mv27-vjcj

    Affected
    • Maven net.gleske:jervis < 2.2
    Fixed in
    2.2· Vendor fix available
    Issue
    Vulnerability https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L682-L684 https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L720-L722 AES/CBC/PKCS5Padding lacks authentication, making it vulnerable to padding oracle attacks and ciphertext manipulation. Impact Severity is considered low for internal uses of this library but if there's any consumer using these methods directly then this is considered critical. Unlikely to matter due to the design of how AES-256-CBC is used in conjunction with RSA and SHA-256 checksum within Jervis. Jervis uses RSA to encrypt AES keys and a SHA-256 checksum of the encrypted data in local-only storage inaccessible from the web. After asymmetric decryption and before symmetric decryption, a SHA-256 checksum is performed on the metadata and encrypted data. All encrypted…

    Recommended action: Upgrade to 2.2 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  2. Medium, CVSS 6.9MavenPublished

    Jervis Has a JWT Algorithm Confusion Vulnerability

    CVE-2025-68925 · GHSA-5pq9-5mpr-jj85

    Affected
    • Maven net.gleske:jervis < 2.2
    Fixed in
    2.2· Vendor fix available
    Issue
    Vulnerability https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L244-L249 The code doesn't validate that the JWT header specifies "alg":"RS256". Impact Depending on the broader system, this could allow JWT forgery. Internally this severity is low since JWT is only intended to interface with GitHub. External users should consider severity moderate. Patches Jervis patch will explicitly verify the algorithm in the header matches expectations and further verify the JWT structure. Upgrade to Jervis 2.2. Workarounds External users should consider using an alternate JWT library or upgrade. References - RFC 7518: JSON Web Algorithms

    Recommended action: Upgrade to 2.2 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  3. High, CVSS 8.2MavenPublished

    Jervis Has Weak Random for Timing Attack Mitigation

    CVE-2025-68704 · GHSA-c9q6-g3hr-8gww

    Affected
    • Maven net.gleske:jervis < 2.2
    Fixed in
    2.2· Vendor fix available
    Issue
    Vulnerability https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L593-L594 Uses java.util.Random() which is not cryptographically secure. Impact If an attacker can predict the random delays, they may still be able to perform timing attacks. Patches Jervis will use SecureRandom for timing randomization. Upgrade to Jervis 2.2. Workarounds None References - OWASP Cryptographic Failures

    Recommended action: Upgrade to 2.2 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  4. High, CVSS 8.7MavenPublished

    Jervis's Salt for PBKDF2 derived from password

    CVE-2025-68703 · GHSA-36h5-vrq6-pp34

    Affected
    • Maven net.gleske:jervis < 2.2
    Fixed in
    2.2· Vendor fix available
    Issue
    Vulnerability https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L869-L870 https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L894-L895 The salt is derived from sha256Sum(passphrase). Two encryption operations with the same password will have the same derived key. Impact Pre-computation attacks. Severity is considered low for internal uses of this library and high for consumers of this library. Patches Jervis will generate a random salt for each password and store it alongside the ciphertext. Upgrade to Jervis 2.2. Workarounds None References - NIST SP 800-132: Password-Based Key Derivation

    Recommended action: Upgrade to 2.2 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  5. High, CVSS 8.7MavenPublished

    Jervis Has a SHA-256 Hex String Padding Bug

    CVE-2025-68702 · GHSA-67rj-pjg6-pq59

    Affected
    • Maven net.gleske:jervis < 2.2
    Fixed in
    2.2· Vendor fix available
    Issue
    Vulnerability https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L622-L626 padLeft(32, '0') should be padLeft(64, '0'). SHA-256 produces 32 bytes = 64 hex characters. Impact Inconsistent hash lengths when leading bytes are zero Comparison failures for hashes with leading zeros Potential security issues in hash-based comparisons Could cause subtle bugs in systems relying on consistent hash lengths Severity is considered low for internal uses of this library but if there's any consumer using these methods directly then this is considered high. Patches Upgrade to Jervis 2.2. Workarounds Use an alternate SHA-256 hash function or upgrade.

    Recommended action: Upgrade to 2.2 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  6. High, CVSS 8.7MavenPublished

    Jervis has Deterministic AES IV Derivation from Passphrase

    CVE-2025-68701 · GHSA-crxp-chh4-9ghp

    Affected
    • Maven net.gleske:jervis < 2.2
    Fixed in
    2.2· Vendor fix available
    Issue
    Vulnerability https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L866-L874 https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L891-L900 Same passphrase + same plaintext = same ciphertext (IV reuse) Impact Severity is considered low for internal uses of this library but if there's any consumer using these methods directly then this is considered high. Significant reduction in the security of the encryption scheme. Pattern analysis becomes possible. Patches Random IV will be generated and prepended to the ciphertext. Upgrade to Jervis 2.2. Workarounds None

    Recommended action: Upgrade to 2.2 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  7. High, CVSS 8.7MavenPublished

    Jervis Has a RSA PKCS#1 Padding Vulnerability

    CVE-2025-68698 · GHSA-mqw7-c5gg-xq97

    Affected
    • Maven net.gleske:jervis < 2.2
    Fixed in
    2.2· Vendor fix available
    Issue
    Vulnerability https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L463-L465 https://github.com/samrocketman/jervis/blob/157d2b63ffa5c4bb1d8ee2254950fd2231de2b05/src/main/groovy/net/gleske/jervis/tools/SecurityIO.groovy#L495-L497 Uses PKCS1Encoding which is vulnerable to Bleichenbacher padding oracle attacks. Modern systems should use OAEP (Optimal Asymmetric Encryption Padding). Impact Severity is considered low for internal uses of this library but if there's any consumer using these methods directly then this is considered critical. An attacker with access to a decryption oracle (e.g., timing differences or error messages) could potentially decrypt ciphertext without knowing the private key. Jervis uses RSA to encrypt AES keys in local-only storage inaccessible from the web. The data stored is GitHub App authentication tokens which will expire within one hour or less. Patches Jervis patch…

    Recommended action: Upgrade to 2.2 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →