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
| Vetor | AV: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 👾
Identificadores relacionados
Produtos afetados
Vyper