Five crypto wallet apps built on a flawed version of a widely used code library are now confirmed exposed to the cryptojs wallet bug ill bloom, a vulnerability that researchers at Coinspect disclosed with a CVE and a severity score of 9.0 out of 10 on Wednesday, August 5. The bug has already been linked to roughly $5.7 million stolen from more than 2,100 wallets across two separate drain waves, and that figure is explicitly a floor, not a final total.
The root cause sits inside CryptoJS, a JavaScript library many wallet apps use to generate the random numbers behind a wallet's seed phrase — the master key that controls every address and every fund tied to it. Versions before 4.0.0 (with the narrow exception of 3.2.0 and 3.2.1) use a weak, predictable random-number generator instead of a cryptographically secure one. CryptoJS briefly fixed this between 2014 and 2020, then reverted to the weak method in version 3.3.0 and has been effectively unmaintained since 2023. Any wallet app that built its key generation on one of the affected versions has been quietly minting seed phrases that are brute-forceable, not random in any meaningful sense.
What happened with the cryptojs wallet bug, "Ill Bloom"
Coinspect found five named apps affected: NanChat, Bexo, Bitcoin Libre, RRWallet and Milo. Attackers didn't need to target anyone specifically — they scanned the blockchain for addresses whose keys matched the predictable patterns the weak generator produces, then drained whichever ones held funds. That happened in two identifiable waves: about $3.14 million from 431 accounts around May 27, then another $2.55 million from 522 seeds between May 30 and July 13. This is opportunistic, automated theft, closer to picking locks that were never really locked than to a targeted hack.
The vendor response has been uneven, and that split matters more than the headline dollar figure. Coinspect privately flagged the bug to vendors on June 10, nearly two months before Wednesday's public advisory, and NanChat shipped a fix two days later, on June 12. Bitcoin Libre's fix is already live. Bexo has published a fixed build (20.1.0), though it had not yet reached app stores as of this week — so an update may not yet be available to every affected user. RRWallet and Milo, by contrast, are discontinued apps with no patch coming at all — their users have no official upgrade path, only the option to manually move funds to a new, safely generated wallet.
Is my wallet on the affected list?
Coinspect published a checker tool at illbloom.org where users of the five named apps can look up whether their address shows up in the confirmed-drained dataset. It's worth using, but treat a clean result as reassuring, not conclusive. The dataset only reflects addresses that have already been detected and attributed on-chain — it can't tell you whether your specific seed is weak, only whether it has been drained so far. If you used any of these five apps before their patch dates (or at all, in the case of RRWallet and Milo), your wallet's original seed should be treated as potentially compromised regardless of what the checker shows.
Does updating the app protect funds already generated?
This is the question that matters most, and the honest answer is no. Updating to a patched version of one of these apps stops the app from generating new weak seeds going forward — it does nothing to fix a seed that already exists. The randomness problem lives in the moment a wallet is created, not in the app's current code. A seed phrase generated under the old, predictable method is exactly as crackable after the update as it was before. Patching closes the tap; it doesn't drain the puddle already on the floor.
That gap is the real story here. The metric worth tracking isn't how many of the five apps have shipped a fix — it's how many exposed users have actually moved their funds to a freshly generated wallet. That number isn't published anywhere, and there's good reason to think it's low: migrating funds requires a user to understand the distinction between "the app is patched" and "my money is safe," and most people reasonably assume those are the same thing.
Why patching doesn't undo the damage
For anyone who used one of the five affected apps before its patch date, the only real fix is to generate a brand-new wallet on updated, unaffected software and move funds over — not to keep using the old seed inside a newly updated app. That's true even for NanChat users, whose app is now safe to generate new wallets with; any wallet created before June 12 under the old code still carries the old, weak seed. RRWallet and Milo users face a harder version of the same problem, since there's no official notice telling them to act.
What's still unknown
Coinspect's $5.7 million figure will likely keep climbing, not because the bug is spreading to new apps, but because detection lags the actual draining — attackers keep sweeping addresses that were funded before their owners migrated. No additional apps beyond the five have been named, though CryptoJS itself remains unaudited and unmaintained, which means other wallet software built on the same dependency hasn't necessarily been checked. The near-term story to watch isn't a new discovery — it's whether migration among exposed users catches up to the theft before it does.
None of this requires panic if you've never touched these five apps. But if you have, the update notification in your app store is not the finish line — moving your funds to a freshly generated wallet is.
Sources
- https://thehackernews.com/2026/08/cryptojs-weak-rng-behind-57-million-in.html
- https://www.coinspect.com/blog/ill-bloom-investigation/
- https://illbloom.org/
- https://thehackernews.com/2026/07/attackers-exploit-ill-bloom.html
- https://en.coin-turk.com/hackers-exploit-cryptojs-flaw-to-steal-5-7-million-from-2100-crypto-wallets/
- https://startupfortune.com/the-ill-bloom-vulnerability-has-already-drained-over-5-million-from-crypto-wallets-and-thousands-more-addresses-remain-at-risk/