The above searcher wrote their contract in Yul and had a function for token approvals that they didn't have the appropriate checks on.
The attacker reverse engineered the decompiled assembly, found the never used approve function, and figured out the custom data input format.
I'm starting to think there might be one or two sharks out there that are doing this full time.
What a job that would be: decompiled assembly bug finder
... starting salary $5m/year
Anyway, there's nothing really to dig into here. Just a straightforward bug in a contract (not requiring the caller of a function was the owner) and an attacker who threaded a needle somehow to find that.
I should make a hall of fame for this or something
• • •
Missing some Tweet in this thread? You can try to
force a refresh
🥪 bots watch the mempool for users buying on DEXes and 🥪 them:
1.🥪bot buys an asset to push the price up 2. victim buys at an inflated price, pushes price up more 3. 🥪 bot dumps at a profit at the victim's expense
Today Flashbots is releasing v0.4 and introducing mega bundles to the Flashbots Network
Mega bundles will let us innovate faster, support more bundles and will lead to new searcher strategies and more miner revenue
A thread on mega bundles 🧵👇🏻
Flashbots is an open MEV marketplace. On 1 side of the market users submit "bundles" of txs. On the other miners run an auction & place the highest gas price bundles at the top of blocks.
This allows miners of any size to extract MEV, which is important for economic security.
In the early days of Flashbots only 1 bundle could be included in a block. That greatly limited our impact.
Our v0.2 release introduced multiple bundles per block through a merging process & gave miners control the number bundles they wanted to include
Contrary to Multicoin's claims, minimizing MEV is core to Flashbots' mission & products.
That shows from our funding of fairness and ethics research, work on MEV aware dApps, & 100s of users that have used Flashbots to skip the mempool & protect themselves from frontrunning.
More importantly, Multicoin is lying about Eden: it is not permissionless OR transparent.
Eden is a permissioned system with a multisig that has exclusive control over MEV payouts to miners. The Eden team alone decides whether miners are mining "Eden blocks" and should be paid.
Dropping what is probably the most alpha packed thing I've written so far: an in-depth writeup of my strategy for a highly competitive MEV opportunity, the Synthetix Ether Collateral Liquidations, along with code
Blog post contains:
- My process from start the finish
- Explanation of why I made the design decisions I did
- How I sped up data collection
- A few gas optimizations
- Explanation of my economic strategy
- My novel bundle submission strategy
- Code snippets
- Many links
Repo contains:
- The only (I think?) open source example of how to backrun transactions
- Monitoring tools I made
- Contracts used for execution, including dydx flashloan
- Contract for data collection
- my somewhat embarrassing messy Hardhat testing env