Medium

OpenZeppelin Contracts vulnerable to Improper Escaping of Output

  • Disclosed: 11.08.2023
  • Updated: 11.10.2026 10:22

Impact

OpenZeppelin Contracts is a library for secure smart contract development. Starting in version 4.0.0 and prior to version 4.9.3, contracts using ERC2771Context along with a custom trusted forwarder may see _msgSender return address(0) in calls that originate from the forwarder with calldata shorter than 20 bytes. This combination of circumstances does not appear to be common, in particular it is not the case for MinimalForwarder from OpenZeppelin Contracts, or any deployed forwarder the team is aware of, given that the signer address is appended to all calls that originate from these forwarders.

Patches

The problem has been patched in v4.9.3.

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
npm package @openzeppelin/contracts >= 4.0.0, < 4.9.3 4.9.3
npm package @openzeppelin/contracts-upgradeable >= 4.0.0, < 4.9.3 4.9.3

References

CVSS score 5.3/10
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weakness (CWE)
CWE-116
Platform
npm
Package
@openzeppelin/contracts, @openzeppelin/contracts-upgradeable
Disclosed
11.08.2023
Updated
11.10.2026 10:22

Sources and licenses

OSV / GitHub Advisory Database - GHSA-g4vp-m682-qqmp - CC BY 4.0

Vulnerability history: @openzeppelin/contracts

All published vulnerabilities of this package (npm package), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (20) in the archive
Total entries
20
First → latest
08.2021 07.2025
Without a fix
0
Exploited in attacks
0

Severity breakdown

  • Critical 2
  • High 5
  • Medium 12
  • Low 1

Disclosures per year

  1. 2021: 4
  2. 2022: 7
  3. 2023: 7
  4. 2024: 1
  5. 2025: 1
  6. 2026: 0
Severity:
  1. OpenZeppelin Contracts vulnerable to Improper Escaping of Output this entry
    Medium · 5.3 CVE-2023-40014 >= 4.0.0, < 4.9.3 4.9.3
  2. High · 8.8 CVE-2023-30542 >= 4.3.0, < 4.8.3 4.8.3
  3. High · 7.9 CVE-2022-35961 >= 4.1.0, < 4.7.3 4.7.3
  4. High · 7.5 CVE-2022-31170 >= 4.0.0, < 4.7.1 4.7.1
  5. Critical · 9.8 CVE-2021-41264 >= 4.1.0, < 4.3.2 4.3.2
  6. Critical · 10.0 CVE-2021-39167 >= 4.0.0, < 4.3.1, >= 3.3.0, < 3.4.2 4.3.1, 3.4.2

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.