How the JaredFromSubway MEV Bot Lost $7.5 million without being hacked
A sophisticated attacker tricked Ethereum's infamous JaredFromSubway MEV bot into approving malicious smart contracts, ultimately draining roughly $7.5 million. GetBlock AML Research breaks down one of the most unusual DeFi exploits of the year.
29.06.2026
10
10 min
0
On June 20, 2026, the Ethereum-based MEV bot JaredFromSubway lost 4,424 ETH, worth roughly $7.5 million, after falling victim to a sophisticated approval-based attack.
Instead of targeting Ethereum's infrastructure or compromising private keys, the attacker manipulated the bot into interacting with malicious smart contracts. Fake liquidity pools and counterfeit tokens were carefully designed to resemble legitimate arbitrage opportunities. As the bot executed trades, it unknowingly granted token approvals that later allowed the attacker to drain its assets.
The core issue was simple: after each transaction, the bot never verified whether its approvals had actually been used or revoked. Those unused permissions remained active, allowing the attacker to return later and withdraw the bot's WETH, USDC, and USDT holdings.
GetBlock AML Research reconstructed the full attack sequence to understand exactly how the exploit unfolded.
What Is an MEV Bot?
JaredFromSubway is one of Ethereum's best-known MEV (Maximal Extractable Value) bots—automated software that monitors pending blockchain transactions and reorders them to capture profit.
Its primary strategy is the sandwich attack. The bot places one trade immediately before a user's swap and another immediately afterward, profiting from the temporary price movement created by the victim's transaction.
Whenever users submit transactions to decentralized exchanges, those transactions remain visible in Ethereum's mempool before being confirmed. MEV bots continuously scan this pending activity, simulate its market impact, and identify opportunities where executing transactions first can generate virtually risk-free profits.
Why an outdated smart contract was still vulnerable: The $2.2M Aztec Connect exploit
Although Aztec Connect was officially shut down in 2024, some user assets remained locked inside its immutable smart contracts. In June 2026, an attacker exploited a design mismatch between the protocol’s Layer 1 and Layer 2 components, draining roughly $2.2 million in a single transaction.
Key Addresses
The investigation identified several addresses involved in the exploit.
| Attacker Addresses |
| 0x3e37f4A10d771Ba9dE44b6d301410b1BEdeA65d0 |
| 0x74Dc5b93586D248D5Aec64b3586736FF0A0D0e65 |
| 0x71d4416A7A85e08a5Fe7227Ca3B44Fc639e94e97 |
| 0xd8C125efCBc99408eC8723E9BBd81d1E8D39D845 |
| 0xe3Da36E4bd1a5738fa5D6Ef4F0e4dF40bDeB5f17 |
| 0x139bE50D7c0829E0db6E9A444454517e24AbeE7a |
| 0x5aF38735B215b00aa7C9f93fEd7ee415CeCB36e1 |
| 0x19Ff2017803a832eE968454848DAb48fF39C881A |
| 0x7B4F24a4522bc2AEE9D1686FFB7d6c9dAC514e20 |
Supporting Smart Contracts
- 0x81f248ff583d3f8592ea0354a7b8dbe66de40091 — fake token deployment contract.
- 0xEEE172A069f5171b407eBf47e8FCFB637E944ec2 — controller for the fake decentralized exchange.
Examples of Fake Tokens
- Caps
- fCap
- Two separate fake versions of fWETH
These counterfeit assets were designed to imitate wrapped tokens and lure automated trading algorithms.
Building the Trap
To attract MEV bots, the attacker first needed to manufacture convincing arbitrage opportunities.
Several smart contracts were deployed for different purposes:
- one minted fake tokens;
- another coordinated the malicious infrastructure;
- a third created fake liquidity pools;
- a fourth handled token swaps within those pools.
The attacker ultimately deployed 131 counterfeit token contracts.
From the outside, the tokens looked almost identical to legitimate wrapped assets such as WETH and USDC. Users could exchange real tokens for fake ones through a function called wrapTo(), which required granting the contract permission to spend their assets beforehand.
That approval process became the foundation of the exploit.
Initially, everything functioned exactly as expected. While an internal variable called owner_a_0_19 remained inactive, the wrapTo() function executed a normal safeTransferFrom(), transferring tokens and fully consuming each approval. Every transaction appeared legitimate, giving the bot no reason to suspect malicious behavior.
When DAO governance fails: how TOP was taken over and what Tornado Cash has to do with It
The TOP incident shows that taking over a crypto project does not always require hacking smart contracts. In some cases, acquiring enough voting power and exploiting the system exactly as designed can be enough.
Once the attacker activated owner_a_0_19, however, control shifted to a separate coordination contract. At that point, the contract's behavior changed entirely.
Instead of calling transferFrom(), wrapTo() silently skipped the token transfer altogether.
The approval granted by the bot therefore remained fully valid, even though the transaction itself appeared successful.
Meanwhile, the coordination contract quietly recorded every unused approval, building a growing inventory of permissions that could later be exploited.
At the same time, the attacker manipulated several fake liquidity pools containing WETH–fCAP and fWETH–fCAP trading pairs.
By carefully adjusting pool balances, the attacker created what looked like highly profitable arbitrage opportunities, making the setup irresistible to automated MEV strategies.
Executing the Attack
The attack began at Ethereum block 25354425, when the JaredFromSubway bot interacted with one of the attacker's fake liquidity pools, SwapV2Pair_0x0e97.
From the bot's perspective, the opportunity appeared highly profitable.
Assuming one fWETH was worth one genuine WETH, the pricing across two manipulated pools suggested a risk-free arbitrage path:
fWETH → fCAP → WETH
The first pool contained:
- 0.1 fWETH
- 0.1 fCAP
The second contained:
- 0.086034434021378528 fCAP
- 0.116281374898538093 WETH
The bot calculated that the trade would generate a profit and proceeded automatically.
It first approved 7,391,033,126,027,264 wei of WETH to the malicious contract and called wrapTo(), which issued an equivalent amount of fake wrapped tokens.
Those tokens were then swapped through the prepared liquidity pool. The trade succeeded, and the bot earned approximately 0.00235 WETH. At this stage, everything behaved exactly as expected. Because the malicious approval mechanism had not yet been activated, every approval was consumed normally during execution.
Dozens of GnosisPay Wallets drained: A deep dive into a bold attack
The attacker didn’t hack the wallets directly. Instead, they tricked the security system into approving fraudulent transactions on its own. A flaw in the signature verification mechanism led to losses of approximately $265K.
Beginning at block 25360428, the attacker repeatedly called markStatusAndTip(), paying small validator tips to ensure these transactions were processed before the MEV bot's own operations. This changed the contract's behavior completely. The wrapTo() function stopped calling transferFrom(). From the bot's perspective, nothing looked unusual. Transactions continued to succeed. Profits kept coming. No errors were generated.
Behind the scenes, however, every approval the bot granted remained fully active instead of being consumed during execution. The attacker quietly accumulated dozens of valid token allowances. As confidence grew, the bot became increasingly aggressive, executing hundreds of transactions through the malicious contracts in pursuit of arbitrage profits.
The attacker only needed to refresh the malicious contract's status about a dozen times before enough active approvals had accumulated.
Once sufficient access had been obtained, the final stage began. At block 25360696, the attacker simultaneously activated 66 previously deployed bait contracts. Sixty of them already possessed valid ERC-20 approvals granted earlier by the bot.
Each contract immediately exercised its remaining allowance and transferred tokens directly from the bot's wallet to attacker-controlled addresses.
The Core Vulnerability
The exploit did not rely on a flaw in Ethereum or the ERC-20 standard. Instead, it exploited a logical assumption inside the trading bot. Every time the bot called wrapTo(), it automatically granted the contract permission to spend its tokens, assuming that permission would immediately be consumed during execution.
GitHub’s darkest stretch yet: developers worldwide put at risk of massive breaches
The Shai-Hulud attack exposed just how dangerous modern software supply chains have become. In a matter of minutes, malicious updates reached the computers of thousands of developers around the world.
However, the bot never verified whether the approval had actually been used. Nor did it revoke any unused allowance after the trade completed. If a malicious contract intentionally skipped transferFrom(), the approval remained valid indefinitely. That meant the attacker could return hours—or even days—later and freely transfer the bot's assets using permissions it had voluntarily granted. This simple oversight ultimately resulted in the loss of millions of dollars.
Where the Funds Went
The attacker's primary wallet,
0x3e37f4A10d771Ba9dE44b6d301410b1BEdeA65d0,
successfully drained:
- 2,869,812.43 USDC
- 2,032,769.62 USDT
- 1,474 WETH (worth approximately $2.57 million at the time)
The stolen stablecoins were immediately swapped into ETH.
The funds were then distributed across five separate wallets:
| Cash-Out Addresses |
| 0x5aF38735B215b00aa7C9f93fEd7ee415CeCB36e1 |
| 0x71d4416A7A85e08a5Fe7227Ca3B44Fc639e94e97 |
| 0x74Dc5b93586D248D5Aec64b3586736FF0A0D0e65 |
| 0xe3Da36E4bd1a5738fa5D6Ef4F0e4dF40bDeB5f17 |
| 0xd8C125efCBc99408eC8723E9BBd81d1E8D39D845 |
Distribution of stolen assets across attacker-controlled wallets. Source: CertiK
In the final stage of the laundering process, the attacker sent 3,000 ETH through Tornado Cash, obscuring the origin of the funds.
An additional 1,422 ETH was swapped for approximately 2.44 million DAI.
At the time of publication, those funds remained at:
0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
Useful material?
Research
The blockchain has helped uncover the ties between cryptocurrency fundraising campaigns, exchangers in Syria, and intermediaries in several countries around the world. A telltale pattern has emerged in which the same addresses were used across multiple donation drives at once
Jun 24, 2026
Research
Four Iranian cryptocurrency exchanges accounted for roughly 78% of all digital asset volume tied to the country in 2025. They have now become the focal point of the largest U.S. sanctions campaign against Iran's cryptocurrency infrastructure.
Jun 5, 2026
Research
A financial system is already up and running on public blockchains, with loans, analogues of U.S. Treasuries, and automated capital markets. More than $551 billion has flowed through DeFi protocols — but most of that activity has nothing to do with the real economy and everything to do with the speculative build-up of risk.
May 29, 2026
Research
Around 97% of Chinese suppliers of chemicals used to make fentanyl accept payment in cryptocurrency. The volume of such transactions continues to grow alongside the global market for synthetic drugs
May 22, 2026
Research
For the first time, the new law makes blockchain analytics an officially mandatory tool of financial oversight in the United States. Authorities will also gain the power to restrict transactions with foreign crypto services tied to money-laundering risks.
May 20, 2026
Research
Working with cryptocurrencies requires more than just new technology — it demands a complete overhaul of internal processes. We explain how the financial sector is learning to control digital assets and detect threats
May 8, 2026
Telegram
Twitter