Iron Fish: A bug written in 2019—how could it shut down an entire chain?
Iron Fish’s official X account posted a long thread in the early hours of October 31, Beijing time, announcing that it was officially ending all remaining support for the Iron Fish network that day. The reason was stated very candidly. Here’s my breakdown:
1. The cause: A few days earlier, they spotted unusual activity involving wIRON and the ChainPort cross-chain bridge. After reviewing the logs with ChainPort, they confirmed the root cause was an inflation bug in the Iron Fish chain itself.
2. The source: It traced back to a code commit in the Merkle tree implementation from early 2019. Due to a detail in how a note’s nullifier (a marker that invalidates it, which users normally rely on when spending funds) was calculated, an attacker could spend the same note more than once.
3. The exploit: The attacker repeatedly exploited the bug, consolidated the notes they held, and then exited through the ChainPort cross-chain bridge.
4. The aftermath: A patch has been submitted, with a detailed postmortem attached to the PR. The code repository was then shut down and archived.
A few candid thoughts:
· The most painful line: This code was within the scope of both internal and external audits, but the issue wasn’t found during review. “Audited” has never meant “bug-free.”
· The official thread didn’t say how much was lost. Don’t take the numbers floating around online at face value; I won’t try to estimate it either.
· A bug that lets someone “spend the same money more than once” went unnoticed for years. On a chain designed for privacy, it’s even harder for outsiders to spot at a glance. But that doesn’t mean “privacy chains are all unsafe”—don’t jump to conclusions.
· Iron Fish’s takeaway (this is the project team’s view): software that can’t be upgraded immediately—which includes most crypto software—is in a very dangerous position. The ability to find and exploit vulnerabilities is getting cheaper, while defenders may not be able to patch them fast enough.
Do the projects you hold have the ability to issue a patch quickly after an incident? Or will patch day, as in this case, also be the day they shut down?
#IronFish #隐私链 #Security Audit