---
id: CVE-2021-48020
title: Vyper before 0.3.0 Memory Corruption via Internal Function Calls in Arrays
summary: >-
  Vyper from 0.1.0b4 before 0.3.0 contains a memory corruption vulnerability
  caused by an incorrect stack tip pointer when internal function calls are
  performed inside arrays. Contracts placing internal calls in nested array
  elements, exte…
severity: medium
cvss: 6.5
cvssVector: 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:L'
cvssSource: cna
cwe:
  - CWE-787
vendor: vyperlang
product: vyper
affected:
  - vyper >= 0.1.0b4 < 0.3.0
published: '2026-10-21'
updated: '2026-10-21'
sourceUpdated: '2026-10-21T00:36:19.625Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2021-48020'
references:
  - url: 'https://github.com/vyperlang/vyper/security/advisories/GHSA-22wc-c9wj-6q2v'
    label: GitHub Security Advisory (GHSA-22wc-c9wj-6q2v)
  - url: >-
      https://www.vulncheck.com/advisories/vyper-before-0.3.0-memory-corruption-via-internal-function-calls-in-arrays
    label: >-
      VulnCheck Advisory: Vyper before 0.3.0 Memory Corruption via Internal
      Function Calls in Arrays
tags:
  - cve.org
ingestedAt: '2026-10-21T01:37:08.048Z'
---

## Overview

Vyper from 0.1.0b4 before 0.3.0 contains a memory corruption vulnerability caused by an incorrect stack tip pointer when internal function calls are performed inside arrays. Contracts placing internal calls in nested array elements, external call arguments, struct literals, or raw_log topics can have memory corrupted, producing incorrect contract behavior.

## Affected

- `vyper >= 0.1.0b4 < 0.3.0`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
