PT-2025-7631 · Vyper · Vyper
Charles-Cooper
·
Publicado
2025-02-21
·
Atualizado
2025-03-29
·
CVE-2025-27105
CVSS v3.1
9.1
Crítica
| Vetor | AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H |
Nome do Software Vulnerável e Versões Afetadas
Versões do Vyper anteriores à 0.4.1
Descrição
O problema surge da maneira como o Vyper lida com instruções AugAssign, especificamente quando o alvo é um acesso a um DynArray e o lado direito (rhs) modifica o array. Nesses casos, o alvo em cache é avaliado primeiro e a verificação de limites não é reavaliada durante a etapa de escrita da instrução. Isso pode levar a um acesso fora dos limites. Por exemplo, o código
a[1] += a.pop() é avaliado como se a[1] fosse acessado antes de a.pop() modificar o array, contornando a verificação de limites que ocorreria se a[1] fosse acessado após a.pop().Recomendações
Para versões anteriores à 0.4.1, atualize para a versão 0.4.1 ou posterior para resolver este problema.
No momento, não há informações sobre outras soluções alternativas para esta vulnerabilidade.
Exploit
Correção
Memory Corruption
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Vyper