Free and open · new CVEs checked every 20 minutesStatusRSSOpen dataContact

CVE-2023-49798: OpenZeppelin Contracts is a library for smart contract development

37
Routine
MEDIUM 5.9REMOTEDOWNGRADEDOWNGRADE

CVE-2023-49798 is a medium-severity flaw (CVSS 5.9) affecting contracts, contracts upgradeable. Below: why it ranks where it does, which versions are affected, what to do, and the exact commands.

OpenZeppelin Contracts is a library for smart contract development. A merge issue when porting the 5.0.1 patch to the 4.9 branch caused a line duplication. In the version of `Multicall.sol` released in `@openzeppelin/contracts@4.9.4` and `@openzeppelin/contracts-upgradeable@4.9.4`, all subcalls are executed twice. Concretely, this exposes a user to unintentionally duplicate operations like asset transfers. The duplicated delegatecall was removed

Why this priority

  • Remotely exploitable, no login, no user action

No fix is published yet: follow the downgrade or mitigation steps.

Risk facts

CVSS score5.9 (Medium)
Attack vectorNetwork (remote)
Attack complexityHigh
Privileges neededNone
User interactionNone
EPSS exploit chance0.5% (top 54%)
CISA exploited listNo
WeaknessCWE-670
Published2023-12-09
Last modified2026-06-17
Publisher (CNA): GitHub, Inc. · Vendor: openzeppelin

Share: LinkedIn · X · Reddit

Last updated 2026-06-17 · Sources: CVE Program, NVD, CISA KEV, EPSS and vendor advisories · How we score

Am I affected?

Timeline

openzeppelin contracts DOWNGRADE
Affected: 4.9.4
Fixed in: no fixed release known
Safe to downgrade to: a release before 4.9.4
1. Check installed version
npm ls contracts
2. No fixed release: DOWNGRADE to a release before 4.9.4
npm view contracts versions npm install contracts@"<4.9.4"
Downgrade risk
Downgrading can break dependent software and may reopen older bugs. Read the distro advisory first and test on a non-production host.
After downgrade
Restart the service, and keep the package held until a fixed release ships.
openzeppelin contracts upgradeable DOWNGRADE
Affected: 4.9.4
Fixed in: no fixed release known
Safe to downgrade to: a release before 4.9.4
1. Check installed version
npm ls contracts-upgradeable
2. No fixed release: DOWNGRADE to a release before 4.9.4
npm view contracts-upgradeable versions npm install contracts-upgradeable@"<4.9.4"
Downgrade risk
Downgrading can break dependent software and may reopen older bugs. Read the distro advisory first and test on a non-production host.
After downgrade
Restart the service, and keep the package held until a fixed release ships.
Verify at the official source NVD · CVE Program · Report a problem with this page
Scores and fixes here are computed automatically from those and other public sources. Confirm with the vendor advisory before changing production systems.

Quick answers

How do I fix CVE-2023-49798?

contracts: downgrade or apply the listed mitigation; contracts upgradeable: downgrade or apply the listed mitigation. Exact commands for each OS are on this page.

Is CVE-2023-49798 being exploited?

CVE-2023-49798 is not on the CISA Known Exploited Vulnerabilities list at the time of the last update. Check again, as this can change.

What does CVE-2023-49798 affect?

CVE-2023-49798 affects contracts, contracts upgradeable. Severity is medium (CVSS 5.9). OpenZeppelin Contracts is a library for smart contract development. A merge issue when porting the 5.0.1 patch to the 4.9 branch caused a line duplication. In the version of `Multicall.sol` released in `@openzeppelin/contracts@4.9.4` and `@

How urgent is CVE-2023-49798?

Priority 37/100. Remotely exploitable, no login, no user action

Related CVEs

References

← Back to latest CVEs

Get the weekly exploited-CVE digest by emailThe CVEs being attacked this week and how to fix them. No spam, unsubscribe any time.