Platypus attack exploited incorrect ordering of code, auditor claims

Platypus attack exploited incorrect ordering of code, auditor claims

Disclaimer: The article has been updated to reflect that Omniscia did not audit a version of the MasterPlatypusV4 contract. Instead, the company audited a version of the MasterPlatypusV1 contract from Nov. 21 to Dec. 5, 2021.

The $8 million Platypus flash loan attack was made possible because of code that was in the wrong order, according to a post-mortem report from Platypus auditor Omniscia. The auditing company claims the problematic code didn’t exist in the version they audited.

According to the report, the Platypus MasterPlatypusV4 contract “contained a fatal misconception in its emergencyWithdraw mechanism,” which made it perform “its solvency check before updating the LP tokens associated with the stake position.”

The report emphasized that the code for the emergencyWithdraw function had all of the necessary elements to prevent an attack, but these elements were simply written in the wrong order, as Omniscia explained:

“The issue could have been prevented by re-ordering the MasterPlatypusV4::emergencyWithdraw statements and performing the solvency check after the user’s amount entry has been set to 0 which would have prohibited the attack from taking place.”

Omniscia audited a version of the MasterPlatypusV1 contract from Nov. 21 to Dec. 5, 2021. However, this version “contained no integration points with an external platypusTreasure system” and therefore did not contain the misordered lines of code.

It is important to note that the code that was exploited did not exist at the time of Omniscia’s audit. Omniscia’s point of view implies that the developers must have deployed a new version of the contract at some point after the audit was made.

En rapport : Raydium announces details of hack, proposes compensation for victims

The auditor claims that the contract implementation at Avalanche C-Chain address 0xc007f27b757a782c833c568f5851ae1dfe0e6ec7 is the one that was exploited. Lines 582–584 of this contract appear to call a function called “isSolvent” on the PlatypusTreasure contract, and lines 599–601 appear to set the user’s amount, factor and rewardDebt to zero. However, these amounts are set to zero after the “isSolvent” function has already been called.

The Platypus team confirmed on Feb. 16 that the attacker exploited a “flaw in [the] USP solvency check mechanism,” but the team did not initially provide further detail. This new report from the auditor sheds further light on how the attacker may have been able to accomplish the exploit.

The Platypus team announced on Feb. 16 that the attack had occurred. It has attempted to contact the hacker and get the funds returned in exchange for a bug bounty. The attacker used flashed loans to perform the exploit, which is similar to the strategy used in the Defrost Finance exploit on Dec. 25, 2022.

Mettez vos Enics dans votre portefeuille BNB maintenant à un prix de lancement, et profitez de leur croissance vertigineuse dans les prochains mois.

Participez maintenant à l'offre initiale de pièces d'Enic
et profitez de gains importants
dans les semaines à venir

VOUS TRAVAILLEZ SUR VOTRE TÉLÉPHONE PORTABLE OU VOTRE TABLETTE ?

Copiez l'adresse suivante ou scannez-la dans votre portefeuille cryptographique, puis envoyez à cette adresse le montant de BNB que vous souhaitez convertir en ENIC.

0x5c887F4518a95CdAfFe4E4B3AFDA00C2BB2BcD69

Ou scannez immédiatement le code QR ci-dessous avec votre application de portefeuille de crypto.

Les BNB que vous enverrez seront instantanément convertis en ENICs et atteindront votre portefeuille en quelques secondes.

VOUS OPÉREZ SUR VOTRE BUREAU ?

(Nous suggérons un navigateur Chrome avec l'extension Metamask ou Trustwallet)

Copiez l'adresse suivante ou scannez-la dans l'extension de votre portefeuille cryptographique, puis envoyez à cette adresse le montant de BNB que vous souhaitez convertir en ENIC.

0x5c887F4518a95CdAfFe4E4B3AFDA00C2BB2BcD69

Les BNB que vous enverrez seront instantanément convertis en ENICs et atteindront votre portefeuille en quelques secondes.

OU

notre communauté

Les détenteurs de
dans le monde entier

Rejoignez dès maintenant notre communauté grandissante sur notre canal Telegram, et profitez de la croissance irrésistible d'Enic dans les mois à venir.

0
Personnes rejointes
0 +
ABONNÉS ICO
0
Énergie
fournisseurs
fr_FRFrançais