Seguridad financiera descentralizada: comprender los riesgos y reducir los riesgos

Autor: Salus Insights

Hay muchos riesgos de seguridad en el campo de las finanzas descentralizadas (DEFI), lo que puede causar daños graves a los usuarios, plataformas y todo el ecosistema financiero.Resumimos tres riesgos de seguridad Defi y analizamos el proceso de hackers y soluciones correspondientes mediante el análisis de los recientes incidentes de seguridad reales.

  • Riesgo de manipulación de precios

  • Riesgo de vulnerabilidad de contrato inteligente

  • Riesgo de operación del usuario

1. Riesgo de manipulación de precios

En Defi, el riesgo de manipulación de precios se refiere al comportamiento de los actores maliciosos que intentan beneficiarse o afectar el mercado manipulando el precio de los activos.Esta manipulación puede conducir a precios anormales del mercado, trayendo pérdidas a otros participantes.A continuación, resumimos tres situaciones que pueden ocurrir en el riesgo de manipulación de precios en Defi:

  • Ataque de préstamos para rayos

  • Ataque de sándwich

  • Ataque de la máquina de juzgar

1.1 Ataque de préstamos para rayos

Lightning Loan Attack es un método de ataque en solicitudes Defi.Utiliza operaciones financieras como Lightning Loan sin proporcionar hipotecas.El atacante toma prestados muchos fondos a través de Lightning Loan y realiza una serie de operaciones en la misma transacción para realizar fraude.

Evento de ataque de préstamo de rayos shidoglobal

El 23 de junio de 2023, los ataques de préstamos de rayos Shidoglobal ocurrieron en el BSC (Binance Smart Chain).El atacante se da cuenta del arbitraje de Albon al bloquear y obtener el mecanismo, y la diferencia de precio entre los dos grupos.976 WBNB fue robado con éxito.

Ataque TX:

https://explorer.phlcon.xyz/bsc/0x72f8dd2bcfe2c9fbf0d93367804178a0d89956bfbabe3aa712d6

¿Cómo realiza un atacante ataques de préstamos para rayos?

  • El atacante tomó prestados 40 préstamos WBNB Lightning.

>

  • El atacante intercambió 39 WBNB en 10, 436, 972, 685, 676, 390, 697 Shido Inu: tokens Shido (9 dígitos después del punto decimal), y almacenado en Pancakakeswap V2: Shido-Wbnb Pool.Este paso ha aumentado la oferta de Shido Inu: Shido Tokens en el grupo, lo que resulta en una disminución en el precio del token.

>

  • El atacante luego llamó a Shidolock.Locktokens y Shidolock.claimtokens a su vez, que transformó 10, 436, 972, 685.676390697: Shido Tokens (9 dígitos después del punto decimal) a 10, 436, 986, 70 4, 133, 494, 387, 000 , 000 y 000 tokens Shido (18 dígitos después del punto decimal).

Cuando el atacante llama a la función LockTokens en el contrato de Shidolock, se bloqueará en el contrato 10, 436, 972, 685.676390697: Shido Token Lock en el contrato.Esto significa que estos tokens no se pueden transferir o negociar hasta que se cumplan las condiciones específicas.Al bloquear los tokens, los atacantes pueden mantener el precio de los tokens hasta cierto punto.

El atacante llama a la función de reclamación y convierte el token de bloqueo a 10, 436, 986, 704, 133, 494, 387, 000, 000, 000 token Shido.De hecho, los dígitos decimales de los tokens Shido aumentaron de 9 a 18, aumentando el suministro total de tokens.

>

  • Al bloquear y obtener mecanismos, existe una diferencia de precio entre Pancakeswap V2: shido-wbnb piscina y pancakeswap v2: shido 28 piscina.Específicamente, debido al aumento de la oferta en el grupo Pancakeswap V2: Shido-WBNB, el aumento en el aumento de los precios, lo que resulta en una disminución en el precio.En el grupo Pancakeswap V2: Shido 28, el precio es relativamente alto porque la oferta no ha aumentado.El atacante usa esta diferencia de precio para intercambiar tokens entre las dos piscinas. -Bit) intercambiado a 1, 016 WBNB.

>

  • Finalmente, el atacante reembolsa 40 préstamos de rayos WBNB y recibió alrededor de 976 ganancias de WBNB.

>

Función de préstamo de rayos limitado

Limite la función del préstamo de rayos e introduzca las tarifas de los préstamos de rayosEs una forma común de reducir el riesgo de préstamos y manipulación de rayos.

  • Límite de la función del préstamo del rayo: las funciones del préstamo de rayos pueden limitarse, como establecer el monto mínimo del préstamo, el límite de tiempo de préstamo, etc.Esto puede reducir la oportunidad de atacar por parte de los atacantes que usan préstamos para rayos.

  • Presente el miedo al préstamo de los rayos: puede cobrar una cierta tarifa a los prestatarios.Esto puede aumentar el costo del ataque, de modo que el atacante enfrenta mayores riesgos y costos al atacar los ataques de préstamos para rayos.

>

En el código de ejemplo anterior, hemos establecido algunas restricciones para restringir el uso del préstamo de rayos, como el monto mínimo del préstamo, el monto máximo del préstamo y el tiempo de préstamo.Antes de realizar la operación de préstamo de rayos, calculamos y cobramos un cierto porcentaje de tarifas de manejo.

1.2 Ataque de sándwich

Sandwich Attack es un método de ataque que utiliza la información asimétrica en el intercambio descentralizado (DEX).El atacante utiliza una transacción maliciosa entre las dos transacciones para usar las diferencias de precios para obtener ganancias.

Incidente de ataque de sándwiches de curvas

El 2 de agosto de 2023, Hypernatic Systems lanzó un ataque de sándwich a las finanzas de curva.El atacante inserta una transacción maliciosa entre las dos transacciones entre la liquidez y la eliminación de liquidez.Gane 36.8 K USDT.

Ataque TX:

https://explorer.phlcon.xyz/tx/eth/0xd4933393952049644c531309dd4134bf3db1e6f0b68b016ee0bfffde

¿Cómo un atacante implementa un ataque de sándwich?

  • Los atacantes obtienen enormes préstamos de rayos de múltiples fuentes de fondos, incluidos WSTTH, Weth y USDT.

>

  • El atacante ofrece 3 grupo 155, 000, 000 USDT liquidez y obtiene 3 tokens LP CRV.3 CRV es un token LP de la curva Tripool (curva DAI/USDC/USDT Mining Pond), que es un grupo minero que está dañado en el ataque.

>

  • El atacante se retiró de la piscina (casi todo) Dai y la liquidez del USDC, y destruyó 3 tokens LP CRV.En este momento, la piscina era casi completamente USDT, lo que temporalmente lo hizo mucho más barato que DAI y USDC.

>

  • Llame a la función de ejecución () de contrato de UsyingBurner y continúe agregando liquidez al grupo de minería Curve DAI/USDC/USDT.UnderyingBurner posee principalmente USDT, agregado DAI: USDC: USDT La cantidad es de 100, 000: 100, 000: 227, 079, 039, 776.Esto ha provocado que el grupo minero esté más desequilibrado, la cantidad relativa de USDT es mayor y el valor es más bajo.

>

  • El atacante agregó el DAI y el USDC que mantuvo a la curva DAI/USDC/USDT Mining Pool y disfrutó de una prima, lo que significa obtener un mayor número de 3 tokens LP de 3 CRV.

>

  • El atacante destruye su token LP de 3 CRV y extrae liquidez del USDT.

>

  • El atacante reembolsa el préstamo Flash y conserva la ganancia de 36.8 K USDT.

>

En este proceso, las transacciones maliciosas se refieren al atacante eliminaron una gran cantidad de liquidez DAI y USDC de la curva DAI/USDC/USDT Mining Pool, y destruyeron la transacción token LP de 3 CRV.Esta transacción hace que el grupo minero sea muy desequilibrado, y el número relativo de USDT es mayor, lo que conduce a un valor más bajo.

Las otras dos transacciones se refieren a las transacciones de los atacantes para agregar liquidez y extraer liquidez.El atacante utiliza la diferencia de precio para agregar la liquidez DAI y USDC a la curva DAI/USDC/USDT Mining Pool, y extraerla a una prima para obtener un mayor número de 3 token LP de 3 CRV.

De esta manera, el atacante envuelve transacciones maliciosas con otras dos transacciones a través de sándwiches, compra liquidez de USDT a un precio bajo y luego vende ganancias a precios altos.

Secuencia de transacción restringida

Cuando se trata de prevenir sándwiches, la implementación del código puede involucrar contratos inteligentes complejos y lógica comercial.El siguiente es un ejemplo simplificado, cómo pasar la pantallaRestringir la secuencia de transacciones y la introducción de retrasos en la transacciónVen a prevenir ataques de sándwich.

>

En este ejemplo, suponemos que hay un contrato inteligente SandwichAttackPrevent para administrar el saldo y la operación de transacción de los usuarios.Para evitar ataques de sándwich, hemos introducido dos mecanismos de defensa principales.

En primer lugar, en la función de LettTransaction, solo el contratista del contrato puede establecer el IstRanActionAwed en verdadero para permitir a los usuarios ejecutar transacciones.Esto puede garantizar que la transacción se ejecute en el orden correcto sin permitir que los atacantes inserten transacciones maliciosas entre dos transacciones.

En segundo lugar, en la función Ejecransaction, introdujimos el concepto de retraso de la transacción.Los usuarios pueden ejecutar la transacción solo después de que el tiempo de bloqueo actual exceda el tiempo de retraso.Esto puede dar a otros usuarios tiempo suficiente para ejecutar la transacción y actualizar el precio, reduciendo así la oportunidad de usar las diferencias de precios por parte de los atacantes.

1.3 Ataque de la máquina de profecía

El Price Profet es una fuente de datos que proporciona información de precios de tiempo real de las criptomonedas.Esta información es crucial para el funcionamiento normal de muchos protocolos Defi.El ataque del Profeta se refiere a los datos proporcionados por el atacante que cambia artificialmente los datos proporcionados por la máquina de profecía, el propósito es obtener ganancias de una transacción basada en el precio de manipulación.

Evento de ataque de Profeta de Finanzas de Rodeo

Rodeo es una plataforma Defi que proporciona servicios de máquina de predicción de precios.El 11 de julio de 2023, la manipulación del Profeta de precios hizo que el hacker robara el protocolo de rodeoAlrededor de 472 ETH (alrededor de 888,000 dólares estadounidenses).

Ataque TX:

https://explorer.phlcon.xyz/tx/arbitrum/0xb1be5dee3852c818af7428def285b497ffc2eda0d893a09fb25a

¿Cómo manipular el Price Profeta?

La clave del ataque de finanzas de rodeo es el Rodeo Twap Oracle.La máquina de predicción se utiliza para rastrear la relación de precios entre ETH y UNSHETH.

  • Análisis de las transacciones de ataque: el proceso de ataque comienza con el atacante para realizar una transacción bien planificada.El atacante utilizó la comprensión en profundidad de las posibles vulnerabilidades de la arquitectura de la plataforma y el tiempo ponderó el precio promedio (dos), y lanzó este ataque.

  • Manipulando la profecía de dos: el atacante puede usar la función de ganar asociada con la dirección estratégica no configurada e intercambiar por fuerza el USDC a Unsheth.Esta manipulación omite efectivamente el control del punto deslizante causado por el profeta de precio defectuoso.En esencia, la función de ganar se reemplaza por la fuerza desde el USDC a Weth, y luego se reemplaza por Unsheth.

  • Cálculo de Twap Precio: el precio de dos se calcula en promedio a través de los últimos cuatro precios actualizados, cada intervalo de actualización es de 45 minutos.Sin embargo, el precio defectuoso Profeta devuelve un precio manipulado, lo que hace que los contratos inteligentes crean que la posición debería ser saludable.

  • Abraz de posición abierta: el atacante controla la máquina de profecía dos a través de sándwiches, y luego utiliza la función de ganar de un contrato de inversionista para abrir la posición de apalancamiento.Tomaron prestados USDC por valor de $ 400,000.

>

  • Activos de intercambio: el atacante intercambia los activos prestados con el grupo Camelotdex en la parte inferior y lo vende a la Unsheth preparada de regreso a la piscina.

  • Húmedo la verificación: los contratos generalmente verifican si la operación es válida.Sin embargo, debido a que el atacante controló esta estrategia, fácilmente pasó por alto esta inspección.Esto permite al atacante usar el Unsheth preparado de regreso a la piscina para usar la posición manipulada para extraer efectivamente la liquidez de la plataforma.

  • Fondos de transferencia: el atacante transfirió los fondos robados del árbitro a Ethereum, 285 ETH a Unsheth, y luego los transfirió al árbitro para continuar el ataque.Los fondos robados por valor de 150 ETH fueron transferidos posteriormente a Tornado Cash, un servicio de monedas mixtas Ethereum que se centró en la privacidad.El 371.2 ETH restante (alrededor de 701, $ 679) todavía está en manos del atacante.

Una de las principales vulnerabilidades de este ataque son los defectos de Rodeo Twap Oracle.La máquina de profecía depende de la reserva del par de transacciones Weth/Unsheth.

Calcule el precio basado en múltiples máquinas de profecía

Asegurar la confiabilidad de la consulta de precios, se debe utilizar un profeta confiableMáquinas de predicción múltiple o precios de alimentación agregadosCalcule el precio, no solo depende de la tasa de comparación de tokens.Especialmente en el caso de pobres grupos mineros, esta fuente de información de precios diversa puede mejorar la precisión de los datos de precios y dificultar que los atacantes manipulen los datos.

Para lograr este objetivo, una posible solución es usar máquinas de profecía descentralizadas, como ChainLink.La máquina Predecible de ChainLink puede recopilar datos de varias fuentes de datos y utilizar la tecnología blockchain para verificar y confirmar la precisión de los datos.Al usar múltiples fuentes de datos, ChainLink reduce la posibilidad de fallar de punto único y es más difícil manipular los datos por parte de los atacantes.

El siguiente es un código de ejemplo que utiliza el contrato de polímero de ChainLink para obtener datos de precios:

>

En el código anterior, utilizamos una matriz de tipos de Interface AggregatorV3 para almacenar múltiples ejemplos de máquinas de profecía.El constructor acepta una matriz de direcciones de Profet como parámetro e instancias cada dirección en un objeto AggregatorV3Interface.

La función GetLatestPrice se utiliza para obtener los últimos datos de precios de múltiples fuentes de datos.Traversa la matriz de precios y obtiene datos de precios llamando a la función LatestrundedData de cada máquina de profecía.Todos los datos de precios se almacenan en una matriz de un tipo INT y se devuelven a la persona que llama.

De esta manera, podemos obtener datos de precios de múltiples fuentes de datos y garantizar que la consulta de precios refleje los precios de los activos con mayor precisión.

2. Riesgo de vulnerabilidad de contrato inteligente

Vulnerabilidades de contrato inteligente Las vulnerabilidades de contrato inteligente se refieren a las vulnerabilidades o errores de seguridad en el código escrito en Ethereum u otras plataformas de contratos inteligentes.El núcleo de Defi es un acuerdo financiero basado en contratos inteligentes, por lo que las lagunas en los contratos inteligentes pueden causar la pérdida de fondos del usuario, manipular los comportamientos del mercado u otros comportamientos maliciosos.

Identificar estas vulnerabilidades es muy importante,a nosotrosLas cubiertas de auditoríaVarios problemas potencialesEsenciaEsto incluye, entre otros, vulnerabilidades reingresadas, vulnerabilidades de control de acceso, vulnerabilidades de desbordamiento de enteros y vulnerabilidades lógicas comerciales.Nuestro servicio de auditoría integral tiene como objetivo fortalecer la seguridad de su contrato inteligente y proteger el impacto de estos riesgos.

A continuación, use las vulnerabilidades de control de acceso como ejemplo, lo que indica el impacto de las vulnerabilidades de contrato inteligente en Defi.

Vulnerabilidad de control de acceso de leetswap

Leetswap sufrió un ataque,La pérdida supera los 340 ETHEsenciaLa razón fundamental es que existen vulnerabilidades de control de acceso en el contrato de par de pares LEETSWAP V2.

Ataque TX:

https://dashboard.tenderly.co/tx/base/0xbb837d417b76dd237b441695a50941c4dee561ea57d982b9f10ec

Contrato vulnerable:

https://basescan.org/address/0X94DAC4A3CE998143AA119C05460731DA80AD90CFF

>

El atacante llama a _transferfeessupportingtakens función para manipular el grupo.

  • Intercambie otra token A con Weth.

  • Llame a la función _transferfeSeSupportingTaxToKens para transferir tokens A, y luego llame a la función de sincronización para hacer que el precio de los tokens A aumente.

  • Use tokens A para intercambiar más Weth y despejar la piscina.

Solución

Para corregir las vulnerabilidades de control de acceso de la función _transferferntingtakens, la visibilidad de la función debe cambiarse a privado o internet.La función se declara privada, y solo se pueden llamar a otras funciones dentro del contrato.Declarar la función como Internet, a la que se puede acceder mediante el contrato del contrato.Cuando otros contratos heredan el contrato de par de pares LEETSWAP V2, puede llamar a la función súper palabras clave _transferfeessupportingtakens a través de la palabra clave súper.Los usuarios externos no pueden acceder directamente a esta función para mejorar la seguridad del contrato.

Es necesario determinar cómo cambiar la visibilidad de la función de acuerdo con la lógica del contrato específica y debe asegurarse de que no afecte el funcionamiento normal del contrato mientras mejora la seguridad.

La auditoría de contrato inteligente es un paso importante para identificar y prevenir vulnerabilidades.En Salus,Tenemos un equipo que consta de desarrolladores de contratos inteligentes y expertos en auditoría con experiencia, lo que puede ayudarlo a mejorar la seguridad del contrato.Nuestro conocimiento profesional nos permite localizar con precisión las posibles debilidades y garantizar la seguridad y confiabilidad de su proyecto.

3. Riesgo de operación del usuario

En el campo de Defi, el riesgo de operación del usuario se refiere al riesgo de pérdida de capital debido a sus propios errores de operación, una conciencia de seguridad insuficiente o un comportamiento insatisfactorio al usar la plataforma Defi.Aquí hay algunos riesgos comunes de operación del usuario:

  • Haga clic en enlaces maliciosos: los usuarios pueden cometer errores para hacer clic en el enlace malicioso, lo que lleva a un software malicioso o una infección por virus con su equipo.

  • Uso de billeteras inseguras: si el usuario elige usar aplicaciones de billeteras inseguras o billeteras de hardware, el atacante puede usar estas vulnerabilidades para robar la clave o la autoridad de operación de la clave privada del usuario.

  • Descubra la clave privada: si el usuario filtra la clave privada en un entorno diferente o almacena la clave privada en un lugar inseguro, el atacante puede obtener fácilmente la clave privada del usuario y luego controlar sus fondos.

  • Operaciones de comercio no continental: cuando el usuario realiza una transacción, si no verifica cuidadosamente los detalles de la transacción (como la dirección objetivo, el número de transacciones, etc.), puede hacer que el capital envíe a la dirección incorrecta o la dirección incorrecta o el número de errores.

Para reducir el riesgo de operación del usuario, las siguientes son algunas sugerencias:

  • Mejore la conciencia de seguridad: comprenda los métodos comunes de pesca, malware y fraude en línea, y aprenda cómo identificarlos y evitarlos.Mantenga alerta y verifique los enlaces y aplicaciones relacionadas con Defi.

  • Use una billetera de seguridad: elija usar auditoría de seguridad y buenas aplicaciones de billetera de reputación o billeteras de hardware.Asegúrese de que las aplicaciones y el firmware de la billetera sean la última versión y sigan la mejor práctica de seguridad.

  • Copia de seguridad y protección de la clave privada: mantenga la clave privada en un lugar seguro y cifre con una contraseña segura.Realice una copia de seguridad de la clave privada de forma regular y guárdela en lugares fuera de línea y seguros para evitar que se pierdan datos accidentales.

  • Verifique cuidadosamente los detalles de la transacción: antes de realizar cualquier transacción, verifique cuidadosamente los detalles de la transacción para asegurarse de que la dirección objetivo y el número de transacciones sean correctas.La doble inspección puede evitar la pérdida de fondos causados ​​por negligencia.

4. Resumen

Tenga en cuenta que la solución a cada ataque y vulnerabilidad anterior es solo un ejemplo simple, y no puede evitar completamente el ataque correspondiente o reparar la vulnerabilidad correspondiente.Si está interesado en auditar contratos inteligentes, por favorContáctenosCooperaremos con usted para brindarle servicios de auditoría profesional para garantizar que su contrato sea seguro y confiable.Estamos comprometidos a brindarle servicios de alta calidad y soporte técnico integral para garantizar que sus contratos inteligentes se ejecuten en un entorno seguro y confiable.

  • Related Posts

    Informe: El préstamo Defi ha aumentado en un 959% desde 2022 a $ 19.1 mil millones

    Fuente: Blockchain Knight Un informe reciente de Galaxy afirma que aunque Tether y otras dos compañías dominan el mercado de préstamos criptográficos,La cantidad de préstamos pendientes para solicitudes descentralizadas casi…

    Bankless: ¿Bitcoin puede florecer en la cadena?

    Autor: Jean-Paul Faraj Fuente: Traducción de Bankless: Shan Oppa, Bittain Vision Bitcoin ha sido la piedra angular del ecosistema criptográfico durante más de una década, elogiado por su descentralización, resistencia…

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    You Missed

    Tendencia histórica: Bitcoin está siendo un activo de sabor seguro

    • Por jakiro
    • abril 19, 2025
    • 4 views
    Tendencia histórica: Bitcoin está siendo un activo de sabor seguro

    ¿Qué hace que los eventos de la alfombra de criptomonedas ocurran con frecuencia?

    • Por jakiro
    • abril 18, 2025
    • 1 views
    ¿Qué hace que los eventos de la alfombra de criptomonedas ocurran con frecuencia?

    Wintermute Ventures: ¿Por qué invertimos en Euler?

    • Por jakiro
    • abril 18, 2025
    • 5 views
    Wintermute Ventures: ¿Por qué invertimos en Euler?

    ¿Puede Trump disparar Powell? ¿Qué riesgos económicos traerán?

    • Por jakiro
    • abril 18, 2025
    • 2 views
    ¿Puede Trump disparar Powell? ¿Qué riesgos económicos traerán?

    Glassnode: ¿Estamos experimentando una transición de toro?

    • Por jakiro
    • abril 18, 2025
    • 5 views
    Glassnode: ¿Estamos experimentando una transición de toro?

    El primer lote de 8 proyectos seleccionados del acelerador web de los 8 proyectos seleccionados

    • Por jakiro
    • abril 17, 2025
    • 4 views
    El primer lote de 8 proyectos seleccionados del acelerador web de los 8 proyectos seleccionados
    Home
    News
    School
    Search