Bybit cold-wallet hack
A routine cold-to-warm wallet transfer
Every request on this page is a real attack. Read it in your wallet, then press REJECT. Never approve. Use a wallet that holds nothing.
ERA Wallet · Scam Drill
Ten real attacks — the exact transactions and signatures that emptied wallets, from the $1.5 B Bybit hack to everyday drainer phishing. Send one to your own wallet and watch what its confirmation screen tells you. Then reject it.
WalletConnect v2 · no sign-up · nothing leaves this page but a request to display
How it works
Scan the QR with a wallet that holds nothing, or open a wallet app on this phone. WalletConnect v2 — any wallet, any brand.
Ten real transactions and signatures. One tap delivers the exact bytes to your wallet's own confirmation screen.
Did the wallet warn you — or show details and nothing more? Tell us, and see what ERA Lens™ shows for the same bytes.
The attacks
Six are the exact bytes of transactions that emptied wallets, sent with your account as the signer. Four are hand-built regression cases from ERA's test corpus: the bare form of the drainer's approval, a phishing permit, a bare hash and an EIP-7702 delegation. Each card links its sources — read the case, send it, and reject it in the wallet.
A routine cold-to-warm wallet transfer
Routine GALA and USDT withdrawals from the exchange's Safe
A routine multisig housekeeping call on BNB Chain
A harmless-looking allowance bump on Lido stETH
Verify wallet ownership to keep your allowlist spot
A batched vault call that looks like a deposit step
'Approve this token to continue', the everyday drainer prompt
A gasless Uniswap signature: just sign, no transaction
Please sign this message to verify your wallet
Upgrade your wallet to a smart account
Most wallets refuse this request outright — and refusing is the right answer.
Your scorecard
ERA Wallet
On the device's own screen, offline, decoded from the contract itself — no raw hex, no blind trust. ERA Lens flags every case in this drill and locks the Sign button on a Danger reading.
Questions
Yes — if you follow the one rule: reject. The page delivers a signing request to your wallet over WalletConnect, the same channel any dApp uses, and nothing else. Your wallet draws its own confirmation screen; what you do on that screen is the whole test. Use a wallet that holds nothing, so that even a slip costs nothing.
Because a slip must cost nothing. Six of the ten attacks are real transactions, and two of the hand-built ones grant a real allowance: approve one from an account that holds tokens and the approval is real. A fresh wallet with no funds and no history turns a mistake into a lesson instead of a loss.
No. The page holds no RPC connection — no provider, no node, no way to broadcast. It hands your wallet a request to display. Only the wallet can sign, and only the wallet can broadcast, and only if you approve. Don't.
For a transaction: your wallet broadcast it. Go to revoke.cash, connect that account, revoke any approval it granted, and move whatever it holds to a fresh wallet. For a signature-only case: the signature is discarded here and nothing is broadcast — but treat it as a failed drill, because a real attacker would have used it.
From ERA's test corpus — the regression suite ERA Lens is checked against. The Bybit, WazirX, Radiant, stETH, PREMINT and drainer cases are real on-chain captures: the exact bytes, with the sender replaced by your account. The other four are hand-built regression cases from the same suite. Every card links its sources.
No. A wallet that refuses before drawing a screen has protected you, even when it did not say why. Some wallets reject a type-4 (EIP-7702) transaction outright; some refuse calldata they cannot simulate. Count it as a warning if the wallet told you why — and read the case anyway.
Anything that speaks WalletConnect v2: MetaMask, Trust Wallet, Rainbow, Rabby, Zerion, Uniswap Wallet, Binance Wallet, SafePal, Bitget, TokenPocket, Ledger Live and more. A hardware wallet behind its app works too — that is how ERA Wallet takes the drill.