Un auditor afirma que el atacante de Platypus se aprovechó de un orden incorrecto del código
Las líneas desordenadas hacían que se realizara una comprobación de solvencia antes de que el importe, el factor y rewardDebt del usuario se hubieran puesto a cero.

📌 In light of the recent @Platypusdefi incident the https://t.co/30PzcoIJnt team has prepared a technical post-mortem analysis describing how the exploit unravelled in great details.
👉 Be sure to follow @Omniscia_sec to receive more security updates!https://t.co/cf784QtKPK pic.twitter.com/egHyoYaBhn
— Omniscia (@Omniscia_sec) February 17, 2023
Según el informe, el contrato Platypus MasterPlatypusV4 “contenía un error fatal en su mecanismo emergencyWithdraw” que le hacía realizar “su comprobación de solvencia antes de actualizar los tokens LP asociados a la posición de staking”.
El informe destacaba que el código de la función emergencyWithdraw tenía todos los elementos necesarios para evitar un ataque, pero estos elementos simplemente estaban escritos en el orden equivocado, según explicaba Omniscia:
“El problema podría haberse evitado reordenando las sentencias de MasterPlatypusV4::emergencyWithdraw y realizando la comprobación de solvencia después de que la entrada de importe del usuario se hubiera puesto a 0, lo que habría impedido que se produjera el ataque”.
Omnisia admitió que auditó una versión del contrato MasterPlatypusV4 del 21 de noviembre al 5 de diciembre de 2021. Sin embargo, esta versión “no contenía puntos de integración con un sistema externo de platypusTreasure” y, por tanto, no contenía las líneas de código desordenadas. Desde el punto de vista de Omniscia, esto implica que los desarrolladores deben haber desplegado una nueva versión del contrato en algún momento posterior a la realización de la auditoría.
El auditor afirma que la implementación del contrato en la dirección 0xc007f27b757a782c833c568f5851ae1dfe0e6ec7 de Avalanche (AVAX) C-Chain es la que fue explotada. Las líneas 582-584 de este contrato parecen llamar a una función llamada “isSolvent” en el contrato PlatypusTreasure, y las líneas 599-601 parecen poner a cero el importe, factor y rewardDebt del usuario. Sin embargo, estas cantidades se ponen a cero después de que se haya llamado a la función “isSolvent”.


El equipo de Platypus confirmó el 16 de febrero que el atacante explotó un “fallo en [el] mecanismo de comprobación de solvencia de USP”, pero el equipo no proporcionó inicialmente más detalles. Este nuevo informe del auditor arroja más luz sobre la forma en que el atacante puede haber sido capaz de lograr el exploit.
El equipo de Platypus anunció el 16 de febrero que se había producido el ataque. Ha intentado ponerse en contacto con el hacker y conseguir la devolución de los fondos a cambio de una recompensa por el fallo. El atacante utilizó préstamos flash para realizar el exploit, que es similar a la estrategia utilizada en el exploit Defrost Finance del 25 de diciembre.
¡Asegúrese de no perderse ninguna noticia importante relacionada con Criptomonedas! Siga nuestro feed de noticias de la forma que prefieras; a través de Twitter, Facebook, Telegram, RSS o correo electrónico (desplácese hacia abajo hasta la parte inferior de esta página para suscribirse). Bitcoin nunca duerme. Tampoco nosotros.
Descargo de Responsabilidad: Este comunicado de prensa es sólo para fines informativos, la información no constituye consejo de inversión o una oferta para invertir. Las opiniones expresadas en este artículo son las del autor y no representan necesariamente los puntos de vista de CriptomonedaseICO, y no deben ser atribuidas a, CriptomonedaseICO.
Síguenos en Telegram // www.criptomonedaseico.com
Los comentarios están cerrados.