Seguridad en DeFi: Guía de prevención de Flash Loans, manipulación de precios y ataques de reentrada

robot
Generación de resúmenes en curso

Finanzas descentralizadas comunes vulnerabilidades de seguridad y medidas de prevención

Recientemente, un experto en seguridad compartió un curso de seguridad DeFi con los miembros de la comunidad. Repasó los importantes eventos de seguridad que ha enfrentado la industria Web3 en el último año, exploró las razones detrás de estos eventos y cómo evitarlos, resumió las vulnerabilidades de seguridad comunes en los contratos inteligentes y las medidas de prevención, y también dio algunos consejos de seguridad para los desarrolladores de proyectos y los usuarios comunes.

Los tipos comunes de vulnerabilidades en las Finanzas descentralizadas incluyen préstamos relámpago, manipulación de precios, problemas de permisos de función, llamadas externas arbitrarias, problemas con la función fallback, vulnerabilidades de lógica de negocio, filtración de claves privadas y ataques de reentrada, entre otros. Este artículo se centrará en los préstamos relámpago, la manipulación de precios y los ataques de reentrada.

Cobo Finanzas descentralizadas seguridad curso (parte 2): Vulnerabilidades de seguridad comunes en Finanzas descentralizadas y prevención

Préstamos relámpago

El préstamo relámpago es una innovación en las Finanzas descentralizadas, pero también es comúnmente utilizado por hackers:

  • Los atacantes toman prestados grandes sumas de dinero a través de préstamos relámpago para manipular los precios o atacar la lógica del negocio.
  • Los desarrolladores deben considerar si las funciones del contrato pueden provocar anomalías debido a grandes cantidades de fondos, o si pueden ser explotadas para obtener recompensas indebidas.
  • Algunos proyectos no consideraron el impacto de los préstamos relámpago en su diseño, lo que llevó al robo de fondos.

En los últimos dos años, los préstamos relámpago han generado varios problemas. Algunos proyectos de finanzas descentralizadas de alto rendimiento presentan una calidad de desarrollo desigual y numerosas vulnerabilidades. Por ejemplo, hay proyectos que otorgan recompensas en momentos fijos según la posesión, que son aprovechados por atacantes para comprar grandes cantidades de tokens utilizando préstamos relámpago y obtener la mayor parte de las recompensas. Además, algunos proyectos que calculan precios a través de tokens pueden verse afectados por préstamos relámpago. Los desarrolladores de los proyectos deben mantenerse alerta ante estos problemas.

Manipulación de precios

El problema del control de precios está estrechamente relacionado con los préstamos relámpago, y hay principalmente dos tipos:

  1. Utilizar datos de terceros para calcular precios, pero un uso inadecuado o la falta de verificación pueden llevar a la manipulación maliciosa de los precios.

  2. Utilizar el saldo de Token de ciertas direcciones como variable de cálculo, y estos saldos pueden ser aumentados o disminuidos temporalmente.

Ataque de reentrada

El principal riesgo de llamar a contratos externos es que pueden tomar el control del flujo, realizando modificaciones inesperadas en los datos. Por ejemplo:

solidez mapeo (dirección => uint) saldoPrivado del usuario;

función retirarSaldo() público { uint amountToWithdraw = userBalances[msg.sender]; (bool success, ) = msg.sender.call.value(amountToWithdraw)(""); require(success); userBalances[msg.sender] = 0; }

Debido a que el saldo del usuario solo se restablece al final de la función, las llamadas repetidas aún pueden extraer el saldo con éxito.

Existen diversas formas de ataque de reentrada, que pueden involucrar múltiples funciones o contratos. Para resolver el problema de reentrada, es necesario prestar atención a:

  1. No solo previene la reentrada de una sola función
  2. Seguir el patrón de Checks-Effects-Interactions
  3. Utilizar un modificador de reentrada verificado

Es mejor utilizar las mejores prácticas de seguridad ya existentes, en lugar de reinventar la rueda. Las soluciones maduras son más seguras y confiables que las nuevas soluciones desarrolladas en casa.

Sugerencias de seguridad para el equipo del proyecto

  1. Seguir las mejores prácticas de seguridad en el desarrollo de contratos.
  2. Implementar funciones de actualización y pausa de contratos
  3. Adoptar el mecanismo de bloqueo temporal
  4. Aumentar la inversión en seguridad y establecer un sistema de seguridad completo.
  5. Aumentar la conciencia de seguridad de todos los empleados
  6. Prevenir la maldad interna, mientras se mejora la eficiencia y se refuerza el control de riesgos.
  7. Introducir terceros con precaución y realizar verificaciones de seguridad adecuadas.

Cómo los usuarios pueden evaluar la seguridad de los contratos inteligentes

  1. Confirmar si el contrato es de código abierto
  2. Verifica si el Owner utiliza un multi-firma descentralizado
  3. Ver el estado actual de las transacciones del contrato
  4. Determinar si el contrato es actualizable y si tiene un bloqueo temporal.
  5. Confirmar si el contrato ha sido auditado por varias instituciones, si los permisos del propietario son demasiado amplios.
  6. Prestar atención al uso de los oráculos

En resumen, en el ecosistema de Finanzas descentralizadas, tanto los proyectos como los usuarios deben mantener una alta conciencia de seguridad, tomar las medidas preventivas necesarias y trabajar juntos para preservar el desarrollo saludable del ecosistema.

DEFI6.2%
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • 3
  • Compartir
Comentar
0/400
ImpermanentPhobiavip
· hace12h
Hacker y Flash Loans, ¡qué emocionante!
Ver originalesResponder0
SnapshotBotvip
· hace12h
el equipo detrás del proyecto aún está tomando a la gente por tonta todos los días
Ver originalesResponder0
OffchainWinnervip
· hace12h
¡He aprendido una nueva postura, jeje!
Ver originalesResponder0
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)