CVE-2024-24563
Last modified
CVE-2024-24563 is a critical-severity vulnerability rated 9.8/10 on the CVSS scale. Vyper is a Pythonic Smart Contract Language for the Ethereum Virtual Machine. Arrays can be keyed by a signed integer, while they are defined for unsigned integers only. EPSS estimates a 1.54% chance of exploitation in the next 30 days.
Description
Vyper is a Pythonic Smart Contract Language for the Ethereum Virtual Machine. Arrays can be keyed by a signed integer, while they are defined for unsigned integers only. The typechecker doesn't throw when spotting the usage of an `int` as an index for an array. The typechecker allows the usage of signed integers to be used as indexes to arrays. The vulnerability is present in different forms in all versions, including `0.3.10`. For ints, the 2's complement representation is used. Because the array was declared very large, the bounds checking will pass Negative values will simply be represented as very large numbers. As of time of publication, a fixed version does not exist. There are three potential vulnerability classes: unpredictable behavior, accessing inaccessible elements and denial of service. Class 1: If it is possible to index an array with a negative integer without reverting, this is most likely not anticipated by the developer and such accesses can cause unpredictable behavior for the contract. Class 2: If a contract has an invariant in the form `assert index < x`, the developer will suppose that no elements on indexes `y | y >= x` are accessible. However, by using negative indexes, this can be bypassed. Class 3: If the index is dependent on the state of the contract, this poses a risk of denial of service. If the state of the contract can be manipulated in such way that the index will be forced to be negative, the array access can always revert (because most likely the array won't be declared extremely large). However, all these the scenarios are highly unlikely. Most likely behavior is a revert on the bounds check.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness Enumeration
Affected Software
| Vendor | Product | Versions |
|---|---|---|
| Vyperlang | Vyper | <= 0.3.10 |
References
- https://github.com/vyperlang/vyper/security/advisories/GHSA-52xq-j7v9-v4v2Exploit, Vendor Advisory
- https://github.com/vyperlang/vyper/security/advisories/GHSA-52xq-j7v9-v4v2Exploit, Vendor Advisory
Timeline
- Published
- Last Modified
- Status
- Modified
Frequently Asked Questions
What is CVE-2024-24563?
How severe is CVE-2024-24563?
How do I fix CVE-2024-24563?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2024
- CVE-2024-24558TanStack Query supplies asynchronous state management, serve…6.1
- CVE-2024-24559Vyper is a Pythonic Smart Contract Language for the EVM. The…5.3
- CVE-2024-2456The Ecwid Ecommerce Shopping Cart plugin for WordPress is vu…6.4
- CVE-2024-24560Vyper is a Pythonic Smart Contract Language for the Ethereum…5.3
- CVE-2024-24561Vyper is a pythonic Smart Contract Language for the ethereum…9.8
- CVE-2024-24562vantage6-UI is the official user interface for the vantage6 …5.3
- CVE-2024-24564Vyper is a pythonic Smart Contract Language for the ethereum…5.3
- CVE-2024-24565CrateDB is a distributed SQL database that makes it simple t…6.5
- CVE-2024-24566Lobe Chat is a chatbot framework that supports speech synthe…5.3
- CVE-2024-24567Vyper is a pythonic Smart Contract Language for the ethereum…5.3
- CVE-2024-24568Suricata is a network Intrusion Detection System, Intrusion …5.3
- CVE-2024-24569The Pixee Java Code Security Toolkit is a set of security AP…4.8
Are you affected by CVE-2024-24563?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
