Skip to main content

Security: how hackers stole 6.3 billion from Binance with a fake job interview?


$6.3 billion. The biggest heist in crypto history. And it all started with an engineer looking for an AI tool to help him code. On Tuesday, November 3, Binance published its first report on the October 29 heist, and frankly, it sounds like the plot of a movie. Except the villain never forced a single door. They opened them for him, one by one, over five months. And behind it all, according to the FBI, is North Korea.

A young engineer in a hoodie smiles during a video job interview on his laptop, while the supposed boss on the screen is actually a store mannequin with a painted-on smile in front of a fake office backdrop

In September, a Binance engineer interviewed for a company that didn't exist

Four days ago, the day after the heist, we knew almost nothing. The report gives the dates, the victims and the tools.

June: a booby-trapped AI tool, found on a search engine

First act, in June. An engineer on the team that manages Binance's wallets, the vaults where customers' crypto sleeps, is looking for an AI-powered programming tool. He goes through a search engine, clicks what looks like the right result (an ad, according to NBC), and installs a tampered copy of Homebrew. This particular trap isn't even new: as early as May 1, the SANS Institute's alert center, a cybersecurity reference, described a fake ad for Homebrew that led straight to a password stealer. Homebrew is the tool that almost all developers on Mac use to install their software, a bit like their command-line App Store. The real version is free, clean and very well known. This one contained a gift.

Close-up of a computer screen displaying a list of search results, the first of which, an ad titled « Free AI coding tool », has a real fishing hook baited with a worm coming out of the screen, while a hand on the mouse is about to click

The first link isn't always the right one, especially when it's an ad

Good news anyway: Binance's security team spotted the anomaly. The computer was replaced, the passwords changed. But the hacker had had time to note down one precious thing: who worked on this team, and on what.

September: the fake job interview

Second act, in September. This time, it isn't Binance doing the hiring, it's the opposite: one of its own engineers is looking for a new job, IN ANOTHER COMPANY. He has a profile on a perfectly serious job platform, with his time at Binance prominently displayed. A “project manager”, supposedly working for this other company, contacts him. First video interview with someone from human resources, who shows him their account on a social network, with their personal photos and videos, to make him feel comfortable. Second interview in a messaging app, with the company's boss… who doesn't exist. Binance says it itself: it had never seen such a carefully crafted trap. Then comes the classic step in our line of work, when you apply elsewhere: the little technical test to do at home, to prove you know how to code. Except this company doesn't exist and the project they send him to download is booby-trapped. He retrieves it, runs it on his computer, the one Binance provided him for work, and that's it. The exercise code contained spyware.

And not some low-rent spyware! During the installation, it quietly replaces pyenv, a small utility Python developers use every day to switch from one version of Python to another, with a booby-trapped copy that has the same name and is 70 bytes larger, barely a line of text. This copy secretly communicates with a server belonging to the hackers. The company's antivirus didn't see anything, because the program was brand new and no antivirus knew about it yet. And the hacker erased his traces on the way out. The kind of burglar who mops the floor before closing the door behind him.

Now, I have to admit that this is clever. Every developer has been through the technical test. You're asked to download a project and run it, you do it without thinking on the machine you have at hand, because you want to land that new job. That's exactly why it works.

On a desk, an open kraft paper envelope contains a set mousetrap with a USB drive as bait, in front of a laptop

The “homework assignment” contained what was needed to take control of the work computer

October: the internal AI serves as a master key

Third act, October 20. From the infected computer, the hacker uses an internal AI tool from Binance to take control of two other engineers' machines. The report does not detail how, but the idea is simple: a corporate AI assistant often has access to a lot of things, so it can help everyone. Whoever controls it inherits its keys. And guess who one of these two machines belongs to? The June engineer, him again. The hacker knew exactly who to target. On his computer, he finds the right to deploy a “container”, that is, to launch a small program directly on the company's servers, where withdrawals are signed.

Final act, October 29. Between 6:15 p.m. and 8:56 p.m., Belgian time, the hacker gets onto the third engineer's computer, uses the right stolen on October 20, deploys his container and runs a script. This script talks directly to the service that signs wallet transactions, without going through the normal withdrawal process. $6.3 billion goes out. As Richard Teng, Binance's co-CEO, sums it up: “It wasn't a mistake or an intrusion, it was a campaign lasting several months.”

On a long office table, a row of falling dominoes starts from a small open laptop and runs to a heavy open bank vault at the end of the table

Four steps over five months, from an engineer's computer to the vault

Why wasn't closing withdrawals enough?

The report tells the story of the evening almost minute by minute, and that's where I really opened my eyes wide. At 9:05 p.m., five Binance wallets send 233 million XRP to the hacker. At 9:09 p.m., it's all over. These wallets are the “hot” wallets, the ones that stay connected to the Internet to pay everyday withdrawals, a bit like a shop's cash register next to the safe. About 970,500 SOL and 44 million OP follow, two other cryptocurrencies. Binance's internal alarm goes off at that point, and the teams start looking. But another 18,270 bitcoins leave. To give you an idea, that's a little less than one bitcoin out of every thousand of all those that will ever exist.

Binance suspends withdrawals, calls its partners to freeze whatever can be frozen. And yet, the money keeps going out. The last transfer, 2,961.9 ETH, is not confirmed until 12:56 a.m. Almost four hours between the first and the last!

Why? Because the hacker had left a power of attorney behind him. On Ethereum, a recent rule called EIP-7702 allows a wallet to entrust part of its powers to a small automatic program, without giving it its key. It's practical in everyday use, for example to carry out several operations at once. The hacker used it to give HIS program the right to empty a Binance wallet. He needed 50 preparation signatures, and after that, his robot operated all by itself.

It's exactly as if you had your bank card cut up, but the thief had already set up a direct debit on your account: the card is dead, the direct debit still goes through. Closing withdrawals was cutting up the card. The power of attorney, it was recorded in the blockchain, that great public ledger where every transaction is written, and it didn't give a damn about Binance's counters.

On a kitchen table in the evening, a hand has just cut a bank card in half with scissors, and right next to it a smartphone displays a stack of identical notifications saying Direct debit accepted

The card is cut up, the direct debits still come through: that's what happened at Binance that night

And to cancel that authorization, they had to sign with the wallet itself. Except that at Binance, there isn't ONE key: it's split into several pieces, kept by several machines that have to agree to sign (specialists call this MPC, multi-party computation). Usually, that's great protection, since stealing a single machine isn't enough. That night, it became a stumbling block. Imagine a safe that only opens with three keys turned at the same time, while the thief is already in the room. The teams had to invent a procedure in a hurry, and the authorization wasn't canceled until 1:10 a.m.

Frankly, this is my favorite part of the report. Binance could have written “we stopped withdrawals” and moved on. It explains why that wasn't enough, what slowed it down, and that it's reviewing its emergency plan. All the platforms using the same tools have just received a free lesson. Well, free for them!

Who's behind it? North Korea, according to the FBI

On October 31, two days after the heist, the FBI named the culprit: North Korea, and more specifically a group of hackers the Americans call TraderTraitor. Their specialty is precisely fake job offers and fake developer tools. The FBI published more than 600 addresses where the stolen money is sitting, and is asking all platforms to block anything that comes out of them.

But the figure that stunned me most is in Binance's report. Since the beginning of the year, its security team has identified and blocked 57 attempts linked to North Korea. More than one a week! Fake interviews, fake tools, fake video conferencing apps, booby-trapped browser extensions. It stopped 57 of them. Just one had to get through.

What saves the day

Most important for customers, first. Binance is taking the loss, not its users, and it says it had set aside more than the entire amount. As of October 31, 98% of the affected crypto had already been put back, and you can check that on its proof of reserves page, where the platform publishes enough information to check that it really holds its customers' assets. The rest is rarer crypto, which it's in the process of buying back. Around 2.85 billion was frozen or intercepted along the way, and according to The Block, withdrawals have been gradually reopening since November 3.

And I think the report itself is good news. Five days after the heist, Binance publishes who got fooled, how, and in what order. A large number of companies would have settled for a “sophisticated security incident”. Here, any company can read the scenario and check whether it has the same holes. Binance rebuilt the entire wallet system in a fresh environment, rebuilt its internal AI tool and everyone's permissions, replaced the affected computers, scanned all its employees' computers, and brought in independent experts to check its investigation. It's also preparing a research fund for AI security in crypto, with major AI companies. Some details remain secret, and I think that's normal: a report that was too complete would serve as an instruction manual for the next one.

What this teaches me, as someone who codes every day

This scenario speaks directly to me. I have three Claude Code sessions open permanently, and AI agents running on my server with quite a lot of permissions. And three days ago, I was already telling you how a fake Claude Code extension had trapped thousands of developers. The same pattern keeps coming back: hackers are no longer targeting the vaults, they are targeting the people who have the keys, and their tools.

And don't think this only concerns Binance engineers. The same trap exists in a consumer version: the fake ad that comes first when you search for “download VLC” or “free ChatGPT”, the fake job offer on WhatsApp that asks you to install an app “for the test”, the fake customer service agent who wants to take control of your PC. Three reflexes, whether you're a developer or not:

  • software is installed from its official website or from the App Store, never from an ad at the top of the search results. On Google, sponsored links carry the label “Sponsored”: skip them;
  • a recruitment exercise is never run on your work computer. A separate machine, or at least an isolated environment, a sort of sandbox that nothing gets out of. And a real recruiter will never ask you to install a program for an interview;
  • an AI assistant only has the permissions it needs for that day's task. If it can do everything, whoever controls it can do everything too.

And if you receive a LinkedIn message tomorrow offering you a dream job, with a very nice boss on a video call and a little project to download “just to see”: congratulations, you may have been spotted. But not necessarily by a recruiter!

Sources

Article written with help from Claude Code, proofread and corrected by me.

Join the conversation

You need an account to comment on this article. Creating one is free and takes under a minute.

  • The XMLTV file, free to download every day
  • Comment on articles and reply to other readers
  • Get an e-mail when an article you follow is updated

No comments yet.

Une erreur s'est produite. Cette application peut ne plus répondre jusqu'à ce qu'elle soit rechargée.Veuillez contacter l'auteur. Reload 🗙