Finanzas descentralizadas seguridad: tipos de vulnerabilidades comunes y guía de prevención

robot
Generación de resúmenes en curso

Vulnerabilidades de seguridad comunes en Finanzas descentralizadas y medidas de prevención

Recientemente, un experto en seguridad compartió sus ideas sobre la seguridad en Finanzas descentralizadas, revisando los importantes incidentes de seguridad que ha enfrentado la industria Web3 en el último año, explorando las causas de estos eventos y cómo evitarlos, resumiendo las vulnerabilidades comunes de los contratos inteligentes y las medidas de prevención, y ofreciendo algunas recomendaciones de seguridad para los proyectos y los usuarios.

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

Préstamo relámpago

El préstamo relámpago es una innovación en las Finanzas descentralizadas, pero también ha sido utilizado por hackers para realizar ataques. Los atacantes piden prestadas grandes cantidades de fondos a través de préstamos relámpago, manipulando precios o atacando la lógica del negocio. Los desarrolladores deben considerar si la funcionalidad del contrato se verá afectada por grandes sumas de dinero o si será explotada para obtener recompensas indebidas.

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; incluso si el código en sí no tiene vulnerabilidades, aún pueden existir problemas lógicos. Por ejemplo, algunos proyectos distribuyen recompensas en momentos fijos según las tenencias, pero son explotados por atacantes que utilizan préstamos relámpago para comprar grandes cantidades de tokens y obtener la mayor parte de las recompensas.

Manipulación de precios

Los problemas de manipulación de precios están estrechamente relacionados con los préstamos relámpago, principalmente porque los parámetros utilizados para calcular el precio pueden ser controlados por los usuarios. Los tipos de problemas más comunes son dos:

  1. Al calcular el precio se utilizan datos de terceros, pero el método de uso no es correcto o falta de verificación, lo que lleva a que el precio sea manipulado maliciosamente.

  2. Utilizar la cantidad de tokens de ciertas direcciones como variable de cálculo, y el saldo de tokens de estas direcciones puede ser aumentado o reducido temporalmente.

Ataque de reentrada

Uno de los principales riesgos de llamar a contratos externos es que pueden tomar el control del flujo de ejecución y realizar cambios inesperados en los datos. Por ejemplo:

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 no se establece en cero hasta el final de la función, las llamadas repetidas aún tendrán éxito, y se podrá retirar el saldo repetidamente.

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

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

Las técnicas de ataque de reentrada son diversas y pueden involucrar múltiples funciones o contratos, por lo que su solución es más compleja. Es mejor utilizar prácticas recomendadas que ya han sido completamente verificadas, en lugar de reinventar la rueda.

Sugerencias de seguridad del proyecto

  1. Seguir las mejores prácticas de seguridad para el desarrollo de contratos
  2. Implementar funciones de actualización y pausa de contratos
  3. Adopción del mecanismo de bloqueo temporal
  4. Aumentar la inversión en seguridad, establecer un sistema de seguridad completo.
  5. Aumentar la conciencia de seguridad de todos los empleados
  6. Prevenir actos maliciosos internos, fortaleciendo el control de riesgos mientras se mejora la eficiencia.
  7. Introducir componentes de terceros con precaución, realizar la verificación de seguridad.

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

  1. Confirma si el contrato es de código abierto
  2. Verifica si el propietario utiliza múltiples firmas y si estas son descentralizadas.
  3. Ver el estado actual de las transacciones del contrato
  4. Determinar si el contrato es un contrato delegado, si es actualizable y si tiene un bloqueo temporal.
  5. Confirme si el contrato ha sido auditado por varias instituciones y si los permisos del propietario son excesivos.
  6. Presta atención al uso de los oráculos

En resumen, en el ámbito de las Finanzas descentralizadas, los problemas de seguridad son especialmente importantes. Los equipos de proyectos deben dar prioridad a las inversiones en seguridad, y los usuarios también deben estar alerta y participar con precaución. Solo con un esfuerzo conjunto se podrá construir un ecosistema de Finanzas descentralizadas más seguro y confiable.

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

Ver originales
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Recompensa
  • 4
  • Compartir
Comentar
0/400
SchrodingerProfitvip
· hace10h
¿Ahora todavía hay tontos que no han sido tomados por tontos?
Ver originalesResponder0
ContractSurrendervip
· hace10h
¡Otra gran guía para tomar a la gente por tonta!
Ver originalesResponder0
SnapshotDayLaborervip
· hace10h
Es importante prevenir seriamente. Menos mal que corro rápido.
Ver originalesResponder0
CoconutWaterBoyvip
· hace11h
¡En pocas palabras, es un impuesto sobre la inteligencia!
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)