Guía de seguridad DeFi: análisis de tipos de vulnerabilidades comunes y estrategias de prevención

robot
Generación de resúmenes en curso

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

Recientemente, un experto en seguridad compartió una lección sobre seguridad en Finanzas descentralizadas para los miembros de la comunidad. El experto revisó los importantes incidentes de seguridad que ha enfrentado la industria de Web3 en el último año, exploró las razones por las que ocurrieron estos eventos y cómo evitarlos, resumió las vulnerabilidades de seguridad comunes en los contratos inteligentes y las medidas preventivas, y también ofreció algunos consejos de seguridad tanto para los proyectos como para los usuarios comunes.

Los tipos comunes de vulnerabilidades en DeFi incluyen préstamos relámpago, manipulación de precios, problemas de permisos de funciones, llamadas externas arbitrarias, problemas con funciones de fallback, vulnerabilidades en la lógica de negocio, filtración de claves privadas y ataques de reentrada. 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éstamo relámpago

Los préstamos relámpago son una innovación en las Finanzas descentralizadas, pero también son comúnmente usados por hackers. Los atacantes piden prestados grandes cantidades de fondos a través de préstamos relámpago para manipular precios o atacar la lógica de negocio. Los desarrolladores deben considerar si la funcionalidad del contrato puede provocar anomalías debido a grandes cantidades de fondos, o si puede ser explotada en una sola transacción para interactuar con múltiples funciones y obtener beneficios indebidos.

Muchos proyectos de Finanzas descentralizadas parecen tener altos rendimientos, pero en realidad el nivel de los equipos detrás de los proyectos varía. Algunos proyectos pueden haber comprado su código, y aunque el código en sí no tenga vulnerabilidades, aún pueden existir problemas lógicos. Por ejemplo, algunos proyectos otorgan recompensas en momentos fijos basándose en la cantidad de tokens que poseen los tenedores, pero los atacantes pueden aprovechar los préstamos relámpago para comprar una gran cantidad de tokens y obtener la mayor parte de las recompensas cuando se distribuyen.

Manipulación de precios

El problema del control de precios está estrechamente relacionado con los préstamos relámpago, principalmente debido a que ciertos parámetros en el cálculo de precios pueden ser controlados por los usuarios. Existen dos tipos comunes de problemas:

  1. Se utilizan datos de terceros para calcular el precio, pero el uso es incorrecto o falta de verificación, lo que lleva a que el precio sea manipulado maliciosamente.
  2. Usar la cantidad de tokens de ciertas direcciones como variable de cálculo, donde el saldo de tokens de estas direcciones puede ser temporalmente incrementado o reducido.

Ataque de reingreso

El ataque de reentrada es uno de los principales peligros que se pueden enfrentar al llamar a contratos externos. Un atacante puede tomar el control del flujo y realizar cambios inesperados en los datos al llamar a una función. Por ejemplo, en la función de retiro, si el saldo del usuario se establece en 0 al final de la función, el atacante puede llamar a esa función repetidamente en el medio, extrayendo el saldo varias veces.

Para los ataques de reentrada, se deben tener en cuenta los siguientes puntos:

  1. No solo se previene el problema de reentrada de una sola función.
  2. Seguir el patrón Checks-Effects-Interactions al codificar
  3. Utilizar un modificador de protección contra reentradas que haya sido comprobado con el tiempo

Al abordar problemas de seguridad, se deben utilizar las mejores prácticas de seguridad que ya han sido suficientemente verificadas, en lugar de reinventar la rueda.

Sugerencias de seguridad para el equipo del proyecto

  1. Seguir las mejores prácticas de seguridad en el desarrollo de contratos
  2. Implementar la función de actualización y pausa del contrato
  3. Adopción de mecanismos 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 el mal uso interno, mejorando la eficiencia mientras se refuerza el control de riesgos.
  7. Introducir componentes de terceros con precaución, asegurando la seguridad.

¿Cómo pueden los usuarios determinar si un contrato inteligente es seguro?

  1. Confirmar si el contrato es de código abierto
  2. Verifique si el Owner utiliza un mecanismo de múltiples firmas descentralizado
  3. Ver las transacciones existentes del contrato
  4. Comprender si el contrato es un contrato de agente, si es actualizable y si tiene un bloqueo temporal.
  5. Confirma si el contrato ha sido auditado por varias instituciones y si los permisos del Owner son demasiado amplios.
  6. Presta atención al uso de los oráculos

A través de las medidas anteriores, tanto el equipo del proyecto como los usuarios pueden, en cierta medida, mejorar la seguridad de los proyectos de Finanzas descentralizadas y reducir el riesgo de ataques.

DEFI-6.23%
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
  • 8
  • Compartir
Comentar
0/400
SadMoneyMeowvip
· 07-18 23:00
Escuchando durante tantos años para nada, al final, si hay que tomar a la gente por tonta, se toma.
Ver originalesResponder0
DefiPlaybookvip
· 07-17 00:45
Estadísticas muestran que las vulnerabilidades de los Flash Loans representan el 43.7% de las pérdidas en Finanzas descentralizadas.
Ver originalesResponder0
LiquiditySurfervip
· 07-16 23:58
Proteja su billetera, todos
Ver originalesResponder0
FundingMartyrvip
· 07-15 23:30
Solo se aprende de las pérdidas después de haberlas sufrido.
Ver originalesResponder0
alpha_leakervip
· 07-15 23:17
Viendo cosas extrañas, ya soy un viejo hacker.
Ver originalesResponder0
GateUser-00be86fcvip
· 07-15 23:10
¿Cómo se juega con tantos errores?
Ver originalesResponder0
LongTermDreamervip
· 07-15 23:03
Otro día de diario de alimentar ovejas que es igual que hace tres años.
Ver originalesResponder0
ImpermanentLossFanvip
· 07-15 23:02
Es mejor que los novatos se mantengan alejados.
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)