CVE-2023-46232
Matter-Labs Zkvyper ≤ 1.3.10
Raw vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:NCVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.
Summary
CVE-2023-46232 is a medium-severity MAID (CWE-471) vulnerability in Matter-Labs Zkvyper. Its CVSS base score is 5.3 (Medium).
Operationally, exploitation aligns with the MITRE ATT&CK technique Data Obfuscation (T1001); ranked at the 46th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2023-50471
Vulnerability Data
era-compiler-vyper is the EraVM Vyper compiler for zkSync Era, a layer 2 rollup that uses zero-knowledge proofs to scale Ethereum. Prior to era-compiler-vype version 1.3.10, a bug prevented the initialization of the first immutable variable for Vyper contracts meeting certain…
more
criteria. The problem arises when there is a String or Array with more 256-bit words allocated than initialized. It results in the second word’s index unset, that is effectively set to 0, so the first immutable value with the actual 0 index is overwritten in the ImmutableSimulator. Version 1.3.10 fixes this issue by setting all indexes in advance. The problem will go away, but it will get more expensive if the user allocates a lot of uninitialized space, e.g. `String[4096]`. Upgrading and redeploying affected contracts is the only way of working around the issue.
- CWE(s)
Related Threats
MITRE ATT&CK Enterprise Techniques
CVEs Like This One
Affected Assets
Mitigating Controls
Control response
—
—
- 1 hardening rule · 1 OS baseline
—
Likely Mitigating Controls AI
Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.
Checksums and integrity protection during transformation/packing detect unauthorized modification of data assumed to be immutable before it is transmitted.
Mitigating Controls (NIST CSF 2.0) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.
Least-privilege access controls directly block unauthorized writes to assumed-immutable data.
Integrity mechanisms for data-at-rest prevent modification of elements expected to remain immutable.
Protecting data-in-use integrity stops runtime tampering of values treated as constant.
Logical access controls reduce the attack surface for modifying internal assumed-immutable state.
Hardened configuration baselines limit opportunities to alter data presumed immutable.
Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.
Secure SDLC practices include design reviews that identify and protect data assumed to be immutable.
A.8.26 requires identifying and specifying requirements (including segregation of access, resilience against malicious attacks like injections, input validation, output controls, and cryptography per 8.24) that can stop exploitation of MAID in many cases, but leaves a bounded remainder where requirements are identified yet insufficiently enforced at runtime or for non-application contexts.
A.8.27 mandates security-by-design principles (least privilege, fail securely, distrust external input, defence-in-depth, zero-trust verification) plus design reviews that can catch and stop MAID-style mutation of assumed-immutable objects before they ship, but the clause is a process that depends on how rigorously those principles are applied and does not itself guarantee the protection mechanism is present at every relevant boundary.
Secure coding standards discourage mutable storage for values that must remain constant.
Security testing can detect unauthorized modification paths for assumed-immutable data.
Hardening callouts derived
Configuration rules from DISA STIG baselines that bear on weaknesses of the type cited by this CVE. Each rule is shown with the relationship its mapping actually records, against the CWE it was authored against. Derived via CVE→CWE over `controls_xwalks` (higher-evidence rows only; rows rated `none` are excluded).
Windows 10 (1 rule)
- V-220812 Credential Guard must be running on Windows 10 domain-joined systems. blocks CWE-471