Lodestar · Lodestar · CVE-2022-29219
**Nome do software vulnerável e versões afetadas**
Versões do Lodestar anteriores à 0.36.0
**Descrição**
O problema está relacionado à representação de valores `uint64` como `number`s nativos do JavaScript no Lodestar, uma implementação em TypeScript da especificação de consenso do Ethereum. Quando valores `uint64` maiores que 2^53 são incluídos na cadeia, o Lodestar pode considerar `AttesterSlashing` ou `ProposerSlashing` válidos como inválidos devido a erros de arredondamento em valores `number` grandes, causando uma divisão no consenso. Da mesma forma, o Lodestar pode considerar `ProposerSlashing` inválidos como válidos, incluindo-os em blocos propostos que serão considerados inválidos pela rede.
**Recomendações**
Como solução temporária, considere usar `BigInt` para representar valores `Slot` e `Epoch` em objetos `AttesterSlashing` e `ProposerSlashing`, utilizando `BigInt` com cuidado apenas onde for necessário para o consenso.
Para versões anteriores à 0.36.0, atualize para a versão 0.36.0 para resolver o problema.