As três principais ameaças à segurança do DeFi: Empréstimos Flash, manipulação de preços e ataques de reentrada

Finanças Descentralizadas comuns vulnerabilidades de segurança e medidas de prevenção

Recentemente, um especialista em segurança compartilhou uma aula sobre segurança em Finanças Descentralizadas, explorando os recentes eventos de segurança significativos enfrentados pela indústria Web3, analisando as causas desses eventos e como evitá-los, além de resumir as vulnerabilidades de segurança comuns em contratos inteligentes e as medidas preventivas. Este artigo se concentrará em três tipos comuns de vulnerabilidades: empréstimos relâmpago, manipulação de preços e ataques de reentrada.

Cobo Finanças Descentralizadas 安全课(下):Finanças Descentralizadas 常⻅安全漏洞及预防

Empréstimo Relâmpago

O empréstimo relâmpago é uma inovação nas Finanças Descentralizadas, mas frequentemente é utilizado por hackers para realizar ataques:

  • O atacante empresta uma grande quantidade de fundos através de empréstimos relâmpago, manipulando preços ou atacando a lógica de negócios.
  • Os desenvolvedores devem considerar se a funcionalidade do contrato será anormal devido a grandes quantias de dinheiro, ou se será usada para obter recompensas excessivas em uma única transação.
  • Perguntas Frequentes: calcular recompensas com a quantidade de Token ou participar do cálculo com a quantidade de Token no par de negociação DEX

Nos últimos dois anos, surgiram muitos problemas. Alguns projetos de Finanças Descentralizadas parecem ter altos rendimentos, mas na verdade o nível de desenvolvimento é desigual. Por exemplo, há projetos que distribuem recompensas em momentos fixos com base nas participações, sendo explorados por atacantes que utilizam empréstimos relâmpago para comprar grandes quantidades de tokens e obter a maior parte das recompensas.

Manipulação de Preços

A manipulação de preços está intimamente relacionada com os empréstimos relâmpago, havendo principalmente dois problemas:

  1. Utilizar dados de terceiros ao calcular preços, mas usar de forma inadequada ou faltar verificação.
  2. Usar o saldo de Token de certos endereços como variável de cálculo, e esses saldos podem ser temporariamente aumentados ou diminuídos.

Ataque de Reentrada

O principal risco de chamar contratos externos é a possibilidade de assumir o controle do fluxo, resultando em modificações inesperadas nos dados.

Um exemplo típico de ataque de reentrada: solidity mapping (address => uint) private userBalances;

function withdrawBalance() public { uint amountToWithdraw = userBalances[msg.sender]; (bool success, ) = msg.sender.call.value(amountToWithdraw)(""); require(success); userBalances[msg.sender] = 0; }

Devido ao saldo do utilizador ser zerado apenas no final da função, as chamadas repetidas podem retirar várias vezes.

Para resolver o problema de reentrância, é necessário ter em atenção:

  1. Não apenas防单一函数重入
  2. Seguir o padrão Checks-Effects-Interactions
  3. Usar um modifier de proteção contra reentrâncias verificado

Sugere-se usar práticas de segurança estabelecidas, evitando reinventar a roda.

Sugestões de segurança para a equipe do projeto

  1. Seguir as melhores práticas de segurança para desenvolver contratos
  2. Implementar a funcionalidade de atualização e suspensão de contratos
  3. Adotar um bloqueio de tempo
  4. Estabelecer um sistema de segurança completo
  5. Aumentar a consciência de segurança de todos os colaboradores
  6. Prevenir atos maliciosos internos, aumentar a eficiência ao mesmo tempo que se reforça o controlo de risco
  7. Introduza terceiros com cautela, assumindo que não são seguros e faça a validação adequadamente.

Como os usuários podem avaliar a segurança dos contratos inteligentes

  1. O contrato é open source?
  2. O proprietário adotou multi-assinatura descentralizada?
  3. Verifique a situação das transações existentes no contrato
  4. O contrato é atualizável? Existe um bloqueio de tempo?
  5. Aceita auditoria de várias instituições? O acesso do proprietário é excessivo?
  6. Preste atenção à fiabilidade do oráculo

Em suma, a segurança é crucial no campo das Finanças Descentralizadas. As equipas de projeto devem construir um sistema de segurança abrangente, e os usuários também devem estar atentos e participar com cautela.

DEFI-3.59%
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
  • Recompensa
  • 8
  • Compartilhar
Comentário
0/400
DeFiVeteranvip
· 07-24 01:36
Carteira já não está, não é surpresa.
Ver originalResponder0
DisillusiionOraclevip
· 07-23 19:20
Ok, o defi continua a causar. Os hackers estão a rapar a lã dos touros todos os dias.
Ver originalResponder0
GateUser-bd883c58vip
· 07-21 12:00
Ainda é melhor deixar uma porta dos fundos!
Ver originalResponder0
LayoffMinervip
· 07-21 02:24
Ha continua a mesma coisa, lavagem de mineração com estilo.
Ver originalResponder0
LiquidationWatchervip
· 07-21 02:19
Com tantas vulnerabilidades, para que ainda se joga DeFi?
Ver originalResponder0
NestedFoxvip
· 07-21 02:18
Outra vez a ser enganado por idiotas.
Ver originalResponder0
Layer2Observervip
· 07-21 02:08
O código é a evidência mais sólida.
Ver originalResponder0
SerumSurfervip
· 07-21 02:07
Empréstimos Flash ainda nem os cães brincam.
Ver originalResponder0
  • Marcar
Faça trade de criptomoedas em qualquer lugar e a qualquer hora
qrCode
Escaneie o código para baixar o app da Gate
Comunidade
Português (Brasil)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)