The actor then walks away by withdrawing the illicit gains with 113.8M #WALBT and 98M #BEUR (valued >$10M). Some of these tokens are then dumped, resulting in major drop! #WALBT dropped by >50% and #BEUR dropped by 34%
• • •
Missing some Tweet in this thread? You can try to
force a refresh
2/ The hack is made possible due to incomplete reentrancy protection: swapThroughOrionPool func allows user-provided swap path w/ crafted tokens whose transfer can be hijacked into re-entering depositAsset func to increase user balance accounting w/o actually costing funds!
2/ The protocol has a flawed migrate() that is exploited to transfer real UniswapV2 liquidity to an attacker-controlled new V3 pair with skewed price, resulting in huge leftover as the refund for profit. Also, the authorized sender check is bypassed by locking any tokens.
3/ The initial fund (1.76 ETH) to launch the hack is withdrawn from @FixedFloat. Currently all stolen funds are still parked in the following account (880 ETHs, 6.4m DAIs, 11.8m TSUKAs and 74.6trillion CAWs) etherscan.io/address/0xba39…
It seems the related @OlympusDAO's BondFixedExpiryTeller contract has a redeem() function that does not properly validate the input, resulting in ~$292K loss. etherscan.io/tx/0x3ed75df83…
1/ We are thrilled to announce a self-service SaaS platform-#KillSwitch, which aims to detect exploitation TXs before their block inclusion and take contingency measures to block the attack or prevent assets from being stolen. It is in-essence a frontrunning-based DeFi protection
2/ #KillSwitch is proposed with the observation that DeFi exploits/hacks pose a significant, serious threat to the security of our ecosystem. In particular, this year’s DeFi hacks have so far resulted in a whopping $2.1B loss, 25% increase from 2021 and 8 times more than 2020.
3/ 🧵How it works? #KillSwitch includes a number of background agents that constantly monitor mempool TXs, locate those malicious ones with real-time simulation, and preemptively neutralize the damage with a just-in-time protocol pause or an emergency fund withdrawal.
2/ To illustrate, we use the hack tx 0x2b023d65485c4bb68d781960c2196588d03b871dc9eb1c054f596b7ca6f7da56 and show the key steps below:
3/ The hack is made possible due to the wrong MetaSwapUtils lib is used for calculating the swap. The latest code is deployed in 0x824dcd7b044d60df2e89b1bb888e66d8bcf41491, but the old lib 0x88cc4aa0dd6cf126b00c012dda9f6f4fd9388b17 is used. Did that ring a bell?
2/ The hack is made possible due to the flashloan-assisted (immediate) pass of BIP18, which was submitted one day ago (etherscan.io/tx/0x68cdec0ac…). The BIP18 leads to the crafted code execution with the governance privilege to drain the pool fund.
3/ To illustrate, we use the hack tx and show the key steps below