Tópicos em alta
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Bem-vindo de volta ao Destaque de Vulnerabilidade do Sherlock, onde destacamos uma vulnerabilidade impactante descoberta durante uma auditoria do Sherlock.
Esta semana, temos Deposit Spoofing.
Foi descoberto por @0xalpharush & @bernd_eth no @zetablockchain Cross-Chain Contest. 🧵

Aqui está o resumo de @bernd_eth sobre a vulnerabilidade:
1. Os observadores da ZetaChain monitoram transações em cadeias externas (por exemplo, Ethereum, Solana) e as adicionam a um rastreador de entrada centralizado para processá-las como depósitos e saques, assumindo o sucesso da transação.
2. Ao contrário da integração EVM, a implementação da Solana ignora as verificações de sucesso da transação, permitindo que um observador mal-intencionado adicione depósitos com falha, cunhando ZRC20 SOL sem lastro e drenando fundos em ponte.
3. Apesar de os observadores serem explicitamente permitidos pela ZetaChain, é fundamental garantir que nenhuma parte possa comprometer a cadeia ou desviar ativos.
Normalmente, os observadores não processam transações com falha, mas esse caminho de código não executa a mesma validação que sua contraparte EVM. Embora isso exija um papel "privilegiado", todo validador é um observador, e o consenso BFT deve ser tolerante bizantino, ou seja, tolerar <1/3 partes mal-intencionadas. Assim, um observador mal-intencionado não deve ser capaz de forjar um depósito e induzir validadores honestos a votar para cunhar ZRC20 Sol para transações com falha por meio do rastreador de entrada, que carece de validações para sua implementação Solana.
A causa raiz dessa vulnerabilidade:
A função ProcessInboundEvents não requer que uma transação tenha sido bem-sucedida, ao contrário do observador de entrada EVM, que faz isso corretamente aqui. Como a instrução é decodificada como se tivesse sido bem-sucedida, um observador mal-intencionado pode falsificar um depósito para todo o saldo ZRC20-SOL e, em seguida, retirar o SOL bloqueado no lado Solana da ponte, roubando todos os lamports na ponte. Esse ataque também pode ser usado para sacar tokens SPL ou realizar depósitos e chamadas arbitrárias. Por exemplo, remover a propriedade gravável do PDA do gateway na instrução de depósito resulta em uma transação com falha (consulte o erro de restrição de âncora no POC) e ela ainda pode ser processada depois de adicionada ao rastreador de entrada por meio de MsgAddInboundTracker.
Pré-condições internas:
Um observador mal-intencionado ou negligente adiciona um Solana tx com falha que contém instruções de gateway ao rastreador de entrada usando MsgAddInboundTracker, resultando em todos os validadores processando e votando para cunhar ZRC20 Sol no Zetachain.
O CCTX recebe votos suficientes e o ZRC20 Sol não apoiado no Zetachain é cunhado.
Pré-condições externas:
Qualquer parte envia uma transação com falha para o gateway com uma instrução de depósito (ou depósito e chamada).
O destinatário do ZRC20 Sol na Zetachain o retira e recebe lamports na Solana.
O caminho do ataque:
1) Qualquer parte envia uma transação com falha para o gateway com uma instrução de depósito (ou depósito e chamada).
2) Um observador mal-intencionado ou negligente adiciona um Solana tx com falha que contém instruções de Gateway ao rastreador de entrada usando MsgAddInboundTracker, resultando em todos os validadores processando e votando para cunhar ZRC20 Sol no Zetachain.
3) A tarefa ProcessInboundTrackers faz com que o CCTX falsificado receba votos suficientes e o ZRC20 Sol sem suporte no Zetachain é cunhado.
4) O destinatário do ZRC20 Sol na Zetachain o retira e recebe lamports na Solana.
Qual é o impacto?
Todos os lamports e tokens SPL depositados na ponte Solana podem ser roubados, uma vez que os depósitos podem ser falsificados por qualquer valor (eles são processados apesar do programa Gateway causar a reversão das transações).
A mitigação:
No processamento do rastreador de entrada do Solana Observer, verifique se a transação foi bem-sucedida antes de votar nela.

Estamos orgulhosos de ter ajudado a garantir @zetablockchain por meio dessa descoberta.
Quando absolutamente precisa ser seguro, Sherlock é a escolha certa.
13,26K
Melhores
Classificação
Favoritos