Topics DeFi

O que é um ataque de sanduíche em cripto e como se proteger contra ele

Intermediário
DeFi
30 Th09 2024

As exchanges descentralizadas (DEXs) oferecem aos traders de cripto inúmeras oportunidades e vantagens distintas. Ao mesmo tempo, essas plataformas muitas vezes atraem agentes maliciosos com a intenção de causar danos e obter lucros às custas de colegas desavisados. Embora puxadas de tapetes e ataques de empréstimo flash sejam frequentemente mencionados ao discutir as ameaças únicas em plataformas de trading descentralizadas, outro tipo de ataque malicioso, um ataque tipo sanduíche, recebe muito menos atenção.

Na forma mais padrão de ataque com sanduíches, um trader com motivos sinistros identifica uma transação de swap pendente em um blockchain e envia duas ordens, uma antes e uma após a transação alvo, para manipular o preço do ativo. O objetivo do culpado é comprar o ativo antes do aumento de preço esperado e, em seguida, vendê-lo rapidamente após a inflação de preço. A vítima do ataque acaba comprando o ativo pelo preço inflado e, em seguida, observa impotentemente à medida que seu preço cai.

Os ataques de Sandwich, embora menos divulgados do que algumas outras vulnerabilidades de segurança no mundo das finanças descentralizadas (DeFi), ainda podem ser devastadores para traders que forem vítimas dessas explorações. Um trader que não está ciente de ser alvo de tal ataque pode perder rapidamente fundos significativos e ser apagado, especialmente se enviar ordens ativamente durante a fase de ataque.

A boa notícia é que há várias medidas que os traders podem implementar para minimizar a probabilidade de se tornarem “preenchidos” para o sanduíche de café da manhã do invasor. Neste artigo, estamos analisando mais de perto os ataques de sanduíches, suas duas principais variedades e as principais maneiras de evitá-los.

Principais pontos:

  • Um ataque de sanduíche é uma exploração comum em plataformas DEX, em que um invasor envia duas (e em uma variação, três) transações em torno da ordem de swap de uma vítima, com a intenção de manipular os preços dos ativos e lucrar às custas da vítima.

  • As principais maneiras de se proteger contra ataques de sanduíches incluem controlar suas taxas de slippage aceitáveis, usar pools de swap maiores, pagar taxas de gás mais altas e usar plataformas de câmbio centralizadas (CEX).

EN_2409-T35020_Learn_Read_to_Earn_728x90.png

O que é um ataque de sanduíche em cripto?

Um ataque de sanduíche é um tipo de transação maliciosa em plataformas DEX, em que o invasor identifica uma operação de swap pendente e envia uma ordem antes e outra logo após a transação alvo, a fim de manipular o preço do ativo. O trader mal-intencionado "sanduíça" a transação pendente ao executar simultaneamente a front-running e a back-running, daí o nome. Seu objetivo é comprar o ativo escolhido pelo trader desavisado a um preço mais baixo e, em seguida, vendê-lo imediatamente após a transação em execução.

Como resultado do ataque do sanduíche, a vítima compra o ativo a um preço inflacionado em comparação com o preço de execução esperado. Após a transação de back-run, o preço do ativo cai e a vítima acaba com um ativo avaliado abaixo do que pagou por ele. Dependendo do volume e atividade de trading da vítima, as perdas de um ataque com sanduíche, ou de uma série deles, podem ser devastadoras. Esses ataques são muito comuns em DEXs, embora recebam menos cobertura do que outras formas de exploração, como ataques de empréstimos flash.

Os ataques de Sandwich podem ser considerados uma forma de trading de arbitragem . No entanto, ao contrário de outras formas de arbitragem, esses ataques prejudicam diretamente os traders que são vítimas deles. O invasor de sanduíche manipula intencionalmente o preço, antes e depois da transação da vítima, para lucrar às custas da vítima. Assim, esses ataques não são nada mais do que manipulação maliciosa de mercado e são amplamente condenados na comunidade DeFi.

Tecnicamente falando, os ataques de sanduíches são possíveis em plataformas de trading descentralizadas devido à natureza pública dos blockchains. Cada blockchain pública mantém suas transações pendentes na área de mempool, uma sala de espera para transações antes que elas sejam finalmente escritas no livro de registros permanente do blockchain. Os invasores estão procurando ativamente no mempool transações que forneçam bom potencial para essas explorações.

Como funciona um ataque de sanduíche?

Vamos considerar como um ataque de sanduíche típico pode ocorrer na prática. 

Digamos que um trader decida enviar uma ordem de swap em uma DEX baseada em formador de mercado automatizado (AMM), trocando USDT por ETH . Um invasor de sanduíches identifica a transação da vítima na lista de pendências e envia rapidamente uma ordem de compra para ETH, tentando executar sua própria transação de front-running primeiro. Devido à natureza da tecnologia blockchain, há maneiras de o invasor conseguir isso (por exemplo, pagando uma taxa de gás mais alta para aumentar a prioridade de sua própria transação). Ao ter sua própria transação executada primeiro, o invasor aproveita o preço mais baixo do ETH. Como resultado da ordem de compra, o preço do ETH no pool de trading aumenta.

Portanto, quando a ordem da vítima para trocar USDT por ETH passa, o preço de execução real difere do que esperava, e o ETH agora custa mais, então a vítima recebe o ativo a um preço inflacionado. O culpado também agenda outra transação, a ser executada rapidamente após a transação da vítima. Nessa transação de back-running, o culpado vende ETH pelo preço inflado e embolsa o lucro. Como resultado da transação de venda, o preço do ETH cai e a vítima agora possui um ativo com valor inferior ao que pagou por ele.

Tipos de ataques de sanduíches

Taker de liquidez vs. Taker

Há dois tipos principais de ataques com sanduíches. O cenário mais comum é o taker vs. taker. Normalmente, os invasores de sanduíches usam pools de liquidez em AMMs para realizar seus ataques. No cenário taker vs. taker, as operações de swap são executadas contra o pool e a configuração é conforme descrito acima, com o taker mal-intencionado tentando manipular os preços dos ativos, colocando uma transação de front-running e uma transação de back-running em torno da ordem da vítima.

Provedor de liquidez vs. Taker

Os invasores também usam uma modificação do ataque de sanduíche padrão atuando como provedores de liquidez. Embora os takers de liquidez ataquem usando duas transações, os invasores executam três ordens no modo provedor de liquidez vs. taker.

Na primeira ordem, o culpado remove a liquidez do pool de swap como um método de execução inicial, aumentando as taxas de slippage para a ordem da vítima. Na segunda transação, eles executam o método de back-running adicionando a liquidez de volta para restaurar o saldo inicial do pool. Por fim, eles trocam o ativo alvo — em nosso exemplo acima, ETH pelo ativo original e USDT para restaurar o saldo do ativo no pool da maneira como era antes do ataque.

Ao remover a liquidez antes do trade do taker, o provedor de liquidez evita pagar uma taxa de comissão (que normalmente é compartilhada entre todos os provedores de liquidez). Isso significa que o taker precisa pagar mais, devido ao aumento do slippage, enquanto o provedor de liquidez mantém sua parte da comissão.

Skinny_Banner-1600x400.webp

Proteção contra ataques de sanduíches

Algumas plataformas de DEX (como 1" ) estão tomando medidas de proteção contra ataques de sanduíches ao introduzir transações que não são visíveis no mempool. Algumas plataformas também protegem os usuários contra robôs MEV (valor máximo extraível), um tipo de robô frequentemente usado em ataques de sanduíches. No entanto, qualquer trader DeFi também deve tomar suas próprias medidas de precaução para minimizar o risco de ser vítima desses ataques. Abaixo, listamos algumas maneiras proativas que você pode usar para evitar que seus fundos se tornem um sanduíche suculento, preenchendo um ataque malicioso.

Defina um slippage baixo

As taxas de slippage são a diferença entre o custo esperado e o custo real de uma transação de swap em protocolos descentralizados. Muitas plataformas de DEX permitem que você defina taxas de slippage aceitáveis para seus trades de swap. Use essa opção ativamente, pois o aspecto slippage de preço aparece de forma proeminente em ataques de sanduíche (especialmente no provedor de liquidez vs. variação do taker).

Use pools de liquidez maiores

Os pools de liquidez maiores são menos afetados por ataques de sanduíches, graças ao fato de terem fundos amplos flutuando. Quanto menor o pool que você usar, mais pronunciadas serão as oscilações de preço causadas por ataques de sanduíches, e variações de preço mais extremas significarão uma coisa muito desagradável: perdas maiores com esses ataques. 

Observe, no entanto, que os invasores de sanduíches são mais ativos em grandes DEXs, como Uniswap (UNI) e SushiSwap (SUSHI). Portanto, é menos sobre o tamanho da plataforma e mais sobre os volumes de liquidez em um pool específico. Os invasores de sanduíches adoram pools de baixa liquidez em grandes DEXs. Portanto, não seja enganado pela grande presença ou reputação de uma plataforma. Preste muita atenção aos níveis reais de liquidez normalmente disponíveis no pool em que você está interessado.

Os agregadores de DEX podem ser úteis, pois distribuem um único trade em vários pools de liquidez, o que pode mitigar o impacto dos ataques de sanduíches, reduzindo a probabilidade de que um único pool seja direcionado. Além disso, como os agregadores de DEX visam executar trades mais eficientes, é mais provável que você experimente slippage mais baixo ao usá-los.

Pagar taxas de gás mais altas

Uma das principais maneiras pelas quais os invasores de sanduíches realizam seu trade sinistro é pagando taxas de gás mais altas em um blockchain. Ao fazer isso, eles muitas vezes garantem (embora nunca garantam) que sua transação de front-running seja executada antes do trade da vítima. Você pode reduzir sua vulnerabilidade a esses ataques pagando uma taxa de gás mais alta para que sua transação seja processada pelos mineradores antes que a ordem de front-running maliciosa seja executada.

Usar exchanges centralizadas

As exchanges centralizadas (CEXs), incluindo a Bybit, são imunes a ataques de sanduíches, pois esse tipo de ataque é exclusivo para DEXs. Embora as medidas acima possam minimizar (embora nunca eliminem) o risco de tais ataques, conduzir seus trades em uma CEX é a única maneira confiável de evitar completamente a possibilidade de se tornar presa de invasores de sanduíches.

Considerações finais

Os ataques de Sandwich exploram a natureza inerentemente assíncrona da ordem de transações no blockchain. Embora não sejam tão proeminentes quanto os ataques de empréstimos flash, eles são onipresentes em DEXs e custam caro aos traders. Felizmente, há várias maneiras de minimizar a ameaça potencial desses ataques. Ao controlar rigorosamente suas taxas de slippage, usar pools de liquidez maiores, pagar taxas de gás mais altas para elevar a prioridade de suas ordens e usar plataformas CEX, você pode reduzir significativamente o risco de ser vítima de ataques de sanduíches.

#LearnWithBybit