CVE-2026-57583: OpenZeppelin Contracts Wizard: Line terminators in info.securityContact / info.license can inject lines into generated source

Published Sep 14, 2026
·
Updated

OpenZeppelin Contracts Wizard is a web application to interactively build a contract out of components from OpenZeppelin Contracts. Prior to @openzeppelin/wizard 0.10.11, @openzeppelin/wizard-cairo 3.0.1, @openzeppelin/wizard-stellar 0.6.2, and @openzeppelin/wizard-stylus 0.3.1, the setInfo code path prints info.securityContact and info.license verbatim into single-line comments in generated Solidity, Cairo, Stellar/Soroban, and Stylus source. A line terminator ends the comment and causes following input to be emitted as source declarations. Exploitation requires an integration to populate these fields from untrusted input and a user to consume the generated source; normal self-service web, AI assistant, CLI, and self-hosted API use does not cross that trust boundary, shared links cannot set the fields, and no code executes on a Wizard service. This issue affects generated-source integrity only and is fixed in versions 0.10.11, 3.0.1, 0.6.2, and 0.3.1 of the respective packages.

Affected Software

4 affected components
OpenZeppelin OpenZeppelin Contracts Wizard<0.10.11
npm/@openzeppelin/wizard-cairo<3.0.1
npm/@openzeppelin/wizard-stellar<0.6.2
npm/@openzeppelin/wizard-stylus<0.3.1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade @openzeppelin/wizard to a version that resolves this vulnerability.

    Fixed in 0.10.11
  2. Upgrade

    Upgrade @openzeppelin/wizard-cairo to a version that resolves this vulnerability.

    Fixed in 3.0.1
  3. Upgrade

    Upgrade @openzeppelin/wizard-stellar to a version that resolves this vulnerability.

    Fixed in 0.6.2
  4. Upgrade

    Upgrade @openzeppelin/wizard-stylus to a version that resolves this vulnerability.

    Fixed in 0.3.1

Event History

Sep 14, 2026
CVE Published
via MITRE·05:44 PM
Data Sourced
via MITRE·05:44 PM
DescriptionSeverityWeakness

Frequently Asked Questions

1

Who is realistically exposed to this issue?

Integrations that populate securityContact or license from untrusted input are exposed if users may consume the generated source. Normal self-service web, AI assistant, CLI, and self-hosted API usage does not cross the required trust boundary, and shared links cannot set these fields.

2

What does an attacker need to exploit it?

An attacker needs a way to supply line terminators and subsequent content through the securityContact or license fields via an integration that trusts untrusted input. A user must then consume the generated source containing the injected declarations.

3

Does exploitation execute code on a Wizard service?

No. The issue affects the integrity of generated source code only; no code executes on a Wizard service.

4

What versions remediate the issue?

Use @openzeppelin/wizard 0.10.11, @openzeppelin/wizard-cairo 3.0.1, @openzeppelin/wizard-stellar 0.6.2, or @openzeppelin/wizard-stylus 0.3.1, as applicable.

5

What can be done before upgrading?

Do not populate the securityContact or license fields from untrusted input. Treat generated source that includes values from those fields as untrusted and review it before use.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203