Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

aws-java-sdk-s3-1.11.641.jar: 1 vulnerabilities (highest severity is: 7.9) #1129

Open
mend-for-github-com bot opened this issue Sep 19, 2024 · 0 comments

Comments

@mend-for-github-com
Copy link

Vulnerable Library - aws-java-sdk-s3-1.11.641.jar

The AWS Java SDK for Amazon S3 module holds the client classes that are used for communicating with Amazon Simple Storage Service

Library home page: https://aws.amazon.com/sdkforjava

Path to dependency file: /tasks/s3/pom.xml

Path to vulnerable library: /itory/com/amazonaws/aws-java-sdk-s3/1.11.641/aws-java-sdk-s3-1.11.641.jar

Vulnerabilities

CVE Severity CVSS Dependency Type Fixed in (aws-java-sdk-s3 version) Remediation Possible**
CVE-2022-31159 High 7.9 aws-java-sdk-s3-1.11.641.jar Direct 1.12.261

**In some cases, Remediation PR cannot be created automatically for a vulnerability despite the availability of remediation

Details

CVE-2022-31159

Vulnerable Library - aws-java-sdk-s3-1.11.641.jar

The AWS Java SDK for Amazon S3 module holds the client classes that are used for communicating with Amazon Simple Storage Service

Library home page: https://aws.amazon.com/sdkforjava

Path to dependency file: /tasks/s3/pom.xml

Path to vulnerable library: /itory/com/amazonaws/aws-java-sdk-s3/1.11.641/aws-java-sdk-s3-1.11.641.jar

Dependency Hierarchy:

  • aws-java-sdk-s3-1.11.641.jar (Vulnerable Library)

Found in base branch: master

Vulnerability Details

The AWS SDK for Java enables Java developers to work with Amazon Web Services. A partial-path traversal issue exists within the downloadDirectory method in the AWS S3 TransferManager component of the AWS SDK for Java v1 prior to version 1.12.261. Applications using the SDK control the destinationDirectory argument, but S3 object keys are determined by the application that uploaded the objects. The downloadDirectory method allows the caller to pass a filesystem object in the object key but contained an issue in the validation logic for the key name. A knowledgeable actor could bypass the validation logic by including a UNIX double-dot in the bucket key. Under certain conditions, this could permit them to retrieve a directory from their S3 bucket that is one level up in the filesystem from their working directory. This issue’s scope is limited to directories whose name prefix matches the destinationDirectory. E.g. for destination directory/tmp/foo, the actor can cause a download to /tmp/foo-bar, but not /tmp/bar. If com.amazonaws.services.s3.transfer.TransferManager::downloadDirectory is used to download an untrusted buckets contents, the contents of that bucket can be written outside of the intended destination directory. Version 1.12.261 contains a patch for this issue. As a workaround, when calling com.amazonaws.services.s3.transfer.TransferManager::downloadDirectory, pass a KeyFilter that forbids S3ObjectSummary objects that getKey method return a string containing the substring .. .

Publish Date: 2022-07-15

URL: CVE-2022-31159

CVSS 3 Score Details (7.9)

Base Score Metrics:

  • Exploitability Metrics:
    • Attack Vector: Network
    • Attack Complexity: High
    • Privileges Required: Low
    • User Interaction: Required
    • Scope: Changed
  • Impact Metrics:
    • Confidentiality Impact: High
    • Integrity Impact: High
    • Availability Impact: Low

For more information on CVSS3 Scores, click here.

Suggested Fix

Type: Upgrade version

Origin: GHSA-c28r-hw5m-5gv3

Release Date: 2022-07-15

Fix Resolution: 1.12.261

⛑️ Automatic Remediation will be attempted for this issue.


⛑️Automatic Remediation will be attempted for this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

0 participants