Há uma nova classe de pessoas a tentar arbitrar os contratos NFTStrategy. Como o autoproclamado guardião desses contratos, eu observo como cada participante opera.
A maioria implementa contratos não auditados para usar, tipicamente juntamente com delegações EIP7702.
1/🧵
2/ Não posso enfatizar o suficiente que antes de delegar toda a sua conta a um contrato que você criou com a ajuda do ChatGPT... na verdade, apenas não delegue toda a sua conta a um contrato que você criou com a ajuda do ChatGPT.
3/ Algumas pessoas estão a usar EOAs vazias para executar o arb. Isso é geralmente aceitável, uma vez que um exploit de contrato arrisca no máximo o que você tem na sua conta. No entanto, você ainda se coloca em risco se algum dia usar a conta para algo diferente no futuro.
4/ Por exemplo, se 0xB4 algum dia adquirir um Bored Ape sem antes revogar a aprovação que forcei na sua conta, o macaco é tão bom quanto meu.
Eu nunca o levaria, claro, isto foi apenas um aviso onchain.

5/ De forma semelhante ao utilizador do OS "deadcells":
Tenho o seu EPG #35 e Howlerz #3924. Delegue para um novo contrato com algum tipo de controlo de acesso, especialmente uma vez que a sua gorjeta de minerador codificada pode ser usada para drenar forçosamente o seu ETH.
Claro que retornarei os NFTs assim que estiver seguro.
7/ O problema é triplo:
Primeiro, não há verificação para garantir que o contrato da estratégia está a chamar a função.
Segundo, não há verificação para garantir que a chamada do marketplace está a comprar um NFT.
Terceiro, não há verificação para garantir que o NFT que está a ser transferido é mesmo um NFT.
8/ A exploração é simples: a chamada do marketplace torna-se literalmente o que você quiser (uma transferência de NFT, aprovação de WETH ou qualquer chamada de contrato arbitrária).
A transferência de NFT pode ser qualquer coisa, na verdade, desde que o contrato tenha uma função transferFrom que não falhe.
9/ Nos casos acima, eu desencadeei uma transferência de valor zero em USDC ao fornecer "0" como o ID do token esperado. "transferFrom(them, me, 0)" é tecnicamente uma transferência válida aos olhos do contrato USDC.


10/ Portanto, mais uma vez, um apelo a todos: façam a auditoria dos seus contratos, não importa quão simples vocês possam achar que são. Este espaço é perigoso, e vocês devem assumir que todos estão a tentar prejudicá-los (estão).
97,59 mil
372
O conteúdo apresentado nesta página é fornecido por terceiros. Salvo indicação em contrário, a OKX não é o autor dos artigos citados e não reivindica quaisquer direitos de autor nos materiais. O conteúdo é fornecido apenas para fins informativos e não representa a opinião da OKX. Não se destina a ser um endosso de qualquer tipo e não deve ser considerado conselho de investimento ou uma solicitação para comprar ou vender ativos digitais. Na medida em que a IA generativa é utilizada para fornecer resumos ou outras informações, esse mesmo conteúdo gerado por IA pode ser impreciso ou inconsistente. Leia o artigo associado para obter mais detalhes e informações. A OKX não é responsável pelo conteúdo apresentado nos sites de terceiros. As detenções de ativos digitais, incluindo criptomoedas estáveis e NFTs, envolvem um nível de risco elevado e podem sofrer grandes flutuações. Deve considerar cuidadosamente se o trading ou a detenção de ativos digitais é adequado para si à luz da sua condição financeira.