SIR Hack
What happened
On March 30, 2025, SIR (Synthetics Implemented Right), a leveraged-token protocol on Ethereum, lost about $355,000, which was reported as its entire TVL. The bug was in how the Vault contract used EIP-1153 transient storage to authenticate Uniswap V3 swap callbacks.
During a mint, the Vault wrote the expected Uniswap V3 pool address into transient slot 0x1 so that uniswapV3SwapCallback() could check msg.sender against it. Later in the same transaction the code wrote the mint amount into that same slot. After that, the callback's caller check compared msg.sender against a number the attacker could choose, not against the pool. The attacker picked a mint amount that matched a contract address they could deploy with CREATE2, then called the callback from that address and drained the vault's USDC, WBTC and WETH.
The stolen tokens were swapped to WETH through ParaSwap and Odos Router V2 and moved into the Railgun privacy protocol. The founder publicly offered the attacker a $100,000 bounty to return the rest, saying the self-funded project could not survive otherwise. No response had been reported by April 1, 2025.
Attack transaction: 0xa05f047ddfdad9126624c4496b5d4a59f961ee7c091e7b4e38cee86f1335736f
Attacker: 0x27defcfa6498f957918f407ed8a58eba2884768c
Vault: 0xb91ae2c8365fd45030aba84a4666c4db074e53e7
How it happened
- The attacker deployed their own ERC20 tokens and a Uniswap V3 pool for them, then initialized a new SIR vault market that used one of those tokens as collateral.
- They minted through the
Vault. The mint path stored the pool address in transient slot0x1, then overwrote the same slot with the mint amount (95759995883742311247042417521410689). - That amount, read as an address, is
0x00000000001271551295307acc16ba1e7e0d4281. The attacker usedCREATE2to deploy a contract at exactly that address. - The contract called
uniswapV3SwapCallback()directly. The checkmsg.sender == TLOAD(0x1)passed, so theVaulttreated the attacker as the legitimate pool and paid out USDC, WBTC and WETH. - The proceeds were swapped to WETH and sent into Railgun.
Protocol details
Security review history
- Egis Security View report
Evidence
Proof of concept
1 availableSources
- report Twitter/X Alert x.com
- report @leveragesir incident report x.com
- report @leveragesir incident report x.com
- analysis DeFiLlama defillama.com
- analysis SIR Protocol Exploit: Analyzing the Transient Storage Vulnerability research.blockscope.co
- analysis Synthetics Implemented Right (SIR) Hack Analysis blog.solidityscan.com
- analysis SIR.trading offers attacker $100K bounty after losing entire TVL to exploit crypto.news
Understand the attack patterns
Build your security review skills
Work through hands-on labs covering real exploit mechanics, review techniques, and defensive patterns.