Loading...
Skip to main content

CVE-2025-23215 — Vulnerability in net.sourceforge.pmd:pmd-ui — CVE...

CRITICAL

PMD Designer's release key passphrase (GPG) available on Maven Central in cleartext

Published January 31, 2025Updated April 4, 2025Source: osv

Summary

### Summary While rebuilding [PMD Designer](https://github.com/pmd/pmd-designer) for Reproducible Builds and digging into issues, I found out that passphrase for `gpg.keyname=0xD0BF1D737C9A1C22` is included in jar published to Maven Central. ### Details See https://github.com/jvm-repo-rebuild/reproducible-central/blob/master/content/net/sourceforge/pmd/pmd-designer/README.md I removed 2 lines from https://github.com/jvm-repo-rebuild/reproducible-central/blob/master/content/net/sourceforge/pmd/pmd-designer/pmd-designer-7.0.0.diffoscope but real content is: ``` ├── net/sourceforge/pmd/util/fxdesigner/designer.properties │ @@ -1,14 +1,12 @@ │ #Properties │ checkstyle.plugin.version=3.3.1 │ checkstyle.version=10.14.0 │ -gpg.keyname=0xD0BF1D737C9A1C22 │ -gpg.passphrase=evicx0nuPfvSVhVyeXpw │ jar.plugin.version=3.3.0 │ -java.version=11.0.22 │ +java.version=11.0.25 │ javadoc.plugin.version=3.6.3 │ jflex-output=/home/runner/work/pmd-designer/pmd-designer/target/generated-sources/jflex │ junit5.version=5.8.2 │ kotest.version=5.5.5 │ kotlin.version=1.7.20 │ local.lib.repo=/home/runner/work/pmd-designer/pmd-designer/lib/mvn-repo │ openjfx.scope=provided ``` ### PoC ``` ./rebuild.sh content/net/sourceforge/pmd/pmd-designer/pmd-designer-7.0.0.buildspec ``` ### Impact After further analysis, the passphrase of the following two keys have been compromised: 1. `94A5 2756 9CAF 7A47 AFCA BDE4 86D3 7ECA 8C2E 4C5B`: PMD Designer (Release Signing Key) <releases@pmd-code.org> This key has been used since 2019 with the release of [net.sourceforge.pmd:pmd-ui:6.14.0](https://repo.maven.apache.org/maven2/net/sourceforge/pmd/pmd-ui/6.14.0/). The following versions are signed with the same key: 6.16.0, 6.17.0, 6.19.0. 2. `EBB2 41A5 45CB 17C8 7FAC B2EB D0BF 1D73 7C9A 1C22`: PMD Release Signing Key <releases@pmd-code.org> This key has been used since 2020 with the release of [net.sourceforge.pmd:pmd-ui:6.21.0](https://repo.maven.apache.org/maven2/net/sourceforge/pmd/pmd-ui/6.21.0/) and all the other modules of PMD such as [net.sourceforge.pmd:pmd-core:6.21.0](https://repo.maven.apache.org/maven2/net/sourceforge/pmd/pmd-core/6.21.0/). This key has also been used for PMD 7, for the designer, e.g. [net.sourceforge.pmd:pmd-designer:7.0.0](https://repo.maven.apache.org/maven2/net/sourceforge/pmd/pmd-designer/7.0.0/) and [net.sourceforge.pmd:pmd-core:7.0.0](https://repo.maven.apache.org/maven2/net/sourceforge/pmd/pmd-core/7.0.0/). The versions between 6.21.0 and 7.9.0 are signed with this key. Additionally the key has been used to sign the last release of [PMD Eclipse Plugin 7.9.0.v20241227-1626-r](https://github.com/pmd/pmd-eclipse-plugin/releases/tag/7.9.0.v20241227-1626-r). The keys have been used exclusively for signing artifacts that we published to Maven Central under group id `net.sourceforge.pmd` and once for our pmd-eclipse-plugin. The private key itself is not known to have been compromised itself, but given its passphrase is, it must also be considered potentially compromised. As a mitigation, both compromised keys have been revoked so that no future use of the keys are possible. For future releases of PMD, PMD Designer and PMD Eclipse Plugin we use a new release signing key: `2EFA 55D0 785C 31F9 56F2 F87E A0B5 CA1A 4E08 6838` (PMD Release Signing Key <releases@pmd-code.org>). Note, that the published artifacts in Maven Central under the group id `net.sourceforge.pmd` are **not** compromised and the signatures are valid. No other past usages of the private key is known to the project and no future use is possible due to the revocation. If anybody finds a past abuse of the private key, please share with us. Note, the module `net.sourceforge.pmd:pmd-ui` has been renamed to `net.sourceforge.pmd:pmd-designer` since PMD 7, so there won't be a fixed version for `pmd-ui`. ### Fixes * Reworked build script in PMD Designer to not include all system properties * https://github.com/pmd/pmd-designer/commit/1548f5f27ba2981b890827fecbd0612fa70a0362 * https://github.com/pmd/pmd-designer/commit/e87a45312753ec46b3e5576c6f6ac1f7de2f5891 ### References * [GHSA-88m4-h43f-wx84](https://github.com/pmd/pmd/security/advisories/GHSA-88m4-h43f-wx84) * [CVE-2025-23215](https://www.cve.org/CVERecord?id=CVE-2025-23215) * [reproducible-central](https://github.com/jvm-repo-rebuild/reproducible-central?tab=readme-ov-file#reproducible-builds-for-maven-central-repository)

Advisory Timeline

  • First published January 31, 2025 (619 days ago).
  • Last revised April 4, 2025 — 63 days after initial publication.

Remediation

Upgrade to the fixed version using your package manager.

Maven
Update net.sourceforge.pmd:pmd-core to 7.10.0 or later
<!-- Update pom.xml dependency version to 7.10.0 for net.sourceforge.pmd:pmd-core -->
Maven
Update net.sourceforge.pmd:pmd-designer to 7.10.0 or later
<!-- Update pom.xml dependency version to 7.10.0 for net.sourceforge.pmd:pmd-designer -->

After upgrading, run your dependency scanner again to confirm the vulnerability is resolved.

Affected Packages (3)

Affects 1 ecosystem: maven (3).

PackageEcosystemAffectedFixed In
net.sourceforge.pmd:pmd-ui
maven
6.14.0, 6.16.0, 6.17.0, 6.19.0Range-based data available
net.sourceforge.pmd:pmd-core
maven
6.21.0, 6.22.0, 6.23.0, 6.24.0 (+45 more)7.10.0
net.sourceforge.pmd:pmd-designer
maven
7.0.0, 7.2.07.10.0

Vulnerability Classification

Common Weakness Enumeration (CWE) identifiers for this vulnerability type.

CVSS Score Breakdown

What the CVSS (Common Vulnerability Scoring System) 9.8 score means for each attack dimension.

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
—
Confidentiality
—
Integrity
—
Availability
—

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/U:Clear

Frequently Asked Questions

What is CVE-2025-23215?
PMD Designer's release key passphrase (GPG) available on Maven Central in cleartext This vulnerability has been assigned a severity rating of CRITICAL (CVSS score: 9.8/10).
How do I check if my project is affected by CVE-2025-23215?
CVE-2025-23215 affects net.sourceforge.pmd:pmd-ui, net.sourceforge.pmd:pmd-core and net.sourceforge.pmd:pmd-designer. Use GeekWala's free vulnerability scanner to check your dependencies against CVE-2025-23215 and 200,000+ other known vulnerabilities.

Severity & Exploitability

CVSS Score
9.8

Exploitation is straightforward and causes maximum impact. Patch immediately.

Also Known As

GHSA-88m4-h43f-wx84

Related CVEs

Check if you're affected

Scan your dependencies to see if this vulnerability affects your projects.

Scan Your Dependencies