Back to Blog

[Nem Todos os Tokens São Bons] Análise Rápida do Ataque Paraluni

Code Auditing
13 de março de 2022
3 min read

O projeto Paraluni foi atacado na manhã do dia 13 de março (horário UTC +8). O atacante explorou duas vulnerabilidades para atacar o protocolo. A primeira vulnerabilidade é a falta de verificação dos tokens passados, e a segunda é o tradicional reentrancy. O atacante realizou algumas transações de ataque. A seguir, usaremos uma delas 0xf2bba649019ce40a67f0fb74e5e800257d359d9094b6ba6faea14ffa4d3446b1 para ilustrar todo o processo de ataque.

Etapa I: adicionar liquidity ao paraRouter

O atacante invocou addLiquidity no pool BTCB-WBNB (índice = 9) e o pool irá cunhar o token lp para UBT (um token criado pelo atacante). Após esta operação, o token UBT detém o token lp do pool. Note que o BTCB e o WBNB são emprestados via flash loan.

Etapa II: invocar depositByAddLiquidity do MasterChef O atacante invocou depositByAddLiquidity fornecendo o _pid como 9 e usando os tokens UGT e UBT como parâmetros. No entanto, a função não verifica se os tokens de reserva do pool são iguais aos tokens passados (UGT e UBT).

Em seguida, a função invoca o depositByAddLiquidityInternal, que por sua vez invoca addLiquidity do paraRouter. Esta função irá invocar a função transferFrom dos tokens UGT e UBT. No entanto, esses dois tokens são controlados pelo atacante. Na função transferFrom do UBT, o atacante invocou a função deposit do contrato MasterChef para depositar o token LP obtido na primeira etapa no contrato MasterChef.

Infelizmente, devido à mudança de saldo na função deposit, o newBalance após o addLiquidity é muito maior do que o oldBalance. Dessa forma, o atacante obteve créditos duplicados no contrato MasterChef.

Etapa III: obter lucro

O atacante finalmente invocou UBT.withdrawAsset e MasterChef.withdraw para resgatar o lptoken e obter BTCB e WBNB. Como a quantidade de liquidez é maior do que o atacante deveria ter, o atacante obterá lucros.

Lições

Além do problema de reentrancy, a falta de verificação dos tokens passados é uma das causas raiz. Já vimos outros casos com problema semelhante, como no caso Visor e no caso Coin98.

Sobre a BlockSec

A BlockSec é uma empresa pioneira em segurança blockchain fundada em 2021 por um grupo de especialistas em segurança de renome mundial. A empresa está comprometida em aprimorar a segurança e a usabilidade para o emergente mundo Web3, a fim de facilitar sua adoção em massa. Para isso, a BlockSec oferece serviços de auditoria de segurança de contratos inteligentes e chains EVM, a plataforma Phalcon para desenvolvimento de segurança e bloqueio proativo de ameaças, a plataforma MetaSleuth para rastreamento e investigação de fundos, e a extensão MetaSuites para construtores web3 que navegam com eficiência no mundo cripto.

Até o momento, a empresa atendeu mais de 300 clientes de prestígio, como MetaMask, Uniswap Foundation, Compound, Forta e PancakeSwap, e recebeu dezenas de milhões de dólares americanos em duas rodadas de financiamento de investidores proeminentes, incluindo Matrix Partners, Vitalbridge Capital e Fenbushi Capital.

Site oficial: https://blocksec.com/

Conta oficial no Twitter: https://twitter.com/BlockSecTeam

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