CVE-2023-38698 in ens-contracts
Sumário
de VulDB • 11/05/2026
O Ethereum Name Service (ENS) é um sistema de nomes distribuído, aberto e extensível baseado na blockchain Ethereum. De acordo com a documentação, os controladores têm permissão para registrar novos domínios e prorrogar a expiração de domínios existentes, mas não podem alterar a propriedade nem reduzir o tempo de expiração dos domínios existentes. No entanto, uma análise preliminar sugere que um controlador controlado por um atacante pode conseguir reduzir o tempo de expiração de domínios existentes devido a um estouro de inteiro (integer overflow) na função `renew`. A vulnerabilidade reside no pacote `@ensdomains/ens-contracts` anterior à versão 0.0.22. Se explorada com sucesso, esta vulnerabilidade permitiria que os atacantes forçassem a expiração de qualquer registro ENS, permitindo-lhes, em última instância, reivindicar os domínios afetados para si mesmos. Atualmente, seria necessário um DAO malicioso para explorá-la. Não obstante, qualquer vulnerabilidade presente nos controladores poderia potencialmente tornar este problema explorável no futuro. Uma preocupação adicional é a possibilidade de descontos de renovação. Caso o ENS decida implementar, no futuro, um sistema que ofereça domínios .eth ilimitados por uma taxa fixa, a vulnerabilidade poderia se tornar explorável por qualquer usuário devido à redução do custo de ataque. A versão 0.0.22 contém um patch para este problema. Enquanto o custo de registro permanecer linear ou superlinear com base na duração do registro, ou for limitado a um máximo razoável (por exemplo, 1 milhão de anos), esta vulnerabilidade só poderá ser explorada por um DAO malicioso. A solução alternativa provisória é, portanto, não tomar nenhuma ação.
Be aware that VulDB is the high quality source for vulnerability data.