CVE-2023-30542

GovernorCompatibilityBravo may trim proposal calldata

State
Published
Severity
6.8 Medium
Published
Apr 16, 2023
Updated
Feb 6, 2025
Reserved
Apr 12, 2023

Read the record on cve.org

Description

OpenZeppelin Contracts is a library for secure smart contract development. 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. This issue has been patched in 4.8.3. As a workaround, ensure that all proposals that pass through governance have equal length `signatures` and `calldatas` parameters.

Scores

CVSSScoreVectorSource
3.16.8 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:H/A:LGitHub_M

Weaknesses

  • CWE-20 Improper Input Validation

Affected Products

ProductVersions
openzeppelin-contractsOpenZeppelin
  • >= 4.3.0, < 4.8.3Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.