The most revealing transaction in the NuNet theft wasn't the 408.5 million NTX mint. It was the four subsequent sales that returned 0.30 ETH. Thirty-eight point five five million tokens. Three hundredths of an Ether. That is the sound of an attacker meeting a liquidity vacuum.
This incident isn't a hack. It's a key-management autopsy.
Between September 19 and 20, an attacker drained 8.72 million FET from a SingularityNET bridge contract, took control of a dormant NuNet minter key, and printed 408.5 million NTX โ roughly 42% of NuNet's entire recorded supply. Then they tried to sell it. The market barely noticed. Follow the gas, not the hype. The gas says this was coordinated, premeditated, and ultimately, only partially profitable.
But the deeper story is structural. It exposes what I call the zombie key problem: credentials that never die, just wait.
The affected contract is TokenConversionManagerV3 โ SingularityNET's Ethereum-side lock-release bridge for AI-related tokens. It's a simple lock-mint/release design: FET is locked on Ethereum, then released or minted on the target chain via an authorized backend signature. The architecture is not novel. It relies on a single backend authorization key.
That's the first red flag. Mainstream bridges like Across or Stargate use multiple validators, optimistic verification, or ZK proofs. This one trusted one key. Code is law, but behavior is truth. The code behaved exactly as designed.
On-chain forensics firm Athena traced the exploit. Their report states that the loss was caused by a compromised backend authorization key, not a bug that allowed bypassing the bridge contract. The contract's intended logic executed perfectly. The problem was that the authorization logic was sitting on a key that someone else held.
To make matters worse, the contract had two structural flaws: - A 1M FET cap on outbound transfers wasn't applied to conversionIn โ the inbound release function. - The signed messages weren't bound to a final recipient address. Any valid authorization could direct tokens to any wallet.
Combined, a single key compromise became a single-transaction drain of 8.72M FET, worth roughly $1.55M at the time. That's the FET side. The NTX side is worse.
This isn't a random DeFi shop; it's the Artificial Superintelligence Alliance โ Fetch.ai, SingularityNET, and Ocean Protocol merged into a unified AI-crypto ecosystem. But the architecture of the bridge didn't scale with the ambition.
The Minter Key That Wouldn't Die
The NuNet minter key had been dormant since March 2023. Eighteen months of silence. No rotation, no revocation, no deletion. Then, on September 19, it woke up. It minted 408.5 million NTX in one move โ approximately 42% of NuNet's recorded supply.
In my years auditing smart contracts, dormant keys are the most predictable failure mode. They are the scissors left in the stitching after surgery. Teams rotate active keys; they forget the old ones. That's how the 2022 Nomad bridge fell, how Munchables escalated, and now how an AI consortium loses its minting authority.
The mint itself wasn't a code exploit. It was a credentials failure. The minter key had the authority to create tokens. Someone took that authority and exercised it. No exploit. No reentrancy. No integer overflow. Just a stale private key and a supply cap that didn't exist.
The Coordination Tell
The timeline proves this wasn't a random key dump. Forty-five minutes before the FET bridge was drained, the NuNet minter sent 0.3667 ETH to the eventual receiving wallet. Another associated account moved 24.3 million NTX to an exchange-linked address. Then the FET bridge was cleared. Then the NTX sales started โ before the bridge drain was even reported.

That's not a coincidence. That's orchestration. The attacker controlled two separate credential sets simultaneously: the SingularityNET bridge key and the NuNet minter key. The probability of two independent key leaks occurring in the same window is negligible. The most likely explanation: a shared key management infrastructure or unified KMS. That's an ecosystem-level exposure, not a single-project incident.

Let me be precise about the signature flaw. The signed payload omitted the final receiver address. In a properly constructed bridge, the signature should commit to a recipient, preventing an attacker from re-signing tokens to themselves. Here, the attacker held the key, so they simply signed their own address. When the entire trust model rests on a single secret, the secret becomes the protocol. No protocol survives its own key being handed to the adversary.

The Liquidity Paradox
The attacker printed 408.5 million NTX, but realized proceeds were pitiful. Over 217 million NTX was pushed into decentralized liquidity venues. The first wave sold; pools dried up. Four subsequent sales totaling 38.55 million NTX returned about 0.30 ETH. Another 10 million NTX via Mayan Protocol delivered roughly 940 USDT. The attacker still held 230 million NTX, plus around 144 ETH.
This is the on-chain equivalent of stealing a castle and then discovering there are no buyers for castles. The attacker captured enormous nominal value but hit a wall of shallow liquidity. That's a useful reminder for anyone who confuses token supply with token wealth. Inventory without buyers is just a number on a ledger.
Yet the damage is very real. 42% of all recorded NuNet supply is now contaminated supply. The token's nominal supply cap is a fiction. NuNet may propose a burn, a clawback, or a forgery declaration, but doing so requires either governance authority or a fork โ and the minter key that would execute it is the same one that leaked. The ledger is now permanently polluted.
The Five-Hour Gap That Speaks Volumes
Athena's report includes a damning detail: approximately five hours after the attack, the compromised FET bridge authorizer and NuNet minter credentials had not been rotated or revoked. Five hours. In an era where a phishing attack on a single protocol is enough to halt every bridge on the market, five hours of silence is a century. Think about that.
Why does that matter? Because the same authorizer was still trusted by the bridge contract. Any new liquidity injected into that contract would be exposed to another signature extraction. The attacker's window wasn't closed; it was simply paused.
This is a recurring operational failure across the industry. Teams treat key rotation as a quarterly compliance checkbox, not an emergency kill switch. The evidence is on-chain: a dormant key from March 2023, a compromised key at 17:00, and no rotation by 22:00.
Now the contrarian angle. The most dangerous conclusion to draw from this event is that the FET bridge was the target. It wasn't. FET losses were relatively small โ $1.55M against the ASI ecosystem's scale. The NTX mint is the real wound. But even that is a symptom.
The true exposure is the shared infrastructure. Fetch.ai says its own contracts remained operational. SingularityNET acknowledged the facility was its bridge. NuNet was hit through its minter key. But WMTX? Bitvavo suspended WMTX deposits, withdrawals, and trading, suggesting contagion. Forensic evidence didn't prove compromise, but didn't exclude it. "Not proven" isn't "safe."
The industry's obsession with "smart contract audits" is misplaced. Auditors review code. They rarely audit key lifecycles. This incident will be retold as a bridge hack, but it was a governance failure. Code is law, but behavior is truth. The behavior here was operational negligence. Yet we keep doing it.
The market will eventually price this as a bridge hack. That's the wrong ledger. This is a key management failure, and until the entire industry stops treating key lifecycle like a DevOps afterthought, we'll keep seeing the same autopsy.
Takeaway
Watch the next 72 hours. Three signals matter: - First, credential rotation announcements from SingularityNET and NuNet. Without full rotation, the bridge should not be refilled. - Second, NuNet's response to the 408.5 million supply pollution. Burn, forge, or ignore. - Third, Bitvavo's WMTX decision. That is the smoke detector for ecosystem contagion.
We don't predict the future; we read its past. The chain says the attacker holds 230 million NTX and 144 ETH. They will move on any new liquidity. Alpha isn't found; it's excavated from the noise. The noise here is the 0.30 ETH transaction. The signal is the zombie key that never died.