ink! vulnerable to incorrect decoding of storage value when using `DelegateCall`
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · Low · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub.
Summary
ink! is an embedded domain specific language to write smart contracts in Rust for blockchains built on the Substrate framework. Starting in version 4.0.0 and prior to version 4.2.1, the return value when using delegate call mechanics, either through `CallBuilder::delegate` or `ink_env::invoke_contract_delegate`, is decoded incorrectly. This bug was related to the mechanics around decoding a call's return buffer, which was changed as part of pull request 1450. Since this feature was only released in ink! 4.0.0, no previous versions are affected. Users who have an ink! 4.x series contract should upgrade to 4.2.1 to receive a patch.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| paritytech | ink | 4.0.0 to before 4.2.1 | 4.2.1 | Patch available | CNA |
| — | ink (crates.io) | 4.0.0 to before 4.2.1 | 4.2.1 | Patch available | GHSA-853p-5678-hv8f |
| — | ink_env (crates.io) | 4.0.0 to before 4.2.1 | 4.2.1 | Patch available | GHSA-853p-5678-hv8f |
- ink Vendorparitytech Affected 4.0.0 to before 4.2.1 Fixed in 4.2.1 Patch available CNA
- ink (crates.io) Vendor— Affected 4.0.0 to before 4.2.1 Fixed in 4.2.1 Patch available GHSA-853p-5678-hv8f
- ink_env (crates.io) Vendor— Affected 4.0.0 to before 4.2.1 Fixed in 4.2.1 Patch available GHSA-853p-5678-hv8f
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:parity:ink\!:*:*:*:*:*:rust:*:* | 4.0.0 to before 4.2.1 | Vulnerable | paritytech |
- cpe:2.3:a:parity:ink\!:*:*:*:*:*:rust:*:* Versions 4.0.0 to before 4.2.1 Vulnerable ·paritytech
Remediation
- Fix · CNA ink (paritytech) Fixed in 4.2.1
- Fix · GHSA-853p-5678-hv8f ink (crates.io) Fixed in 4.2.1 Advisory →
- Fix · GHSA-853p-5678-hv8f ink_env (crates.io) Fixed in 4.2.1 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2023-34449
- 2026-10-03 Alias added: GHSA-853p-5678-hv8f
References
Exploit 3
Patch 2
Sources
- CVE-2023-34449 · CVE Program
- CVE-2023-34449 · NVD
- FIRST EPSS
- GHSA-853p-5678-hv8f · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences