Deus, Ovix, Unlock: From Miswired Mappings to Oracle Lies
Five different bugs, one shared failure mode: trusting your own code too much. Deus let token allowances invert due to a miswired mapping. Ovix trusted a single oracle. Level forgot to accumulate rewards. Unlock skipped caller checks entirely. These weren’t novel attacks; they were the inevitable result of treating implementation as truth. Together, they cost over $9M.
Hacks Analysis
Deus Finance | Amount Lost: $6.3M
Deus Finance’s token contract was exploited due to an implementation error. The attacker targeted addresses holding large amounts of $DEI tokens and gained approval to transfer coins from the victim’s address to the attacker’s address. The implementation flaw was caused by incorrect mapping of allowances, which should have been mapped as _allowances[address _owner][address _spender], instead of _allowances[address _spender][address _owner]. This allowed the attacker to approve the burning and transferring of the victim’s tokens. The exploit resulted in a loss of over $5M on Arbitrum and $1.3M on BNB Chain. Deus confirmed that they paused all contracts on all chains and that the exploiter returned 2023 ETH worth almost $4M.
Press enter or click to view image in full size
Transaction Hash (on Arbitrum): 0xb1141785b7b94eb37c39c37f0272744c6e79ca1517529fec3f4af59d4c3c37ef
An attack on Level Finance on BNB Chain resulted in a loss of $1M. The hacker exploited a vulnerability in Level Finance’s LevelReferralControllerV2 smart contract. The claimMultiple function in this contract calculated the claimed reward incorrectly by resetting it for each epoch rather than accumulating (users[epoch][msg.sender].claimed = reward instead of += reward). This allowed the hacker to submit the same epoch to claim the reward multiple times.
Press enter or click to view image in full size
Transaction Hash (on BNB Chain): 0x6ecc8c6cc80446a3f4a8aee7a1c93337f653d8658b3720c74ed09bf38e26c966
The Ovix Protocol on Polygon suffered a hack on April 28, allowing an attacker to manipulate the price oracle. The attacker flash loaned 5.4M USDT + 720K USDC, and used the fund to borrow vGHST tokens, which altered the price oracle as it was reliant on the conversion rate between vGHST and GHST. The attacker then returned the borrowed vGHST, but at a modified exchange rate, allowing them to sell the tokens at a higher price and make a $2M profit. To prevent similar attacks, it is recommended to use multiple price oracles for the same asset to compare the results and identify any discrepancies that may indicate manipulation, known as oracle aggregation.
Press enter or click to view image in full size
Transaction Hash (on Polygon): 0x10f2c28f5d6cd8d7b56210b4d5e0cece27e45a30808cd3d3443c05d4275bb008
On April 23rd, BeatGen on BNB Chain suffered a $13K hack due to a logic exploit in their Oracle smart contract. The exploit occurred in the convertUsdBalanceDecimalToTokenDecimal function, which calculated the decimal amount of the BeatGen token (BNG) by using the ratio of the BNG token balance to the stable coin balance. Therefore, the BNG decimal amount is inversely proportional to the stable coin balance. The attacker took advantage of this logic by reducing the balance of the stable token to increase the amount of the token decimal and gain profits.
Press enter or click to view image in full size
Transaction Hash (on BNB Chain): 0xd0f3c8e703ce81fbe677da0b6d37c397361d7789b090327d2e4ca32916dcb639
The Unlock Protocol was hacked, resulting in a loss of $38K. The attacker exploited the UnlockV12 contract by taking advantage of a missing caller verification. First, the attacker deposited funds from Tornado into their attack contract. Then, the contract called the postLockUpgrade function and ‘locked’ the contract address by setting the deployed value to true. This allowed the msg.sender to bypass the deployed/locked checks and transfer funds to the attacker’s contract. The drained ETH funds were subsequently deposited into Tornado.
The rich text element allows you to create and format headings, paragraphs, blockquotes, images, and video all in one place instead of having to add and format them individually. Just double-click and easily create content.
A rich text element can be used with static or dynamic content. For static content, just drop it into any page and begin editing. For dynamic content, add a rich text field to any collection and then connect a rich text element to that field in the settings panel. Voila!
Headings, paragraphs, blockquotes, figures, images, and figure captions can all be styled after a class is added to the rich text element using the "When inside of" nested selector system.
Follow-up: Conduct a follow-up review to ensure that the remediation steps were effective and that the smart contract is now secure.
Follow-up: Conduct a follow-up review to ensure that the remediation steps were effective and that the smart contract is now secure.
In Brief
Remitano suffered a $2.7M loss due to a private key compromise.
GAMBL’s recommendation system was exploited.
DAppSocial lost $530K due to a logic vulnerability.
Rocketswap’s private keys were inadvertently deployed on the server.
Hacks
Hacks Analysis
Huobi | Amount Lost: $8M
On September 24th, the Huobi Global exploit on the Ethereum Mainnet resulted in a $8 million loss due to the compromise of private keys. The attacker executed the attack in a single transaction by sending 4,999 ETH to a malicious contract. The attacker then created a second malicious contract and transferred 1,001 ETH to this new contract. Huobi has since confirmed that they have identified the attacker and has extended an offer of a 5% white hat bounty reward if the funds are returned to the exchange.