Description
OpenZeppelin Contracts is a library for smart contract development. By frontrunning the creation of a proposal, an attacker can become the proposer and gain the ability to cancel it. The attacker can do this repeatedly to try to prevent a proposal from being proposed at all. This impacts the `Governor` contract in v4.9.0 only, and the `GovernorCompatibilityBravo` contract since v4.3.0. This problem has been patched in 4.9.1 by introducing opt-in frontrunning protection. Users are advised to upgrade. Users unable to upgrade may submit the proposal creation transaction to an endpoint with frontrunning protection as a workaround.
Remediation
References
https://github.com/OpenZeppelin/openzeppelin-contracts/commit/d9474327a492f9f310f31bc53f38dbea56ed9a57
https://github.com/OpenZeppelin/openzeppelin-contracts/security/advisories/GHSA-5h3x-9wvq-w4m2
Related Vulnerabilities
CVE-2022-31166 Vulnerability in maven package org.xwiki.platform:xwiki-platform-oldcore
CVE-2021-23353 Vulnerability in maven package org.webjars.npm:jspdf
CVE-2023-37277 Vulnerability in maven package org.xwiki.platform:xwiki-platform-web-war
CVE-2021-32827 Vulnerability in maven package org.mock-server:mockserver-core
CVE-2021-23329 Vulnerability in npm package nested-object-assign