T
iTokenly

Bitget (hot and warm wallet breach) hack — September 2026

Verified — 17 sourcesLast checked October 6, 2026

Incident facts

Date of incident
Target typeCentralised exchange
Loss$387,500,000Price at time of incident
MethodInfrastructure compromiseAn attacker used a zero-day in one third-party security product and an employee identity on a second to reach Bitget's wallet job server, where a custom tool forged risk-control parameters and pushed withdrawals through the exchange's own signing process; the signing keys were not compromised
ChainsMultiple chains, XRP Ledger, Ethereum, BNB Chain, Avalanche, Tron, Other
Attributed toNorth Korea (DPRK-attributed per Chainalysis; highly likely per Elliptic)Alleged
OutcomeUsers reimbursed

What happened

Bitget, a centralised exchange, lost about $387.5m from part of its hot and warm wallet infrastructure on 24 September 2026. Its systems flagged the unauthorised transfers at 18:31 UTC. Cold wallets were not touched. Bitget first put the loss at $351.6m and raised it on 25 September, after on-chain tracing found Zcash and Tron transfers made during the original incident that the first count had left out; it said no further unauthorised transfers had taken place. It suspended withdrawals while keeping deposits and trading open, and says customer balances are unaffected because the loss falls within its User Protection Fund, which it put at more than $464m, held as 5,500 BTC, when the incident was disclosed. Blockhead described it as the largest breach of a centralised exchange so far this year.

Bitget's first account, given by chief executive Gracy Chen on 25 September, was that the attacker had compromised a backend system in the wallet infrastructure and used it to feed forged transfers through the exchange's own authorisation process; private-key compromise was ruled out. Interim reports by Mandiant and SlowMist, which Bitget published on 30 September, show how the system was entered. SlowMist found the earliest malicious activity in logs dated 31 August, when a zero-day vulnerability in a service on a node of a third-party security product let the attacker run a hidden script and read a database password; the same activity recurred on two more nodes on 23 and 25 September. At about 16:07 UTC on 24 September the attacker used an internal employee's identity to reach the management platform of a second security product and inject commands, and Mandiant describes a web shell and command-and-control channel on that appliance, used to move onto Bitget's production wallet job server and install malicious packages. From files the attacker had deleted, SlowMist recovered a withdrawal tool tailored to Bitget's wallet logic that forged risk-control parameters; it began running at 17:49 UTC. The signing keys held. What failed were the systems trusted to tell them what to sign.

According to a breakdown by the on-chain tracker Lookonchain, reported by Blockhead, the stolen assets span nine tokens: 102.93 million XRP (about $157.5m), 31,890 ETH ($85.8m), roughly $75.5m in USDT, USDC and USDT0, 3,000 XAUt, 12,719 BNB, 821,012 AVAX and 20.59 million TRX. That comes to about $357m at 25 September prices and includes no Zcash; Bitget's revised $387.5m, which adds the Zcash and Tron assets its first count missed, is the figure recorded here. SlowMist tied the theft to eleven EVM addresses, seven XRP Ledger addresses and one Tron address, and reported the attacker converting EVM-chain assets into ETH. Bitget's own list, updated on 30 September, names 13 assets across 11 blockchains taken from 12 hot and warm wallet addresses, adding ATOM, ALGO and TIA, and puts the total at about $388m.

Two blockchain analytics firms have linked the theft to North Korea. Elliptic said on 25 September that it was highly likely to be DPRK-linked, citing on-chain connections between the stolen XRP and ether from an earlier DPRK-attributed theft, first reported by the on-chain investigator Specter, and between the stolen funds and addresses used to launder earlier DPRK-attributed thefts, including the 2025 Bybit hack. Specter also linked the routing of the stolen XRP to funds from the July 2026 AFX Trade hack recorded elsewhere in this registry. On 1 October Chainalysis, which says it has been working with Bitget and law enforcement partners to trace the funds, described the attack as DPRK-attributed. Chen said in a livestream that some IP addresses used in the attack closely matched VPN patterns associated with a North Korea-linked group, while stressing that this was not confirmed. The Mandiant and SlowMist reports of 30 September do not attribute the attack, Chen told CNBC on 2 October that further details were still needed, and no government has attributed it, so the attribution is recorded as alleged.

The first on-chain transfer came at 18:31 UTC and, by SlowMist's count, the last at 21:23 UTC, almost three hours later. Bitget's reconciliation system caught the discrepancy at 19:05 UTC and blocked withdrawal requests, but the transfers ran on until 21:23; after that the attacker tried and failed to push two fabricated bitcoin withdrawals through the wallet database. Bitget reopened withdrawals in phases, each at 08:00 UTC: bitcoin on 28 September, ether on Ethereum, BNB Chain, Arbitrum, Base and Optimism on 29 September, USDT on Ethereum, BNB Chain, Solana and Tron on 30 September, and all remaining tokens, fiat and C2C trading on 2 October, which Bitget said completed the phased plan. On 30 September Bitget said it had restored its Protection Fund to more than $300m with its own capital; by Bloomberg's calculation from the fund's disclosed addresses, covering the loss had drawn it below $200m. Recovery is limited. Chen told CNBC on 2 October that about $1.1m had been frozen, which is not the same as returned, and that she was not expecting to recover a lot; NEAR Intents had separately said it froze about $503,000 and blocked more than $50m of attempted transfers, which then moved through other routes. On 2 October the compliance firm AMLBot reported that about $697,000 had been stranded when the attacker sent about 267,000 USDC and 160 ETH to Chainflip deposit channels on the wrong networks; Circle has since blacklisted the address holding the USDC, and no contract on Arbitrum can sweep the ETH. Frozen and stranded funds are not recorded as recovered. With withdrawals open again in full and the loss absorbed by Bitget, the outcome is recorded as users reimbursed; none of the stolen assets has been recovered.

Law enforcement

Bitget says it has flagged the receiving addresses and notified law enforcement agencies and on-chain security firms

Sources

  1. CoinDeskSecondary · retrieved 2026-10-06
  2. BlockheadSecondary · retrieved 2026-10-06
  3. CryptoSlateSecondary · retrieved 2026-10-06
  4. Bitget on XPrimary · retrieved 2026-10-06
  5. CryptoSlateSecondary · retrieved 2026-10-06
  6. The Crypto TimesSecondary · retrieved 2026-10-06
  7. Bitget: update on the Mandiant and SlowMist reportsPrimary · retrieved 2026-10-06
  8. SlowMist investigation progress reportPrimary · retrieved 2026-10-06
  9. Mandiant incident response status reportPrimary · retrieved 2026-10-06
  10. Bitget incident timelinePrimary · retrieved 2026-10-06
  11. CointelegraphSecondary · retrieved 2026-10-06
  12. CNBCSecondary · retrieved 2026-10-06
  13. crypto.newsSecondary · retrieved 2026-10-06
  14. EllipticSecondary · retrieved 2026-10-06
  15. ChainalysisSecondary · retrieved 2026-10-06
  16. AMLBot on XSecondary · retrieved 2026-10-06
  17. Bitget announcement, 2 October 2026Primary · retrieved 2026-10-06

Official post-mortem: https://www.bitget.com/support/articles/12560603896305

Changes to this entry

  • Recorded the morning after the incident, from Bitget's own figure of $351.6m; Lookonchain's asset breakdown at later prices, about $357m, is kept as the upper end. Provisional: Bitget has promised a full incident report, and the mechanism, the final figure and the outcome may all change when it appears.
  • Loss raised from $351.6m to $387.5m, Bitget's revised figure of 25 September, which adds Zcash and Tron transfers made during the incident that its first count left out. Lookonchain's $357m is no longer above the recorded figure and has been dropped as the upper end. Added the phased withdrawal schedule of 26 September and the recovery bounty. Still provisional until Bitget publishes its incident report.
  • Added the interim Mandiant and SlowMist findings that Bitget published on 30 September: entry through a zero-day in a third-party security product and an employee identity on a second, then a custom withdrawal tool on the wallet job server. Added the transfer timeline, Bitget's updated asset list and the reopening of BTC and ETH withdrawals on 28 and 29 September. Amount unchanged.
  • Added the reopening of USDT withdrawals on 30 September, the restoration of the Protection Fund to more than $300m, and the chief executive's figure of about $1.1m frozen, which is not counted as recovered. Noted that the Mandiant and SlowMist reports do not attribute the attack. Amount and outcome unchanged; the final withdrawal phase, scheduled for 2 October, had not been confirmed as open when this was written.
  • Corrected the attribution paragraph, which said no attribution had been published: Elliptic assessed the attack as highly likely DPRK-linked on 25 September, and Chainalysis, working with Bitget and law enforcement, described it as DPRK-attributed on 1 October. Attribution changed from suspected to alleged. Added the roughly $697,000 stranded in misdirected Chainflip deposits, which is not counted as recovered. Amount and outcome unchanged; Bitget had still not confirmed that the final withdrawal phase, scheduled for 2 October, had opened.
  • Outcome changed from unresolved to users reimbursed. Bitget announced at 08:00 UTC on 2 October that withdrawals of all remaining tokens, fiat and C2C services had resumed, completing its phased plan, so users can withdraw in full and the loss falls on Bitget. Amount and attribution unchanged; nothing stolen has been recovered.

Cite this

This data is published under CC BY 4.0. You may reuse it, including commercially, as long as you credit iTokenly and link back.

iTokenly Hack Registry, "Bitget (hot and warm wallet breach) hack — September 2026", iTokenly, accessed 2026-10-10, https://itokenly.com/hacks/bitget-september-2026
https://itokenly.com/hacks/bitget-september-2026

Permalinks never change. If an entry is renamed, the old address keeps working.

Spotted an error? Write to [email protected]. Corrections to published figures are logged on this page. See the methodology for how entries are checked.