The Apache Commons IO library contains utility classes, stream implementations, file filters,
file comparators, endian transformation classes, and much more.
In Apache Commons IO before 2.7, When invoking the method FileNameUtils.normalize with an improper input string, like "//../foo", or "\\..\foo", the result would be the same value, thus possibly providing access to files in the parent directory, but not further above (thus "limited" path traversal), if the calling code would use the result to construct a path value.
CVE-2021-29425 - Medium Severity Vulnerability
Vulnerable Libraries - commons-io-2.4.jar, commons-io-2.5.jar, commons-io-1.3.2.jar
commons-io-2.4.jar
Utility classes, stream implementations, file filters, file comparators and endian classes.
Library home page: http://commons.apache.org/io/
Path to dependency file: /t/sub3/pom.xml
Path to vulnerable library: /2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar
Dependency Hierarchy: - :x: **commons-io-2.4.jar** (Vulnerable Library)
commons-io-2.5.jar
The Apache Commons IO library contains utility classes, stream implementations, file filters, file comparators, endian transformation classes, and much more.
Library home page: http://commons.apache.org/proper/commons-io/
Path to dependency file: /t/sub4/pom.xml
Path to vulnerable library: /2/repository/commons-io/commons-io/2.5/commons-io-2.5.jar
Dependency Hierarchy: - :x: **commons-io-2.5.jar** (Vulnerable Library)
commons-io-1.3.2.jar
Commons-IO contains utility classes, stream implementations, file filters, and endian classes.
Path to dependency file: /t/sub1/pom.xml
Path to vulnerable library: /2/repository/commons-io/commons-io/1.3.2/commons-io-1.3.2.jar
Dependency Hierarchy: - :x: **commons-io-1.3.2.jar** (Vulnerable Library)
Found in HEAD commit: 37c7d89138d443bae9926a0184046f8d8c7dda51
Found in base branch: master
Vulnerability Details
In Apache Commons IO before 2.7, When invoking the method FileNameUtils.normalize with an improper input string, like "//../foo", or "\\..\foo", the result would be the same value, thus possibly providing access to files in the parent directory, but not further above (thus "limited" path traversal), if the calling code would use the result to construct a path value.
Publish Date: 2021-04-13
URL: CVE-2021-29425
CVSS 3 Score Details (4.8)
Base Score Metrics: - Exploitability Metrics: - Attack Vector: Network - Attack Complexity: High - Privileges Required: None - User Interaction: None - Scope: Unchanged - Impact Metrics: - Confidentiality Impact: Low - Integrity Impact: Low - Availability Impact: None
For more information on CVSS3 Scores, click here.Suggested Fix
Type: Upgrade version
Origin: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-29425
Release Date: 2021-04-13
Fix Resolution: commons-io:commons-io:2.7
Step up your Open Source Security Game with Mend here