CVE-2024-27094
MEDIUMOpenZeppelin Contracts <5.0.2/4.9.6 - Memory Corruption
Title source: llmDescription
OpenZeppelin Contracts is a library for secure smart contract development. The `Base64.encode` function encodes a `bytes` input by iterating over it in chunks of 3 bytes. When this input is not a multiple of 3, the last iteration may read parts of the memory that are beyond the input buffer. The vulnerability is fixed in 5.0.2 and 4.9.6.
References (5)
Core 5
Core References
Vendor Advisory x_refsource_confirm
https://github.com/OpenZeppelin/openzeppelin-contracts/security/advisories/GHSA-9vx6-7xxf-x967
Patch x_refsource_misc
https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable/commit/2d081f24cac1a867f6f73d512f2022e1fa987854
Patch x_refsource_misc
https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable/commit/723f8cab09cdae1aca9ec9cc1cfa040c2d4b06c1
Scores
CVSS v3
6.5
EPSS
0.0056
EPSS Percentile
68.4%
Attack Vector
NETWORK
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H
CISA SSVC
Vulnrichment
Exploitation
none
Automatable
no
Technical Impact
partial
Details
CWE
CWE-125
Status
published
Products (4)
openzeppelin/contracts
4.5.0 - 4.9.6
openzeppelin/contracts
4.5.0 - 4.9.6npm
openzeppelin/contracts-upgradeable
5.0.0-rc.0 - 5.0.2npm
openzeppelin/contracts_upgradeable
4.5.0 - 4.9.6
Published
Mar 21, 2024
Tracked Since
Feb 18, 2026