Binance just published how $6.34 billion walked out the door.
June: an engineer searches for a popular AI coding tool, clicks a search result, and installs a tampered homebrew. Binance catches it, replaces the laptop, rotates the credentials. the attackers now know who works on the wallet team.
September: another engineer gets a job offer on a real job-hunting site. first-round interview with “HR” over live video. “HR” shares their social media, personal photos and videos included, so he trusts them. second round is with the “CEO” of a company that doesn’t exist. at the end of the call he’s asked to download a take-home “assignment” onto his work laptop.
the assignment quietly swaps out pyenv for a malicious copy. No antivirus flags it.
october 20: the attacker uses binance’s own internal AI tool to get into two more engineers’ machines. One of them has a container deployment token sitting on his laptop.
october 29: container deployed. Signing service reached. $6.34 billion moved.
Binance shut off withdrawals. the money kept moving anyway, because the attacker had already given their own smart contract permission over a hot wallet, on-chain. binance’s off switch didn’t reach that far.
then they tried to revoke the permission. the wallet uses MPC, so there’s no single private key to sign the revoke with. they had to build a revoke procedure on the spot while funds were still leaving.
last stolen ETH went through at 23:56 UTC. almost four hours after the first transfer.
Phew!
I asked Sol, Opus, Fable 5.1 and Astra the same complicated question about how to improve our edge network stack.
Astra and Fable got to similar correct solutions, Fable needed to be nudged and guided. Astra was about 10x faster. @AnthropicAI@OpenAI