OrionProtocol sufrió un ataque de reentrada, se robaron casi 3 millones de dólares en activos.

robot
Generación de resúmenes en curso

OrionProtocol sufrió un ataque de reentrada que resultó en pérdidas de casi 3 millones de dólares.

El 2 de febrero de 2023, el contrato Orion Protocol en Ethereum y Binance Chain sufrió un ataque de reentrada debido a una vulnerabilidad de seguridad. El atacante logró robar aproximadamente 2,9 millones de dólares en activos criptográficos, que incluían 2,844,766 USDT en Ethereum y 191,606 BUSD en BSC.

Análisis del proceso de ataque

El atacante primero desplegó un contrato de Token personalizado y realizó los preparativos necesarios. Luego, el atacante tomó prestado dinero a través del método swap de UNI-V2 y llamó al método swapThroughOrionPool del contrato ExchangeWithAtomic para intercambiar tokens. La ruta de intercambio incluía la dirección del contrato Token creado por el atacante, lo que allanó el camino para el posterior ataque de callback.

Durante el proceso de intercambio, debido a que el contrato Token del atacante contiene lógica de callback, cada operación de transferencia activa una llamada de reentrada al método depositAsset del contrato ExchangeWithAtomic. Esto provoca que el monto del depósito se acumule incorrectamente, lo que finalmente permite al atacante retirar fondos que superan la cantidad que realmente depositó.

Análisis de ataque de reentrada de OrionProtocol con PoC

Análisis de ataques de reentrada de OrionProtocol con PoC

Análisis de ataque de reingreso de OrionProtocol con PoC

Origen de la vulnerabilidad

El problema central radica en los contratos ExchangeWithAtomic en las funciones doSwapThroughOrionPool y _doSwapTokens. Estas funciones actualizan la variable curBalance después de realizar la transferencia de tokens, pero no implementan medidas para prevenir ataques de reentrada. Los atacantes aprovechan la función de transferencia del Token personalizado para invocar el método depositAsset, lo que provoca que curBalance se actualice incorrectamente, permitiendo así la extracción de fondos excesivos después de reembolsar el préstamo relámpago.

Análisis de ataque de reingreso 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 ataques de reentrada de OrionProtocol con PoC

Análisis de ataque de reingreso de OrionProtocol con PoC

Flujo de fondos

Los fondos iniciales del atacante provienen de la billetera caliente de una plataforma de intercambio. De los 1,651 ETH obtenidos por el ataque, 657.5 ETH aún permanecen en la dirección de la billetera 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 ataque de reentrada de OrionProtocol con PoC

Análisis de ataque por reentrada de OrionProtocol con PoC

Sugerencias de seguridad

Para prevenir ataques similares, el equipo del proyecto debe prestar atención a los siguientes puntos:

  1. Al implementar la función de intercambio de monedas digitales, es necesario considerar los riesgos de seguridad que pueden surgir de los diversos tipos de Token y las posibles rutas de intercambio.

  2. Escribir el código del contrato siguiendo el patrón "Comprobaciones-Efectos-Interacciones" (Checks-Effects-Interactions), es decir, primero realizar la comprobación de condiciones, luego actualizar las variables de estado y finalmente interactuar con contratos externos.

  3. Utilizar un bloqueo de reentrada o mecanismos similares en funciones clave para prevenir ataques de reentrada.

  4. Para las llamadas externas, especialmente aquellas que implican la transferencia de fondos, se debe tener un cuidado especial y considerar el uso del modo de pago pull en lugar del modo de pago push.

  5. Realizar auditorías de seguridad periódicas para detectar y reparar vulnerabilidades potenciales de manera oportuna.

Al adoptar estas medidas, se puede mejorar significativamente la seguridad de los contratos inteligentes y reducir el riesgo de sufrir ataques. En el ecosistema Web3, la seguridad siempre debe ser la principal prioridad.

TOKEN4.12%
ETH-0.6%
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
TokenTherapistvip
· hace15h
¿Alguien más se ha deprimido?
Ver originalesResponder0
LiquidatorFlashvip
· hace15h
Las vulnerabilidades de reentrada son realmente el principal asesino de las pérdidas en DeFi...
Ver originalesResponder0
0xLuckboxvip
· hace15h
¿Cómo es que me han robado otra vez en estos tiempos?
Ver originalesResponder0
TokenSherpavip
· hace15h
*sigh* otro protocolo fallando en las comprobaciones básicas de reentrancia... hablando históricamente, esto era prevenible
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)