Análisis de las vulnerabilidades de seguridad comunes en Finanzas descentralizadas: prevención de Flash Loans, manipulación de precios y ataques de reentrada.

robot
Generación de resúmenes en curso

Finanzas descentralizadas vulnerabilidades de seguridad comunes y medidas preventivas

Recientemente, un experto en seguridad compartió una clase de seguridad de Finanzas descentralizadas para los miembros de la comunidad. Revisó los importantes incidentes de seguridad que ha sufrido la industria de Web3 en el último año, exploró las razones por las cuales ocurrieron estos incidentes y cómo evitarlos, resumió las vulnerabilidades de seguridad comunes en los contratos inteligentes y las medidas de prevención, y dio algunos consejos de seguridad tanto para los proyectos como para los usuarios comunes.

Los tipos comunes de vulnerabilidades en Finanzas descentralizadas generalmente incluyen préstamos relámpago, manipulación de precios, problemas de permisos de funciones, llamadas externas arbitrarias, problemas con funciones fallback, vulnerabilidades de lógica empresarial, filtración de claves privadas, reentradas, entre otros. A continuación, se destacan los préstamos relámpago, la manipulación de precios y los ataques de reentrada.

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

Préstamo relámpago

El préstamo relámpago en sí es una innovación de Finanzas descentralizadas, pero cuando es utilizado por hackers puede causar grandes pérdidas:

  • Los atacantes toman prestados grandes cantidades de dinero a través de préstamos relámpago, manipulan precios, atacan la lógica del negocio, etc.
  • Los desarrolladores deben considerar si las funciones del contrato pueden verse afectadas por grandes sumas de dinero, o si pueden ser utilizadas para obtener beneficios indebidos.
  • Algunos proyectos no consideraron el impacto de los préstamos relámpago al diseñar funciones, lo que llevó al robo de fondos.

En los últimos dos años han surgido muchos problemas relacionados con los préstamos relámpago. Algunos proyectos parecen tener altos rendimientos, pero en realidad presentan fallos lógicos, por ejemplo:

  • Se otorgan recompensas en función de la cantidad de posiciones en un tiempo fijo, siendo manipuladas para obtener grandes recompensas mediante préstamos relámpago.
  • Los proyectos que calculan precios a través de Token pueden verse afectados por préstamos relámpago.

El equipo del proyecto debería estar alerta ante estos problemas.

Manipulación de precios

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

  1. Al calcular el precio se utilizan datos de terceros, pero el uso no es correcto o falta verificación.
  2. Utilizar la cantidad de Token de ciertas direcciones como variable de cálculo, y estas cantidades pueden ser manipuladas temporalmente.

Ataque de reentrada

La llamada a contratos externos puede dar lugar a la toma de control del flujo, provocando cambios inesperados en los datos. Un ejemplo típico de ataque de reentrada:

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

función retirarSaldo() pública { 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 se establece en 0 solo al final de la función, se puede extraer el saldo varias veces al llamar repetidamente.

Para resolver el problema de reentrada, se debe tener en cuenta:

  1. No solo prevenir la reentrada de una única función
  2. Seguir el patrón de Checks-Effects-Interactions
  3. Utilizar un modificador de protección contra reentradas verificado

Se recomienda utilizar las mejores prácticas de seguridad maduras para evitar reinventar la rueda.

Sugerencias de seguridad

Sugerencias para el equipo del proyecto:

  1. Seguir las mejores prácticas de seguridad en el desarrollo de contratos
  2. Implementar la capacidad de actualizar y pausar contratos
  3. Utilizar un 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 terceros con precaución, por defecto tanto el upstream como el downstream no son seguros.

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

  1. Verificar si el contrato es de código abierto
  2. Verificar si el Owner utiliza un multisig descentralizado
  3. Ver la situación actual de las transacciones del contrato
  4. Verifica si el contrato es actualizable y si tiene un bloqueo temporal.
  5. Verificar si se acepta la auditoría de múltiples instituciones y si los permisos del propietario son excesivos.
  6. Presta atención a la fiabilidad de los oráculos

En resumen, en el ámbito de las Finanzas descentralizadas, tanto los desarrolladores de proyectos como los usuarios comunes deben aumentar la conciencia de seguridad, tomar las medidas de seguridad necesarias para reducir riesgos y proteger la seguridad de los activos.

DEFI-6.17%
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
  • 7
  • Republicar
  • Compartir
Comentar
0/400
TooScaredToSellvip
· 08-11 10:27
No hables de tantas reglas, lo importante es entrar directamente al mercado de monedas.
Ver originalesResponder0
MysteryBoxBustervip
· 08-11 08:22
¿Otra vez intentando entender los Flash Loans...?
Ver originalesResponder0
GhostWalletSleuthvip
· 08-09 18:44
Rug Pull es la verdadera tecnología avanzada.
Ver originalesResponder0
CodeAuditQueenvip
· 08-09 18:43
Esto no es más que una vulnerabilidad de inyección de la era web1 que ha cambiado de piel.
Ver originalesResponder0
MoonlightGamervip
· 08-09 18:39
¿Quién dice que DeFi no tiene nuevas formas de jugar? ¿No es esto lo que llegó?
Ver originalesResponder0
HashBanditvip
· 08-09 18:36
bruh perdió 50 eth en un exploit de préstamo relámpago en 2021... todavía me da pesadillas, para ser honesto
Ver originalesResponder0
OneBlockAtATimevip
· 08-09 18:16
Otra vez han tomado a la gente por tonta.
Ver originalesResponder0
  • Anclado
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)