El agregador de intercambio multicadena Dexible se vio afectado por un exploit y, como resultado, se perdieron $ 2 millones en criptomonedas, según un informe post mortem del 17 de febrero publicado por el equipo en el servidor oficial de Discord del proyecto.
A partir de las 6:35 p. m. UTC del 17 de febrero, la interfaz de Dexible muestra una advertencia emergente sobre el hack cada vez que los usuarios navegan hacia él.
A las 6:17 a. m. UTC, el equipo informó que había descubierto “un posible ataque a los contratos de Dexible v2” y estaba investigando el problema. Aproximadamente nueve horas después, emitió una segunda declaración de que ahora sabía que “se explotaron $ 2,047,635.17 de 17 direcciones de comerciantes. 4 en mainnet, 13 en arbitraje”.
Se emitió un informe post-mortem a las 4:00 p. m. UTC como archivo PDF y se publicó en Discord, y el equipo dijo que estaba “trabajando activamente en un plan de remediación”.
En el informe, el equipo afirma que notó que algo andaba mal cuando a uno de sus fundadores se le sacaron $ 50,000 en criptomonedas de su billetera por razones que se desconocían en ese momento. Después de investigar, el equipo descubrió que un atacante había utilizado la función selfSwap de la aplicación para mover más de $ 2 millones en criptografía de usuarios que habían autorizado previamente a la aplicación para mover sus tokens.
La función selfSwap permitía a los usuarios proporcionar la dirección de un enrutador y los datos de llamada asociados con él para realizar un intercambio de un token por otro. Sin embargo, no había una lista de enrutadores preaprobados escrita en el código. Entonces, el atacante usó esta función para enrutar una transacción de Dexible a cada contrato de token, moviendo los tokens de los usuarios de sus billeteras al propio contrato inteligente del atacante. Debido a que estas transacciones maliciosas provenían de Dexible, que los usuarios ya habían autorizado para gastar sus tokens, los contratos de tokens no bloquearon las transacciones.
Relacionado: Influencer de NFT es víctima de un ciberataque y pierde $300K+ CryptoPunks
Después de recibir los tokens en su propio contrato inteligente, el atacante retiró las monedas a través de Tornado Cash en billeteras BNB (BNB) desconocidas.
Dexible ha pausado sus contratos e instó a los usuarios a revocar las autorizaciones de tokens para ellos.
La práctica común de autorizar aprobaciones de tokens para grandes cantidades a veces ha provocado pérdidas para los usuarios de criptografía debido a errores o contratos maliciosos, lo que lleva a algunos expertos a advertir a los usuarios que revoquen las aprobaciones de forma regular. Las interfaces de la mayoría de las aplicaciones Web3 no permiten a los usuarios editar directamente la cantidad de tokens aprobados, por lo que los usuarios a menudo pierden el saldo total de sus tokens si una aplicación resulta tener una falla de seguridad. MetaMask y otras billeteras han intentado solucionar este problema al permitir que los usuarios editen las aprobaciones de tokens en el paso de confirmación de la billetera, pero muchos usuarios de criptomonedas aún desconocen el riesgo de no usar esta función.