Back to Blog

Vulnerabilidade de Transferência Pública no Contrato Inteligente Tether Gold

Code Auditing
27 de maio de 2023
3 min read

Nossa ferramenta de análise interna encontrou um bug no contrato Tether Gold em 5 de abril, que permite a um atacante transferir os tokens XAUt (Tether Gold) de qualquer pessoa para um endereço predefinido. A equipe recebeu nosso relatório e disse que havia identificado esse problema internamente. Hoje descobrimos que o problema foi corrigido e queremos compartilhar os detalhes aqui. Além disso, ilustraremos como usar o Phalcon Fork para desenvolver e depurar o PoC desta vulnerabilidade.

0x0. A vulnerabilidade

Na função transferFrom do contrato, qualquer pessoa pode invocar essa função para transferir os tokens de outros usuários para um recebedor confiável definido pelo proprietário do token. Embora essa vulnerabilidade não possa ser explorada diretamente para transferir os tokens para a conta do atacante, o atacante ainda pode transferir os tokens do pool para manipular o preço do token no pool (por exemplo, pool WETH-XAUt) e obter lucro.

A correção desta vulnerabilidade é direta, como mostrado a seguir.

0x1. Como explorar a vulnerabilidade

Para escrever e depurar o PoC, podemos usar o Phalcon Fork para esse propósito. Primeiro, podemos criar um Fork antes que a vulnerabilidade seja corrigida. Utilizei o bloco de altura 17038763 ao criar o Fork por meio da API Fork.

Passo I: preparar Ether suficiente

O primeiro passo é obter Ether suficiente para a taxa de gas do explorador. Se não houver Ether na conta, a transação que envia Ether do vitalik.eth será emitida.

Passo II: transferir a propriedade do contrato Tether Gold

O proprietário do contrato Tether Gold é uma carteira multisig (0xC6CDE7C39eB2f0F0095F41570af89eFC2C1Ea828). Para transferir a propriedade ao explorador, precisamos enviar uma transação multisig e então confirmar a transação.

Passo III: Adicionar uma conta privilegiada ao contrato Tether Gold

Adicionamos uma nova conta 0x189e7947a9d9210eec3a41dcf5f536bb1d7726f5 como conta privilegiada. Em seguida, invocamos a função transferFrom para transferir o token XAUt de uma vítima para a conta privilegiada.

0x2. PoC

Por favor, encontre o PoC neste github:

Sign up for the latest updates
Perdas de ~5,57 milhões USD: exploração de falhas no X100 Freezer e no NEM | Boletim semanal da BlockSec
Security Insights

Perdas de ~5,57 milhões USD: exploração de falhas no X100 Freezer e no NEM | Boletim semanal da BlockSec

Este relatório semanal aborda dois incidentes de segurança na Ethereum e na BNB Chain no período de 19/10/2026–25/10/2026. Ele examina uma tomada de controle da governança do X100 Freezer financiada por um empréstimo-relâmpago e uma falha na liquidação de impostos que afetou um pool de liquidez de um token NEM na BNB Chain. As perdas estimadas no escopo do relatório totalizam aproximadamente 5,57 milhões USD: cerca de 4,75 milhões USD da transação representativa do X100 e cerca de 820 mil USD do incidente no pool do NEM. O total exclui as extrações subsequentes do X100 relatadas separadamente.

Perdas de ~3,87 milhões USD: ataques à Autheo Network e à UNCX | Resumo semanal da BlockSec
Security Insights

Perdas de ~3,87 milhões USD: ataques à Autheo Network e à UNCX | Resumo semanal da BlockSec

Este relatório semanal aborda 3 incidentes de segurança no período de 12/10/2026–18/10/2026, com perdas totais estimadas em aproximadamente 3,87 milhões USD. A Autheo Network sofreu um comprometimento de chave privada com perdas de cerca de 1,76 milhões USD, a Qubic Wallet perdeu cerca de 1,30 milhões USD devido à geração de seeds fracas, e os contratos Smart Token Vesting V2 da UNCX Network sofreram um erro contábil de cerca de 807 mil USD nas redes Ethereum, BNB Chain, Base e Robinhood Chain. A análise em destaque da UNCX explica como um cálculo incorreto do total de cotas misturou parcelas de vesting criadas com diferentes proporções entre tokens e cotas, permitindo saques acima do devido de pools compartilhados.

~US$ 542 mil perdidos: ataque ao MakerDaoBot | Boletim semanal da BlockSec
Security Insights

~US$ 542 mil perdidos: ataque ao MakerDaoBot | Boletim semanal da BlockSec

O relatório cobre 1 incidente no Ethereum (05–11/10/2026), com perda estimada de US$ 542 mil. Um adaptador malicioso obteve acesso aos saldos MakerDAO via função desprotegida do MakerDaoBot, liquidou 4 leilões ETH-A e converteu 200 ETH-A em WETH, depois enviados como ETH ao atacante.

Best Security Auditor for Web3

Validate design, code, and business logic before launch. Aligned with the highest industry security standards.

BlockSec Audit