Análise de Vulnerabilidades|Análise do incidente de roubo de 12 milhões de dólares do protocolo de ativos ancorados Cork Protocol e rastreamento de fundos
Recentemente, o Cork Protocol na cadeia de Éter foi atacado, e os atacantes lucraram 12 milhões de dólares através de uma vulnerabilidade lógica no contrato do projeto (parâmetros críticos não verificados). Este artigo fornece uma análise detalhada do incidente de ataque e do rastreamento de fundos.
Escrito por: Beosin
Recentemente, o Cork Protocol na cadeia de Éter sofreu um ataque, onde o atacante lucrou 12 milhões de dólares através de uma vulnerabilidade lógica no contrato do projeto (parâmetros críticos não verificados). A equipe de segurança da Beosin realizou uma análise detalhada do incidente e rastreamento dos fundos, e compartilhou os resultados a seguir:
Passos detalhados do ataque
Antes de analisar os ataques, precisamos entender a lógica de negócios especial do Cork Protocol. Ele introduz um mecanismo de swap de default de crédito semelhante ao das finanças tradicionais (chamado de Depeg Swap), tokenizando o risco de desanexação de ativos ancorados (como stETH), permitindo que os usuários se protejam ou negociem o risco de desanexação dos ativos ancorados. Os tipos de tokens incluem:
Ativo de resgate (Redemption Asset, RA): Ativo base (como Éter)
Ativo lastreado (Pegged Asset, PA): ativo lastreado em um ativo subjacente (como stETH)
Depeg Swaps (DS): Semelhante a opções de venda, para proteger contra a queda de preços
Token de cobertura (Cover Token, CT) — semelhante a uma opção de compra, sem desanexação, pode gerar lucros; se ocorrer desanexação, será necessário assumir perdas.
Quando os usuários depositam RA, o Cork Protocol emite tokens DS e CT, que os usuários podem negociar ou resgatar para apostar ou proteger-se contra riscos.
Este ataque envolve um mercado de tokens real e um mercado falso construído pelos atacantes:
(1) O atacante primeiro criou um mercado falso, cujo RA era o token weETH8DS-2 e o PA era wstETH. Pode-se notar que o weETH8DS-2 originalmente funcionava como DS no mercado real, mas pode atuar como RA no mercado falso, o que deveria ser proibido por meio de validação de tokens entre mercados.
(2) O atacante comprou weETH8CT-2 no mercado real.
(3) O atacante explorou a falta de controle de acesso adequado na função beforeSwap da função CorkHook, enviando dados de Hook personalizados para a função CorkCall, forçando-a a dividir seu weETH8DS-2 em fake_DS e fake_CT. Isso foi possível porque o weETH8DS-2 é o RA de um mercado falso, e a função acredita que fake_DS e fake_CT pertencem ao atacante.
(4) fake_DS e fake_CT tokens foram transferidos para o atacante, de acordo com as regras do Cork Protocol: os tokens DS e CT podem ser trocados por tokens RA. O atacante trocou os tokens fake_DS e fake_CT recebidos por weETH8DS-2 no mercado virtual.
(5) Atualmente, o atacante possui o weETH8CT-2 adquirido na etapa 2 e o weETH8DS-2 reconfigurado, que pode ser trocado no mercado real por RA (ou seja, wstETH).
Assim, o atacante pode transferir a liquidez do DS do mercado real para outro mercado (um mercado falso construído) como RA para resgatar, extraindo assim a liquidez do RA no mercado real. O atacante roubou 3761 wstETH neste evento e trocou por ETH no valor de cerca de 12 milhões de dólares.
Análise de Vulnerabilidades
Através do fluxo de ataque acima, podemos ver que as razões para a exploração da vulnerabilidade de todo o evento são as seguintes três pontos:
Falta de validação: não foi verificado se o DS usado como RA já está a ser utilizado em outros mercados.
CorkCall dados de retorno fornecidos por usuários confiáveis não verificados.
Este protocolo permite a criação de mercados sem permissão e sem restrições.
Embora o Cork Protocol tenha passado por várias auditorias de segurança e competições de auditoria, essa vulnerabilidade a nível lógico foi ignorada. Se houvesse uma verificação mais rigorosa da reutilização de tokens, uma validação estrita dos dados de callback e um controle mais rigoroso sobre a criação do mercado, esse ataque poderia ser evitado.
Rastreio de fundos roubados
A Beosin Trace rastreou os fundos roubados e descobriu que o endereço do atacante 0xea6f30e360192bae715599e15e2f765b49e4da98 lucrou cerca de 3761 wstETH, que foram posteriormente trocados por ETH através de protocolos DeFi como Uniswap e 1inch, totalizando 4530.6.
Atualmente, os fundos roubados ainda não foram transferidos. A Beosin Trace adicionou os endereços relacionados aos hackers à lista de endereços negros e continuará a rastrear.
Segundo a análise da Beosin Trace, todos os fundos roubados ainda estão armazenados no endereço do atacante.
Resumo
No centro do ataque estava uma vulnerabilidade de lógica de negócios central no Protocolo Cork, que levou o invasor a roubar uma grande quantidade de wstETH através de tokens falsos. Protocolos DeFi complexos, como o Cork Protocol, exigem testes detalhados e revisão da lógica de negócios do contrato por meio de auditorias de segurança multifacetadas e multicamadas. Anteriormente, a equipe de segurança da Beosin concluiu auditorias de segurança de vários protocolos DeFi (por exemplo, Surf Protocol, SyncSwap, LeverFi, Owlto Finance), concentrando-se em encontrar falhas de lógica de contrato e casos de borda que podem ser ignorados, garantindo que o protocolo seja totalmente testado.
Ver original
O conteúdo serve apenas de referência e não constitui uma solicitação ou oferta. Não é prestado qualquer aconselhamento em matéria de investimento, fiscal ou jurídica. Consulte a Declaração de exoneração de responsabilidade para obter mais informações sobre os riscos.
Análise de Vulnerabilidades|Análise do incidente de roubo de 12 milhões de dólares do protocolo de ativos ancorados Cork Protocol e rastreamento de fundos
Escrito por: Beosin
Recentemente, o Cork Protocol na cadeia de Éter sofreu um ataque, onde o atacante lucrou 12 milhões de dólares através de uma vulnerabilidade lógica no contrato do projeto (parâmetros críticos não verificados). A equipe de segurança da Beosin realizou uma análise detalhada do incidente e rastreamento dos fundos, e compartilhou os resultados a seguir:
Passos detalhados do ataque
Antes de analisar os ataques, precisamos entender a lógica de negócios especial do Cork Protocol. Ele introduz um mecanismo de swap de default de crédito semelhante ao das finanças tradicionais (chamado de Depeg Swap), tokenizando o risco de desanexação de ativos ancorados (como stETH), permitindo que os usuários se protejam ou negociem o risco de desanexação dos ativos ancorados. Os tipos de tokens incluem:
Ativo de resgate (Redemption Asset, RA): Ativo base (como Éter)
Ativo lastreado (Pegged Asset, PA): ativo lastreado em um ativo subjacente (como stETH)
Depeg Swaps (DS): Semelhante a opções de venda, para proteger contra a queda de preços
Token de cobertura (Cover Token, CT) — semelhante a uma opção de compra, sem desanexação, pode gerar lucros; se ocorrer desanexação, será necessário assumir perdas.
Quando os usuários depositam RA, o Cork Protocol emite tokens DS e CT, que os usuários podem negociar ou resgatar para apostar ou proteger-se contra riscos.
Este ataque envolve um mercado de tokens real e um mercado falso construído pelos atacantes:
(1) O atacante primeiro criou um mercado falso, cujo RA era o token weETH8DS-2 e o PA era wstETH. Pode-se notar que o weETH8DS-2 originalmente funcionava como DS no mercado real, mas pode atuar como RA no mercado falso, o que deveria ser proibido por meio de validação de tokens entre mercados.
(2) O atacante comprou weETH8CT-2 no mercado real.
(3) O atacante explorou a falta de controle de acesso adequado na função beforeSwap da função CorkHook, enviando dados de Hook personalizados para a função CorkCall, forçando-a a dividir seu weETH8DS-2 em fake_DS e fake_CT. Isso foi possível porque o weETH8DS-2 é o RA de um mercado falso, e a função acredita que fake_DS e fake_CT pertencem ao atacante.
(4) fake_DS e fake_CT tokens foram transferidos para o atacante, de acordo com as regras do Cork Protocol: os tokens DS e CT podem ser trocados por tokens RA. O atacante trocou os tokens fake_DS e fake_CT recebidos por weETH8DS-2 no mercado virtual.
(5) Atualmente, o atacante possui o weETH8CT-2 adquirido na etapa 2 e o weETH8DS-2 reconfigurado, que pode ser trocado no mercado real por RA (ou seja, wstETH).
Assim, o atacante pode transferir a liquidez do DS do mercado real para outro mercado (um mercado falso construído) como RA para resgatar, extraindo assim a liquidez do RA no mercado real. O atacante roubou 3761 wstETH neste evento e trocou por ETH no valor de cerca de 12 milhões de dólares.
Análise de Vulnerabilidades
Através do fluxo de ataque acima, podemos ver que as razões para a exploração da vulnerabilidade de todo o evento são as seguintes três pontos:
Falta de validação: não foi verificado se o DS usado como RA já está a ser utilizado em outros mercados.
CorkCall dados de retorno fornecidos por usuários confiáveis não verificados.
Este protocolo permite a criação de mercados sem permissão e sem restrições.
Embora o Cork Protocol tenha passado por várias auditorias de segurança e competições de auditoria, essa vulnerabilidade a nível lógico foi ignorada. Se houvesse uma verificação mais rigorosa da reutilização de tokens, uma validação estrita dos dados de callback e um controle mais rigoroso sobre a criação do mercado, esse ataque poderia ser evitado.
Rastreio de fundos roubados
A Beosin Trace rastreou os fundos roubados e descobriu que o endereço do atacante 0xea6f30e360192bae715599e15e2f765b49e4da98 lucrou cerca de 3761 wstETH, que foram posteriormente trocados por ETH através de protocolos DeFi como Uniswap e 1inch, totalizando 4530.6.
Atualmente, os fundos roubados ainda não foram transferidos. A Beosin Trace adicionou os endereços relacionados aos hackers à lista de endereços negros e continuará a rastrear.
Segundo a análise da Beosin Trace, todos os fundos roubados ainda estão armazenados no endereço do atacante.
Resumo
No centro do ataque estava uma vulnerabilidade de lógica de negócios central no Protocolo Cork, que levou o invasor a roubar uma grande quantidade de wstETH através de tokens falsos. Protocolos DeFi complexos, como o Cork Protocol, exigem testes detalhados e revisão da lógica de negócios do contrato por meio de auditorias de segurança multifacetadas e multicamadas. Anteriormente, a equipe de segurança da Beosin concluiu auditorias de segurança de vários protocolos DeFi (por exemplo, Surf Protocol, SyncSwap, LeverFi, Owlto Finance), concentrando-se em encontrar falhas de lógica de contrato e casos de borda que podem ser ignorados, garantindo que o protocolo seja totalmente testado.