Skip to content

GHSA-8wfh-qxxv-3q8c CVE-2023-38669 PYSEC-2023-122

Use after free in PaddlePaddle

High PyPI
Severity
8.3 / 10
High · CVSS 3.1
Exploit chance (EPSS)
0.77%
Chance of exploitation in the next 30 days. Higher than 55.64% of scored vulnerabilities.
Known exploited
No
Not in CISA's catalog
Weakness
CWE-416 Use After Free
Fix
2.5.0
Upgrade paddlepaddle to this version or later

Description

Use after free in paddle.diagonal in PaddlePaddle before 2.5.0. This resulted in a potentially exploitable condition.

Affected versions

PyPI

PackageVulnerableFixed in
paddlepaddle
< 2.5.0
2.5.0
paddlepaddle
< 2.5.0
2.5.0

How to fix

Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.

paddlepaddle PyPI → 2.5.0

pip
pip install --upgrade "paddlepaddle>=2.5.0"
poetry
poetry add "paddlepaddle>=2.5.0"
uv
uv add "paddlepaddle>=2.5.0"

Severity breakdown

CVSS 3.1 8.3

CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H

Attack vector
Network
Attack complexity
High
Privileges required
None
User interaction
Required
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

Weakness

CWE-416: Use After Free

The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer.

How to prevent it
  • Architecture and Design: Choose a language that provides automatic memory management.
  • Implementation: When freeing pointers, be sure to set them to NULL once they are freed. However, the utilization of multiple or complex data structures may lower the usefulness of this strategy.

References

Timeline

  1. Published
  2. Last updated by the source
  3. Latest EPSS score
AdvisorySeverityWhy it's related
GHSA-jwrc-3v3f-5cq5
PaddlePaddle allows arbitrary file read via paddle.vision.ops.read_file
High Also affects paddlepaddle
GHSA-2rp8-hff9-c5wr
PaddlePaddle Path Traversal vulnerability
Critical Also affects paddlepaddle
GHSA-mrmm-qmrj-xgp6
PaddlePaddle vulnerable to remote code execution
Critical Also affects paddlepaddle
GHSA-qqv2-35q8-p2g2
PaddlePaddle command injection in paddle.utils.download._wget_download
High Also affects paddlepaddle
GHSA-fh54-3vhg-mpc2
PaddlePaddle command injection vulnerability
High Also affects paddlepaddle
GHSA-chj7-w3f6-cvfj
Code Injection in paddlepaddle
High Also affects paddlepaddle
GHSA-v9pg-qw6x-w5r2
PaddlePaddle floating point exception in paddle.amin
High Also affects paddlepaddle
GHSA-x3q9-c788-j7c8
PaddlePaddle segfault in paddle.dot
High Also affects paddlepaddle
Is this in your code?

MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.

Check your repos with MergeHarbor