PT-2023-22769 · Openzeppelin · Openzeppelin Contracts
Frangio
·
Published
2023-04-16
·
Updated
2023-04-27
·
CVE-2023-30542
CVSS v3.1
6.8
Medium
| Vector | AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:H/A:L |
Name of the Vulnerable Software and Affected Versions
OpenZeppelin Contracts versions prior to 4.8.3
Description
The proposal creation entrypoint (
propose) in GovernorCompatibilityBravo allows the creation of proposals with a signatures array shorter than the calldatas array. This causes the additional elements of the latter to be ignored, and if the proposal succeeds the corresponding actions would eventually execute without any calldata. The ProposalCreated event correctly represents what will eventually execute, but the proposal parameters as queried through getActions appear to respect the original intended calldata.Recommendations
For versions prior to 4.8.3, update to version 4.8.3 to resolve the issue.
As a temporary workaround, ensure that all proposals that pass through governance have equal length
signatures and calldatas parameters.Exploit
Fix
RCE
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Openzeppelin Contracts