PT-2024-20452 · Vyper · Vyper

Kuroi8

+1

·

Publicado

2024-02-01

·

Atualizado

2024-02-09

·

CVE-2024-24561

CVSS v3.1

9.8

Crítica

VetorAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Nome do software vulnerável e versões afetadas
Versões 0.3.10 e anteriores do Vyper
Descrição
A verificação de limites para fatias (slices) no Vyper não leva em conta a possibilidade de start + length causar estouro quando os valores não são literais. Essa falha pode ser usada para realizar acesso fora dos limites (OOB) a endereços de armazenamento, memória ou calldata. Também pode ser usado para corromper o slot length da respectiva matriz. Foi realizada uma pesquisa de contratos, e nenhum contrato vulnerável foi encontrado em produção.
Recomendações
Para as versões 0.3.10 e anteriores, atualize para uma versão que inclua a correção para este problema, conforme corrigido em https://github.com/vyperlang/vyper/pull/3818.
Como solução temporária, considere restringir o uso da função slice() com argumentos não literais para as variáveis start ou length até que um patch esteja disponível.
Evite usar a função slice() com valores inseridos pelo usuário para start ou length para minimizar o risco de exploração.

Exploit

Correção

Memory Corruption

Buffer Overflow

Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾

Enumeração de Fraquezas

Identificadores relacionados

CVE-2024-24561
GHSA-9X7F-GWXQ-6F2C
PYSEC-2024-149

Produtos afetados

Vyper