Skip to main content

N A EUVDEUVD-2025-209006

| CVE-2025-70952 HIGH
Path Traversal (CWE-22)
2026-03-25 mitre GHSA-5458-7hh9-v7p4
7.5
CVSS 3.1 · NVD
Share

Severity by source

NVD PRIMARY
7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Primary rating from NVD · only source for this CVE.

CVSS VectorNVD

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

Lifecycle Timeline

4
Patch released
Mar 31, 2026 - 21:13 nvd
Patch available
EUVD ID Assigned
Mar 25, 2026 - 18:47 euvd
EUVD-2025-209006
Analysis Generated
Mar 25, 2026 - 18:47 vuln.today
CVE Published
Mar 25, 2026 - 00:00 nvd
HIGH 7.5

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 270 maven packages depend on org.pf4j:pf4j (8 direct, 262 indirect)

Ecosystem-wide dependent count for version 3.14.1.

DescriptionCVE.org

pf4j before 20c2f80 has a path traversal vulnerability in the extract() function of Unzip.java, where improper handling of zip entry names can allow directory traversal or Zip Slip attacks, due to a lack of proper path normalization and validation.

AnalysisAI

pf4j versions prior to commit 20c2f80 contain a Zip Slip path traversal vulnerability in the Unzip.java extract() function that fails to properly validate and normalize zip entry names, allowing attackers to write files outside the intended extraction directory. An attacker can craft a malicious zip file with directory traversal sequences (e.g., ../../../) in entry names to extract arbitrary files to unauthorized locations on the system. This vulnerability affects the pf4j plugin framework, which is widely used in Java applications that dynamically load plugins; a proof-of-concept has been documented on GitHub (weaver4VD gist), indicating functional exploitation is possible.

Technical ContextAI

pf4j is a lightweight Java plugin framework that manages plugin discovery, loading, and execution. The vulnerability resides in the Unzip.java utility class, specifically the extract() method responsible for decompressing plugin archives. The root cause is improper handling of zip entry names as defined in CWE-22 (Improper Limitation of a Pathname to a Restricted Directory, aka Zip Slip). When processing ZipEntry objects, the code does not canonicalize file paths or validate that extracted entries remain within the intended destination directory. Attackers can bypass directory restrictions by including path traversal sequences (../) or absolute paths in zip entry names, a well-known attack pattern documented since the 2018 Zip Slip disclosure. The vulnerability affects pf4j framework versions before the patched commit 20c2f80089d1ea779e22c2de5f109a0bce4e1b14.

RemediationAI

Upgrade pf4j to a version incorporating commit 20c2f80089d1ea779e22c2de5f109a0bce4e1b14 or later. Refer to the official pf4j GitHub repository commit history (https://github.com/pf4j/pf4j/commit/20c2f80089d1ea779e22c2de5f109a0bce4e1b14) to identify the exact patched release version. As an interim workaround, restrict plugin installation to digitally signed archives from trusted sources, enforce file integrity checks on extracted plugin contents, and validate that all extracted files reside within the intended plugin directory using canonical path comparison (e.g., Java's File.getCanonicalPath()). Additionally, run plugin loading in a sandboxed environment with minimal file system permissions to limit blast radius.

More in N A

View all
CVE-2024-51092 CRITICAL POC
9.1 May 08

LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr

CVE-2025-15684 MEDIUM POC
5.5 Aug 12

Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han

CVE-2024-45257 HIGH POC
7.3 May 08

A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi

CVE-2025-15687 LOW POC
2.1 Aug 12

Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc

CVE-2025-15686 LOW POC
2.1 Aug 12

Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula

CVE-2025-67888 HIGH POC
7.3 May 08

Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root

CVE-2024-53326 HIGH POC
7.3 May 08

LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(

CVE-2026-38360 CRITICAL POC
9.8 May 08

Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti

CVE-2026-30623 CRITICAL POC
9.8 Jul 15

Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr

CVE-2026-67917 CRITICAL POC
9.8 Aug 17

SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg

CVE-2026-75337 CRITICAL POC
9.8 Aug 27

Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ

CVE-2026-31072 CRITICAL POC
9.8 May 19

Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali

Share

EUVD-2025-209006 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy