CryptoReal
CASE FILE — Jun 26, 2026

How a Silent Bridge Fork Bled Secret Network for $4.67M — and Nobody Noticed for a Week

Roughly $4.67 million exited Secret Network on June 10th, yet the loss went undetected for a full week.

The root cause, according to Common Prefix's exploit report, was a bridge contract adapted in 2023 from Secret's standard snip20-ics20 code. During that adaptation, two security checks were stripped out and never restored — despite the code sitting publicly on GitHub the entire time. Exploiting that gap, an attacker minted seven tokens with no backing and converted them into real assets within roughly eighteen minutes.

No alert fired, no circuit breaker engaged, and the forked contract had never been independently audited. By the time anyone looked at the Axelar escrow account, the stolen funds had already been merged, swapped, and fragmented across roughly thirty separate transfers headed for exchanges.

Detection only happened on June 17th, when a routine cross-chain transfer failed — the escrow account simply didn't have enough left to fulfill it.

That seven-day blind spot raises an obvious question: how does a $4.67 million shortfall go unmonitored for a week before a failed transaction stumbles onto it?

Credit for reporting and analysis: Common Prefix, F12, Secret Network, Axelar Network, Yi, Rarma, and Ray Raspberry.

01The Discovery Nobody Went Looking For

The breach wasn't uncovered through monitoring — it surfaced because a transaction simply failed. At 15:39 UTC on June 17th, a full week after the initial exploit, a standard cross-chain transfer on Axelar bounced back.

The rejection reason was mundane on its face: "unable to unescrow tokens, this may be caused by a malicious counterparty module or a bug: please open an issue on counterparty module: spendable balance 803200wbtc-satoshi is smaller than 1000000wbtc-satoshi: insufficient funds." In plain terms, more tokens were attempting to leave Secret than had ever entered it.

Within twenty-one minutes, engineers confirmed that the IBC escrow account backing the Secret-SNIP connection had been emptied. By 16:48, investigators had traced the shortfall to seven IBC transactions from June 10th, all routed to one wallet — a week-old exploit only now coming into view.

Part of the delay is structural to how Secret Network operates: account balances and transaction data are encrypted by default. That meant the missing funds weren't observable on-chain until the failed transfer on June 17th forced the issue, after which the drained escrow account was confirmed.

Security researcher F12 summarized the dynamic on June 19th: "No exploit tx: Secret is a privacy chain, transfers and balances are encrypted, so the hack isn't visible on-chain." The week-long gap wasn't a mark of attacker skill so much as a byproduct of choosing a chain where balances are opaque by design.

By the point the error message appeared, the stolen assets had already been converted to ETH, spread across thirty separate wallets, and moved to three exchanges — the response window had effectively already closed.

Axelar Network disclosed the incident publicly on June 19th, and its emergency committee shut down both the Secret and Secret-SNIP connections. Per Common Prefix, Squid subsequently pulled Secret Network support from its front end, and law enforcement was brought into the case.

Secret Network's confidentiality features had long served its users' interests. On June 10th, that same opacity worked in an attacker's favor instead — and nobody realized it until the money was already spent.

02The Two Lines That Went Missing

A fork of Secret's standard snip20-ics20 module has been public on GitHub since January 2023. To work with Axelar, developers changed its underlying model — from locking tokens in escrow to minting wrapped tokens on arrival — a redesign that meant removing two functions that had made sense only under the original escrow-based logic.

Vulnerable contract: secret1yxjmepvyl2c25vnt53cr2dpn8amknwausxee83

One deleted function, parse_voucher_denom(&msg.denom, &packet.src), was meant to confirm that an incoming token's denomination path lined up with the packet's actual source channel. The other, reduce_channel_balance(...), would have limited minting to whatever amount that specific channel had legitimately received.

With both gone, the contract fell back on a simple allow-list check: if a token's name matched an approved denomination, minting proceeded — regardless of where the packet actually came from.

As Yi put it in a fourteen-part breakdown posted June 19th: "The contract asks 'is this denom supported?' It does not ask 'is this packet authorized?'" Since anyone can open an IBC channel without permission, that was the only opening the attacker needed.

The attacker spun up a counterfeit chain to fake deposits, opened a new IBC channel straight to the vulnerable contract, and submitted packets using token denominations already on the allow-list. The contract checked only whether the denomination was recognized — never whether the packet itself had legitimate origin.

This flaw dates back to the repository's very first commit on January 15, 2023, and the contract went live on mainnet on March 30, 2023. A bytecode migration on March 5, 2026, intended to add functionality, carried the same absent checks forward without change.

No independent security audit was ever performed on the forked code — three years and a live integration went by without anyone examining it closely.

Sums referenced in this case file

Rarma summed up the situation bluntly: "Secret Network let a couple of commented lines drain their Axelar-bridged TVL for $4.67M. It's been in their open-source repo since 2023." For that entire stretch, the contract's only real question was whether a denomination was on its list — never whether the packet delivering it was genuine.

03Eighteen Minutes to Empty the Escrow

Much of June 10th was spent by the attacker on setup rather than execution. Between 06:50 and 18:54 UTC, they established light clients, opened test channels, moved small quantities of native tokens, and mapped out the withdrawal path — roughly twelve hours of reconnaissance against a vulnerability that had been sitting exposed for three years.

At 19:01 UTC, the attacker activated a live client for their fabricated chain, labeled ibc-dev-allowlist-denom-1. By 19:05, channel-227 was open, connecting directly to the bridge contract.

The first forged packet arrived at 19:14, and the last cleared at 19:20 — six minutes to mint seven tokens, each set to match the total locked value of its corresponding saToken, with no actual collateral behind any of them.

From 19:33 to 19:36 UTC, the attacker routed all seven unbacked saTokens back out through channel-61 toward Axelar. Axelar's channel-69 escrow account then released the matching quantity of genuine assets automatically — Secret Network's own incident report notes that no alert, pause, or automated safeguard intervened at any point during this stage.

From there, 18 IBC transfers executed in three batches between 19:38 and 19:56 UTC routed the funds through Osmosis using packet-forwarding, then onward to Ethereum, where they were consolidated into approximately 2,350 ETH via CoW Protocol between 20:04 and 20:15 UTC.

Over the following thirteen hours, roughly thirty transfers of between 50 and 139 ETH each moved to newly created wallets, each one forwarding funds again downstream. The attacker also deployed decoy ERC-20 tokens using Unicode characters designed to resemble ETH and BNB — a cosmetic obfuscation attempt that added clutter without meaningfully hiding the trail.

Attacker's Ethereum wallet: 0x6c2eAB82bA2897A6E99FB6Af018020dA15123976

The proceeds ultimately landed at three exchanges: KuCoin received approximately 1,199 ETH — a KYC-compliant platform whose records can be subpoenaed. ChangeNow received roughly 1,050 ETH, a non-KYC instant-swap service where funds are exchanged and effectively disappear. HitBTC took in about 100 ETH, and an estimated 170 ETH remains unaccounted for.

KuCoin hot wallet: 0x45300136662dd4e58fc0df61e6290dffd992b785 ChangeNow wallet: 0xeba88149813bec1cccccfdb0dacefaaa5de94cb1 HitBTC wallet: 0x80787af194c33b74a811f5e5c549316269d7ee1a CoW Protocol settlement contract: 0x9008d19f58aabd9ed0d60971565aa8510560ab41 Attacker's Secret wallet: secret154pdez8zazqh26wyuyu70nqraal3hkvf2f03vm Attacker's Axelar wallet: axelar1hzra9z4zn8q0w8f3dj2wnw0xgetu8dfdhl6ad8 Attacker's Osmosis wallet: osmo1hzra9z4zn8q0w8f3dj2wnw0xgetu8dfdm2l9s5

An estimated $642,000 is still sitting in the attacker's Axelar wallet, composed of 6.2 WBTC, 239,324 USDC, 64.04 WBNB, and 248.85 AXL. The trail has been well documented and most of the funds are gone — but that remaining $642K sits in a wallet Secret Network asked Axelar to freeze, a request Axelar chose not to act on.

That leaves an unresolved question: what does "coordinating with law enforcement" actually accomplish if the funds remain sitting in a visible, identified wallet?

04Two Statements, One Shared Failure

Both organizations issued public statements on June 19th. Each was factually correct; neither told the whole story on its own.

Axelar was unambiguous: "Neither Axelar nor IBC was compromised. The exploited token smart contract was not developed, deployed, or maintained by Axelar." The statement continued: "This deployment was vulnerable because its Secret-side fork had core security checks removed. The issue was not Axelar-specific logic or a flaw in IBC itself."

Secret Network pointed to a different piece of the failure: yes, the contract had a bug — but when the forged tokens were redeemed through the legitimate bridge pathway, Axelar's channel-69 escrow released the corresponding real assets automatically, with nothing in place to catch it.

Secret Network's statement continued: "No effective monitoring, anomaly-detection, or emergency pause mechanisms were triggered within the Axelar bridge infrastructure to identify and temporarily halt unusually large or suspicious transfers before the bridge assets were substantially drained from Axelar."

Perhaps the most consequential admission came almost in passing: "No external audit was requested by Axelar as part of the integration."

The Axelar-Secret integration was first announced on July 13, 2022, with the forked contract shipping to Secret Network in March 2023. Because Axelar never requested an external audit as part of that integration, the custom logic governing how the contract trusted incoming packets went unexamined for three years.

Common Prefix's report on the incident laid out both shortcomings directly, without favoring either party.

The roughly $642,000 still sitting in the attacker's Axelar wallet remains there; Secret Network's request that Axelar freeze it was not pursued. Axelar has said it is working with exchanges and law enforcement on the matter, and both the Secret and Secret-SNIP connections remain shut down indefinitely.

When a custom integration alters a fundamental trust assumption and no new audit follows, responsibility for the eventual failure becomes hard to assign cleanly.


This wasn't a technically sophisticated attack — it was a patient one. Ray Raspberry documented five Cosmos-ecosystem chains hit within a 35-day span, totaling roughly $21 million in losses.

Gravity Bridge lost $5.4 million in late May after a fix sat unmerged on GitHub for 123 days before the exploit was executed. Namada lost $600,000, a shortfall that stayed hidden until someone compared live RPC data against a stale indexer.

What connects these cases isn't one specific vulnerability class — it's a recurring operational pattern: real capital sitting in systems whose original builders have largely stopped paying attention, unmonitored and unaudited.

Ray Raspberry framed it directly: "The attacker's innovation isn't technical. It's reading the room. Ghost chains still hold real money."

This particular contract had been sitting exposed and public for three years, needing nothing more than someone willing to actually read it. Someone eventually did — arriving with a counterfeit chain, a freshly opened IBC channel, and roughly eighteen minutes of work.

The open question this leaves: if real value continues to sit in infrastructure nobody is actively watching, what's actually keeping it safe?

IBCSecret Network
Investigation alerts

Get new scam files the moment we publish them — usually 2–3 emails a week.

Enter a valid email address.

No spam, unsubscribe anytime. We never sell your data. Crypto assets are volatile and high-risk; nothing here is financial advice.

You're on the list. Watch your inbox for the next scam file.