Skip to content
Latest alertgo-ethereum v1.17.8 security release fixes p2p DoS issues and a STUN-response node crash
0xCERT
All advisories
Medium0xCERT-2026-0186·

Vyper: Call stack corruption when passing complex type containing non-base type members as argument

Vyper: Call stack corruption when passing complex type containing non-base type members as argument. When we pass a multi-dimensional array (like [[1, 2], [3, 4]]) as an argument to internal/external functions we get incorrect output. This is due to a stack management issue, because it was assumed that the size of each subtype of an array/struct is 32, which is not always correct.

Vuln-watch · relayed from the GitHub Advisory Database; see Source & attribution below

Affected chainsEthereum

Summary

When we pass a multi-dimensional array (like [[1, 2], [3, 4]]) as an argument to internal/external functions we get incorrect output. This is due to a stack management issue, because it was assumed that the size of each subtype of an array/struct is 32, which is not always correct.

Affected

  • vyper (pip) < 0.2.6 — fixed in 0.2.6

Severity

Medium (CVSS 6.9), as rated by the upstream advisory.

Recommended actions

  • Upgrade vyper to 0.2.6 or later

Source & attribution

This 0xCERT advisory summarises GHSA-4v7v-gqf9-ww2g from the GitHub Advisory Database: https://github.com/advisories/GHSA-4v7v-gqf9-ww2g. Details may change; refer to the original source for the authoritative record.

OpenPGP-signed. The signed text of this advisory verifies against the 0xCERT key CCC7 D9EC 9415 723D.

Published 2026-10-06 · last updated 2026-10-08

curl -s https://www.0xcert.com/pgp.asc | gpg --import && curl -s https://www.0xcert.com/advisory/0xCERT-2026-0186/signed.txt | gpg --verify