Vyper: Namensverschattung bei importierten Konstanten und Default-Argumenten
Zusammenfassung
Vyper-Versionen 0.4.0b1 bis 0.5.0b1 lösen Namen von importierten Konstanten und weggelassenen Default-Argumenten im Gültigkeitsbereich der aufrufenden Funktion auf. Hat ein Parameter, eine lokale Variable oder eine Schleifenvariable denselben Namen, kann sie den vorgesehenen Wert stillschweigend ersetzen, auch durch Werte ausserhalb des Bereichs schmaler Typen wie uint8. Ein Angreifer, der solche Eingaben steuern kann, kann die Validierungs- oder Buchungslogik eines Smart Contracts verfälschen. Voraussetzung sind ein gleichnamiger Bezeichner und ein Ausdruck, der zur Compile-Zeit nicht aufgelöst werden kann.
Betroffen
- Vyper 0.4.0b1 bis 0.5.0b1 (CVE-Eintrag und VulnCheck)
- Das GitHub-Advisory nennt 0.4.0b1 und neuer bis master bei Commit 17e925db (nicht verifiziert)
Behoben in
Unbekannt. In den Quellen ist keine gepatchte Version bestätigt.
Umgehung
- Literale oder vollständig aufgelöste Werte statt nicht auflösbarer Konstanten verwenden
- Namen von Parametern, lokalen Variablen und Schleifenvariablen vermeiden, die Namen aus importierten Modulen entsprechen
- Eine qualifizierte Immutable explizit übergeben, um die Übernahme des Default-Werts zu verhindern
Die blosse Qualifizierung einer nicht auflösbaren Konstante genügt nicht.
Ausnutzung
- CISA SSVC: Ausnutzung keine, nicht automatisierbar, totale technische Auswirkung
- Nicht als aktiv ausgenutzt markiert
- VulDB meldet keinen verfügbaren Exploit
Unsere Empfehlung
- Prüfen, ob Ihre Organisation oder deren Kunden Vyper-basierte Smart Contracts entwickeln, prüfen oder betreiben; falls nicht, ist über die Beobachtung hinaus keine Massnahme nötig
- Namenskollisionen zwischen Contract-Variablen und importierten Konstanten oder Default-Argumenten vermeiden
- Sobald eine gepatchte Version erscheint, Contracts mit Modulimporten neu kompilieren und den Bytecode erneut prüfen sowie produktiv betriebene Contracts mit Validierungs- oder Buchungslogik überprüfen
Öffentliche Exploits
In PoC-in-GitHub, Metasploit und Exploit-DB ist für diese CVE nichts verzeichnet.
Quellen der Recherche
- GitHub Security Advisory GHSA-2489-32vh-8rrc github.com
- VulnCheck advisory www.vulncheck.com
- OSV CVE-2026-114663 osv.dev
- VulDB 425143 vuldb.com
- Vyper documentation: scoping and declarations docs.vyperlang.org
Recherchiert und auf Deutsch und Englisch aufbereitet von einer KI (Claude von Anthropic) auf Basis von NVD, CISA, EPSS und den genannten Quellen. Massgebend sind die Angaben des Herstellers. Recherche vom 01.11.2026 07:17.
Quellen
Der Tracker verbindet offizielle, frei nutzbare Datenquellen – laufend aktualisiert:
- NVD (NIST) – CVE, Bewertung (CVSS), betroffene Produkte
- CISA KEV – von der CISA bestätigt aktiv ausgenutzte Lücken
- CISA Vulnrichment – Einschätzung der CISA (SSVC) im offiziellen CVE-Eintrag
- FIRST EPSS – Wahrscheinlichkeit einer Ausnutzung
- Microsoft MSRC – Patch Tuesday: Lücken, Schweregrad, Updates
- PoC-in-GitHub – öffentliche Proof-of-Concept-Repositories
- Metasploit (Rapid7) – Module des Metasploit Framework
- Exploit-DB (OffSec) – Archiv öffentlicher Exploits (nur Verweise)
- Patch-Tage: offizielle Seiten der Hersteller (je Hersteller verlinkt) (Patch-Tage der Hersteller)
Dieses Angebot nutzt Daten der NVD-API, ist aber von der NVD weder unterstützt noch zertifiziert. EPSS-Daten © FIRST.org.
Betroffen? Wir helfen.
Wir prüfen, ob Ihre Systeme betroffen sind, spielen Updates ein und schliessen die Lücke – auf Wunsch auch laufend mit dem System Health Checker.
