How the attack unfolded
The attack began in June when an engineer downloaded a malicious Homebrew installation. Binance detected the malware, replaced the device, and rotated affected credentials, but the engineer's role and that of colleagues on the wallet infrastructure team were exposed to the hacker.
In September, another software engineer was contacted through a legitimate job-hunting platform by someone posing as a project director. The individual arranged a series of job interviews with a fictitious company. During a live video interview, a fake HR representative shared a social media account with personal photos and videos to build trust. In a second interview on a popular social chat app, someone claiming to be the CEO instructed the engineer to download an assignment containing a malicious code repository. The code executed on the engineer's work computer during setup.
According to Binance, the malware replaced a legitimate development tool component with a malicious version, which executed commands and established communication with an attacker-controlled external server. Binance's endpoint security tools did not immediately detect the malware.
On October 20, the attackers used the compromised computer and an internal AI tool to gain access to the computers of wallet DevOps engineer A and another wallet software developer, Engineer C. Engineer A had a container deployment permission token on his computer.
On October 29, the attacker accessed Engineer C's computer, used stolen credentials from Engineer A to deploy a container, and triggered a script to launch the cryptocurrency-stealing attack.