VULNERABILIDAD
CVE-2026-114116 Manipulación de literales en Vyper vía separadores de línea
Vyper 0.1.0b1 hasta antes de 0.1.0b17 y 0.4.1 hasta 0.5.0b1 construye su tabla de líneas de código con str.splitlines(), que trata caracteres como form feed y U+2028 como saltos de línea que el parser de Python ignora, por lo que los literales numéricos se clasifican y validan a partir de texto desplazado. Un atacante que aporte código puede ocultar estos caracteres en comentarios, cadenas o indentación para cambiar silenciosamente constantes de dirección, enteros o decimales.
Alerta de Nureq Monitor
Detectada 20 OCT · 22:52
CVSS 3.1
5.3MEDIACVSS 4.0
6.0 MEDIA
PROBABILIDAD DE EXPLOTACIÓN (EPSS)
0,2 % PERCENTIL 7
EXPLOTACIÓN ACTIVA
No confirmada
EXPLOIT PÚBLICO
No conocido
Qué es CVE-2026-114116
Vyper 0.1.0b1 hasta antes de 0.1.0b17 y 0.4.1 hasta 0.5.0b1 construye su tabla de líneas de código con str.splitlines(), que trata caracteres como form feed y U+2028 como saltos de línea que el parser de Python ignora, por lo que los literales numéricos se clasifican y validan a partir de texto desplazado. Un atacante que aporte código puede ocultar estos caracteres en comentarios, cadenas o indentación para cambiar silenciosamente constantes de dirección, enteros o decimales.
Productos y versiones afectadas
vyperlang vyper
vyperlang vyper
Qué hacer
- Verificá si usás vyper y en qué versión: el rango afectado figura arriba.
- Actualizá a la versión corregida que indique el fabricante en su aviso (ver referencias) o aplicá la mitigación que publique.
- Revisá registros y accesos de los sistemas expuestos para descartar que se haya aprovechado antes de corregir.
Calculadora CVSS
CVSS 3.1 · 5.3 MEDIA
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N
- VECTOR DE ATAQUE (AV)
- Red
- COMPLEJIDAD DEL ATAQUE (AC)
- Alta
- PRIVILEGIOS REQUERIDOS (PR)
- Ninguno
- INTERACCIÓN DEL USUARIO (UI)
- Requerida
- ALCANCE (S)
- Sin cambio
- CONFIDENCIALIDAD (C)
- Ninguna
- INTEGRIDAD (I)
- Alta
- DISPONIBILIDAD (A)
- Ninguna
CVSS 4.0 · 6.0 MEDIA
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
- VECTOR DE ATAQUE (AV)
- Red
- COMPLEJIDAD DEL ATAQUE (AC)
- Baja
- REQUISITOS DEL ATAQUE (AT)
- Presentes
- PRIVILEGIOS REQUERIDOS (PR)
- Ninguno
- INTERACCIÓN DEL USUARIO (UI)
- Pasiva
- CONFIDENCIALIDAD (SISTEMA VULNERABLE) (VC)
- Ninguna
- INTEGRIDAD (SISTEMA VULNERABLE) (VI)
- Alta
- DISPONIBILIDAD (SISTEMA VULNERABLE) (VA)
- Ninguna
- CONFIDENCIALIDAD (SISTEMAS POSTERIORES) (SC)
- Ninguna
- INTEGRIDAD (SISTEMAS POSTERIORES) (SI)
- Ninguna
- DISPONIBILIDAD (SISTEMAS POSTERIORES) (SA)
- Ninguna
Abrir la calculadora completa →
Descripción original
Vyper 0.1.0b1 before 0.1.0b17 and 0.4.1 through 0.5.0b1 builds its source-line table with str.splitlines(), which treats characters like form feed and U+2028 as line breaks the Python parser ignores, so numeric literals are classified and validated from shifted source text. An attacker contributing source code can hide these characters in comments, strings or indentation to silently change address, integer or decimal constants.
Referencias
- github.com/vyperlang/vyper/security/advisories/GHSA-wvx7-39qj-2g9vVENDOR-ADVISORY
- www.vulncheck.com/advisories/vyper-through-0.5-0b1-literal-value-manipulation-via-line-se…THIRD-PARTY-ADVISORY
Historial de la alerta
- VULNERABILIDAD Nueva vulnerabilidad detectada.
CÓMO SE HIZOResumen traducido automáticamente al español a partir de la descripción original. Ante dudas, la descripción original y las referencias del fabricante son la fuente de verdad. Cómo funciona.