OrionProtocol sufrió un ataque de reentrada de 2.9 millones, los fondos ya han sido parcialmente transferidos a cripto tumbler.

robot
Generación de resúmenes en curso

Análisis del evento de ataque de reentrada de OrionProtocol

El 2 de febrero de 2023 por la tarde, OrionProtocol sufrió un ataque de reingreso en Ethereum y Binance Smart Chain debido a una vulnerabilidad en el contrato, con una pérdida total de aproximadamente 2.9 millones de dólares. Las pérdidas específicas incluyen 2,844,766 USDT en la cadena de Ethereum y 191,606 BUSD en la cadena de Binance Smart.

Análisis del proceso de ataque

El atacante primero desplegó un contrato de Token personalizado y realizó las operaciones de transferencia y autorización correspondientes, preparándose para el ataque posterior. Luego, el atacante tomó un préstamo a través del método swap de un DEX y llamó al método ExchangeWithAtomic.swapThroughOrionPool para intercambiar tokens. La ruta de intercambio se configuró como [USDC, Token del atacante, USDT].

Durante el proceso de intercambio, un atacante aprovechó la función de callback del contrato de Token personalizado, llamando repetidamente a la función ExchangeWithAtomic.depositAsset mediante el método Token.Transfer, lo que provocó que el monto del depósito se acumulara constantemente. Finalmente, el atacante completó su ganancia a través de una operación de retiro.

Análisis de ataque de reingreso de OrionProtocol con PoC

Flujo de fondos

Los fondos iniciales del atacante provienen de una cuenta de monedero caliente de una plataforma de intercambio. De los 1,651 ETH obtenidos por el ataque, 657.5 ETH todavía permanecen en la dirección del monedero del atacante, mientras que el resto ha sido transferido a través de un servicio de mezcla.

Análisis de ataque de reentrada de OrionProtocol con PoC

Análisis de Vulnerabilidades

El problema central radica en la función doSwapThroughOrionPool. Esta función llama a la función _doSwapTokens, que actualiza la variable curBalance después de realizar la transferencia de tokens. El atacante añadió lógica de callback en la función transfer de un Token personalizado, llamando a la función depositAsset, lo que provocó una actualización incorrecta de curBalance. Posteriormente, el atacante llamó a la función withdraw para retirar fondos tras reembolsar el préstamo relámpago, completando así el ataque.

Análisis de ataque de reentrada de OrionProtocol con PoC

Análisis de ataque de reingreso de OrionProtocol con PoC

Reproducción de ataques

Los atacantes llevan a cabo un ataque creando un contrato de token ERC20 personalizado y utilizando la función de préstamo relámpago de algún DEX. Los pasos principales incluyen:

  1. Crear un Token personalizado y establecer pares de negociación con USDC y USDT
  2. Preparar capital inicial y proporcionar liquidez
  3. Llamar a las funciones depositAsset y swapThroughOrionPool del contrato ExchangeWithAtomic
  4. Agregar lógica de callback en la función transfer del Token personalizado
  5. Finalmente, extraer fondos de ganancias a través de la función withdraw.

Análisis de ataque de reentrada de OrionProtocol con PoC

Análisis de ataque de reentrada de OrionProtocol con PoC

Análisis de ataque por reentrada de OrionProtocol con PoC

Análisis de ataques de reentrada de OrionProtocol con PoC

Análisis de ataque de reentrada de OrionProtocol con PoC

Análisis de ataque de reentrada de OrionProtocol con PoC

Análisis de ataque de reingreso de OrionProtocol con PoC

Sugerencias de seguridad

Para evitar ataques similares, el equipo del proyecto debe tener en cuenta los siguientes puntos:

  1. En el diseño del contrato se deben considerar los riesgos de seguridad que pueden surgir de la multiplicidad de tokens y caminos de intercambio.
  2. Seguir la norma de codificación "verificar primero, luego efectos, y después interacciones" (Checks-Effects-Interactions)
  3. Implementar auditorías de seguridad completas, prestando especial atención al riesgo de ataques de reentrada.
  4. Considerar el uso de mecanismos de seguridad como los bloqueos de reentrada.
  5. Realizar escaneos de vulnerabilidades de contratos y evaluaciones de seguridad de forma periódica

Este evento enfatiza nuevamente la importancia de la seguridad de los contratos inteligentes; los proyectos deben seguir prestando atención y mejorando sus medidas de seguridad para proteger los activos de los usuarios y mantener la reputación de la plataforma.

TOKEN-4.94%
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
  • 4
  • Compartir
Comentar
0/400
AirdropF5Brovip
· hace20h
trampa en efectivo, ¡ya hay un nuevo objetivo!
Ver originalesResponder0
ProbablyNothingvip
· hace20h
¿El contrato puede ser aún peor?
Ver originalesResponder0
CountdownToBrokevip
· hace20h
Otra empresa se ha ido al traste.
Ver originalesResponder0
StablecoinAnxietyvip
· hace21h
Ay, otro hacker estilo juez.
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)