A Zilliqa suspendeu a negociação de ZIL nativo em 22 de julho. A investigação anterior identificou uma falha no nonce de assinaturas Schnorr que existia no aplicativo da carteira de hardware Ledger desde 2019: a vulnerabilidade fazia com que os primeiros 64 bits de cada nonce de assinatura ficassem travados como zero, reduzindo drasticamente a aleatoriedade. Isso permite que um atacante reconstrua a chave privada a partir de aproximadamente 5 ou mais assinaturas afetadas, usando apenas dados públicos na blockchain.
Descrição técnica da vulnerabilidade de nonce Schnorr da Ledger em 2019
De acordo com o comunicado oficial da Zilliqa, a causa técnica fundamental da vulnerabilidade é a seguinte: assinaturas Schnorr exigem o uso de um nonce único e imprevisível (nonce) a cada vez. Se a aleatoriedade do nonce for enfraquecida, o algoritmo matemático que protege a chave privada deixa de funcionar.
A investigação da Zilliqa constatou que, ao gerar assinaturas Schnorr, o aplicativo da Ledger extraía os valores incorretos: ele selecionava 32 bytes incorretos a partir de um valor de 40 bytes, fazendo com que os primeiros 64 bits de cada nonce fossem zerados. A Zilliqa descreveu esse resultado como “nonce temporário previsível e enfraquecido”.
O atacante precisa apenas ter acesso a aproximadamente 5 ou mais assinaturas afetadas desse tipo para reconstruir a chave privada do signatário a partir de dados públicos na blockchain. A vulnerabilidade já existia desde o lançamento do aplicativo da Ledger em 2019, e qualquer assinatura que atendesse aos critérios após 2019 poderia ser usada para reconstruir a chave privada.
Linha do tempo do evento de 19 a 22 de julho: KuCoin ajuda na demonstração, carteira fria é roubada
Conforme a divulgação oficial da Zilliqa, a linha do tempo do evento foi a seguinte: em 19 de julho, a Zilliqa detectou atividade on-chain compatível com exploração da falha; em 20 de julho, a carteira fria de uma parceira de exchange da Zilliqa foi roubada em tokens ZIL, e o ZIL caiu para a mínima histórica de US$ 0,002441; Coinone e KuCoin suspenderam depósitos e saques de ZIL; em 21 de julho, a Zilliqa encontrou a causa raiz; em 22 de julho, houve divulgação pública e suspensão das negociações de ZIL nativo.
A KuCoin teve um papel essencial neste caso: ajudou a identificar a falha no nonce e conseguiu reconstruir, a partir de assinaturas públicas, as chaves privadas afetadas como uma demonstração prática. Isso confirmou que a vulnerabilidade foi explorada, permitindo que a Zilliqa adotasse medidas de proteção e elaborasse uma estratégia de correção mais ampla.
Instruções aos usuários e andamento do reparo: versão corrigida do aplicativo da Ledger a ser publicada
De acordo com a recomendação oficial da Zilliqa, as instruções atuais para os usuários afetados são as seguintes:
· Aguarde instruções oficiais: todos os usuários que usam a Ledger para assinar ZIL nativo devem aguardar
· Não transfira qualquer quantia
· Não tente corrigir manualmente
· Usuários de transações EVM e SDK não são afetados: apenas usuários que utilizam ferramentas compatíveis com EVM e o SDK da Zilliqa não precisam tomar nenhuma ação
· Versão corrigida da Ledger: a Ledger está desenvolvendo uma versão corrigida do aplicativo da Ledger; o cronograma de lançamento será comunicado posteriormente
Até 22 de julho, conforme divulgado na reportagem, o ZIL estava em US$ 0,00244 de acordo com dados da CoinGecko. Houve queda de 3,5% nas últimas 24 horas, e o valor ficou bem abaixo do pico histórico de cerca de US$ 0,2563 em maio de 2021.
Perguntas frequentes
Por que a Zilliqa suspendeu as negociações de ZIL nativo em 22 de julho?
De acordo com o comunicado oficial da Zilliqa de 22 de julho, o motivo foi a descoberta de uma falha no nonce de assinaturas Schnorr existente no aplicativo da Ledger desde 2019: os primeiros 64 bits de cada nonce ficam travados em zero, o que permite que o atacante reconstrua a chave privada a partir de cerca de 5 ou mais assinaturas públicas on-chain afetadas.
Que tipo de usuário de ZIL é afetado?
Conforme a Zilliqa explicou, apenas usuários que assinam transações de ZIL nativo (não EVM) em dispositivos Ledger correm risco; usuários que usam ferramentas compatíveis com EVM e o SDK da Zilliqa não são afetados.
Quando a versão corrigida da Ledger será lançada?
Segundo a declaração oficial da Zilliqa, a Ledger está desenvolvendo uma versão corrigida do aplicativo da Ledger e o cronograma de lançamento será comunicado posteriormente; os usuários devem acompanhar os canais oficiais da Zilliqa e da Ledger para obter as informações mais recentes.