Reading view

There are new articles available, click to refresh the page.

MAYAChain $1.7M Slash Subsidy Pool Inflation Exploit (Explained)

On August 18, 2026, an attacker chained six bugs in MAYAChain’s trade account and outbound-handling logic to drain the Asgard reserve. No key was stolen, and this wasn’t a flash-loan drain: a single batched deposit triggered a false theft alert, and an uncapped slash subsidy turned that into 48.87M forged CACAO in one thin pool. The attacker cashed out through it, extracting roughly $1.7M.

Protocol Background

MAYAChain settles cross-chain swaps through its Asgard vaults, with every observed transaction tracked against a shared ObservedTxVoter record. A single MsgDeposit can batch multiple actions together, including trade-account swaps and a DONATE action, all reported against that same voter. When an outbound transaction appears to go missing, the chain treats it as theft and slashes a subsidy into the affected pool to make it whole, a safety mechanism this exploit turned into the attack itself.

Hack Analysis

MAYAChain’s protection against a receipt being processed twice lives in a shared ObservedTxVoter record, one per native transaction ID. Inside the handler for a batched MsgDeposit, every message in the batch creates its own fresh voter and overwrites whatever was there before via SetObservedTxInVoter(). A transaction with enough messages can let its last message quietly erase what every earlier message had recorded.

The attacker used exactly that. A single MsgDeposit carrying 23 messages ran 20 trade-account swaps into ARB.ETH, two more into ARB.LINK, and closed with a one-unit DONATE:ARB.LINK message. That final message overwrote the voter the earlier trade withdrawals had set, resetting OutboundHeight to 0 and marking the whole transaction done.

Check here in rwa data: 516BA14D6976EC7B8A3087E1C52B195433EF0F9D85F4B9520675BC4FEB99E9B7

With OutboundHeight zeroed, the outbound matcher fell back to FinalisedHeight and scanned forward in fixed increments, but it never checked the one block where the LINK outbounds had actually landed. Finding no record there, the chain concluded the outbound had gone missing and triggered its theft-detection slash.

That slash path converts the supposedly stolen amount into CACAO at the pool’s own exchange rate, with nothing capping the result against how much asset the pool actually holds. The ARB.LINK pool had only about 0.11 LINK in it, so running the stolen amount through that rate produced a number completely detached from reality: roughly 49.45 million CACAO, booked straight into the pool.

The code writes that inflated pool balance to state before it actually tries to fund it from the reserve. The reserve only held about 168,000 CACAO, so the funding transfer failed, but the pool’s new balance had already been saved. The handler that caught the failure just logged it and marked the transaction done anyway, with no rollback, leaving the inflated pool sitting in state as if it were real.

With a pool now showing tens of millions of CACAO against almost no LINK, the attacker added a small amount of liquidity to it. The pool-unit math treated the deposit as founding a fresh pool, handing over 99.93% ownership, and an immediate withdrawal at 9,900 basis points paid out 48.87 million CACAO from the Asgard module. The attacker moved straight into swapping it for BTC, ETH, RUNE, and stablecoins across every Maya pool.

Root Cause

It was six separate weaknesses lining up in one transaction. The root failure is that a shared observed-transaction voter could be silently overwritten by a later message in the same batched deposit, and everything downstream, theft detection, the slash subsidy, and the funding transfer, trusted that voter’s state without re-checking or bounding it against reality.

Once the final DONATE message reset the voter, the outbound matcher's fallback logic never checked the right block, the slash subsidy calculation never capped itself against the pool's real balance, and the code that wrote the inflated pool to state ran before the code meant to fund it, with the resulting failure just logged and swallowed instead of rolled back. Any one of those checks alone would have stopped the drain, bind the voter to something a later message can't clobber, cap the subsidy to what the pool can actually hold, or roll back state when a downstream transfer fails.

How QuillAudits Infrastructure Review Could Have Prevented This

Voter integrity across batched messages. Any check whose entire security model rests on a shared record needs a guarantee that record can’t be overwritten by an unrelated message later in the same batch. A review tracing every writer of ObservedTxVoter would have caught SetObservedTxInVoter clobbering per-message state in handler_deposit.go.

Bound every subsidy calculation to the pool’s actual balance. The AssetValueInRune call behind the slash subsidy had no ceiling tied to pool.BalanceAsset, so a thin pool could be told it held tens of millions of CACAO it never had. Any function that credits a balance from a computed value needs an explicit sanity cap against the resource it's crediting.

Never commit state ahead of the transfer meant to back it. SetPool ran before SendFromModuleToModule in helpers.go, so when the transfer failed, the inflated state had already been saved. Persisted state should follow a successful funding transfer, not precede it, and a failed downstream call should roll back what came before it rather than just log and continue.

Funds Flow After Attack

The attacker immediately began swapping the drained CACAO into BTC, ETH, RUNE, and stablecoins across every Maya pool.

20.82 BTC, worth about $1,343,367, moved to bc1q0hsgwunccczelq05ucpmfz268eyy5jr2y5l646. As of now they are still in attacker wallet

Meanwhile on ethereum attacker has deposited some eth in tornado cash.

Post-Attack Mitigation

Maya founder posts an initial public message calling it sad news and saying it will work to fix the issue and recover in full.

Maya confirms the exploit to its community, roughly 20 BTC and $300k in other assets, says it has done a global halt to contain the damage, and shares the attacker’s Bitcoin address in case they’re open to a bug bounty.

Maya commits $200,000 of the team’s own funds into the pools as a first step in the recovery process.

Maya says it will accelerate the launch of its Aztec Chain platform and direct a share of the funds it raises back into the pools to help recover from the exploit.

Maya sends the attacker a message through a Bitcoin OP_RETURN transaction, asking them to return the funds and offering a bug bounty in exchange.

Relevant Addresses and Transactions

Attacker Wallet

Affected Pool

  • ARB.LINK: 0XF97F4DF75117A78C1A5A0DBB814AF92458539FB4

Key Transactions

Conclusion

No key was stolen, and no single bug did this on its own. A shared voter that a later message could silently overwrite was trusted by every check downstream of it, theft detection, the slash subsidy, and the transfer that was supposed to back it, and none of them verified what the others had already gotten wrong. A pool with barely any liquidity ended up crediting tens of millions of CACAO to itself, and the attacker just had to show up and withdraw it. Six checks failed in sequence; one working boundary anywhere in that chain would have stopped it.

Original Posted at QuillAuidts


MAYAChain $1.7M Slash Subsidy Pool Inflation Exploit (Explained) was originally published in Coinmonks on Medium, where people are continuing the conversation by highlighting and responding to this story.

Hashdex Liquidates DEFI As First US Spot Bitcoin ETF Closure Arrives

Hashdex has begun liquidating its Hashdex Bitcoin ETF, ticker DEFI, marking the first closure of a US spot Bitcoin ETF since the category launched in 2024.

The fund ceased trading on NYSE Arca on August 17. Hashdex cited low assets under management, high operating costs, and a small asset base of about $14.7 million as reasons for winding down the product. Liquidating cash distributions are expected between August 24 and August 28.

The closure is notable, but it should not be misread.

This is not evidence that the entire spot Bitcoin ETF market is failing. Larger products continue to attract significant capital. The Hashdex closure is better understood as product consolidation inside an increasingly competitive ETF category.

TL;DR

  • Hashdex is liquidating its DEFI Bitcoin ETF.
  • The fund stopped trading on NYSE Arca on August 17.
  • The closure reflects one smaller ETF winding down, not broad failure of the Bitcoin ETF market.

Why DEFI Could Not Compete

The spot Bitcoin ETF market has become extremely concentrated.

Large issuers with strong distribution, tight spreads, low fees, and deep brand recognition have dominated flows. Smaller funds have had to fight for visibility in a market where investors can already choose from highly liquid alternatives.

That makes survival difficult.

A fund with only $14.7 million in assets faces a cost problem. ETF operations require administration, custody, compliance, market-making support, reporting, and exchange-listing maintenance. If assets remain too small, the economics can stop working.

That appears to be the Hashdex story.

A Closure Can Be Healthy

ETF closures are not unusual in traditional markets.

Funds close when demand is weak, assets are too small, or strategy overlap makes them unnecessary. That is part of how ETF markets mature. Strong products gather assets, while weaker or less differentiated products exit.

Crypto ETFs are now experiencing the same process.

The early post-approval period created many products chasing the same investor base. Over time, capital tends to settle around the deepest and most efficient funds.

That is not necessarily bad for investors. It can simplify the category and concentrate liquidity.

The Big Bitcoin ETF Story Remains Intact

The broader spot Bitcoin ETF market remains far larger than one fund.

BlackRock, Fidelity, and other major issuers have captured deep demand. ETF flows continue to act as a major sentiment gauge for Bitcoin traders. Large daily inflows still influence market psychology and, at times, price direction.

So Hashdex closing DEFI does not undermine the category.

It shows that not every product can win.

The distinction matters because the market may be tempted to treat the first closure as a symbolic blow. It is more accurately a sign that the category is moving from launch excitement into competitive sorting.

What Investors Should Watch

The next question is whether other smaller funds follow.

If more low-AUM spot Bitcoin ETFs close, that would suggest consolidation is accelerating. That may reduce product count but strengthen liquidity in surviving funds.

Investors should also watch fees.

Fee pressure can make it harder for smaller issuers to compete, especially when large firms can operate at scale and absorb thinner margins.

The ETF market rewards size, distribution, and liquidity. Crypto ETFs are no exception.

The Clean Read

Hashdex’s DEFI liquidation is a milestone because it is the first closure in the US spot Bitcoin ETF category.

But it is not a category-wide warning sign.

It is a reminder that ETF approval does not guarantee ETF success. Investors still choose products based on cost, liquidity, trust, and convenience. In a crowded Bitcoin ETF market, smaller funds may struggle to justify their place.

The category is not disappearing. It is consolidating.

This article is based on Hashdex’s official liquidation notice for the Hashdex Bitcoin ETF.

This article was written by the News Desk and edited by Samuel Rae.

This report is based on information released in disclosures at primary source documentation.

Jupiter Passes $1T In Cumulative Solana Swap Volume

Jupiter Passes $1T In Cumulative Solana Swap Volume Jupiter has passed $1 trillion in cumulative routing volume, cementing its role as one of the most important DeFi applications in the Solana ecosystem.

The milestone reflects aggregate swap volume routed across connected Solana liquidity pools. Jupiter is not just a single exchange pool. It is an aggregator, meaning it searches across venues to find better pricing and execution for users.

That role makes it central to Solana trading.

When users swap tokens on Solana, Jupiter is often part of the route. Passing $1 trillion in cumulative volume shows how much trading activity has flowed through the platform and how important aggregation has become for low-cost, high-speed DeFi.

TL;DR

  • Jupiter has passed $1 trillion in cumulative Solana routing volume.
  • The platform aggregates liquidity across connected Solana pools.
  • The milestone reinforces Jupiter’s role as a core Solana DeFi venue.
https://x.com/JupiterExchange/status/1814839201948303360

Why Aggregators Matter

Decentralized exchanges can become fragmented.

Liquidity is spread across pools, AMMs, order books, and protocols. If users have to manually search for the best route, trading becomes inefficient. Aggregators solve that problem by routing trades through the best available path.

Jupiter has become Solana’s most recognizable example of that model.

It helps users access deeper liquidity without needing to understand every underlying venue. That is especially useful on Solana, where low fees make smaller and faster trades more practical.

The $1 trillion milestone shows that users are not just experimenting with Jupiter. They are relying on it as part of Solana’s core market structure.

That matters because DeFi ecosystems are often judged by their liquidity layer.

If swaps are cheap, fast, and well-routed, the entire ecosystem becomes easier to use.

Solana DeFi Keeps Maturing

Solana’s early DeFi story was often overshadowed by meme coins and retail trading.

That attention brought volume, but it also made some investors question how much activity was durable. Jupiter’s cumulative volume milestone gives Solana a stronger infrastructure story.

A trillion dollars in routed volume does not happen without repeated use.

It suggests a large amount of trading activity has moved through Solana’s DeFi rails over time. That strengthens the argument that Solana is not only a speculative chain but also a serious venue for decentralized trading.

The launch of Jupiter’s Offerbook lending market adds another layer.

If Jupiter can expand from routing swaps into lending and broader market infrastructure, it may become even more central to Solana’s DeFi stack.

Cumulative Volume Needs Context

The number is impressive, but it should be understood properly.

Cumulative volume is not the same as current daily volume. It reflects all historical routing activity across connected pools. It does not mean $1 trillion is locked in the protocol, and it does not mean that every trade produced equal revenue or user value.

Still, cumulative volume is a useful adoption marker.

It shows that Jupiter has processed meaningful activity over a long period. For users, that can reinforce trust. For developers, it shows where liquidity is flowing. For Solana, it supports the network’s claim to be one of crypto’s leading trading environments.

The next question is how Jupiter maintains that position.

Competition in DeFi is constant. Aggregators need to keep routes efficient, interfaces clean, integrations broad, and execution reliable. If they fall behind, users can move quickly.

Jupiter Is Becoming More Than A Swap Router

The broader story is Jupiter’s evolution.

The platform started as a critical swap aggregator, but it has increasingly expanded into other Solana-native financial products. Offerbook is part of that shift, pointing toward a wider DeFi role beyond simple token swaps.

That matters for Solana.

A strong ecosystem needs anchor applications. Ethereum has Uniswap, Aave, Lido, and Curve. Solana needs its own set of core venues that users return to repeatedly. Jupiter is clearly one of them.

Passing $1 trillion in cumulative routing volume reinforces that position.

For traders, it shows where Solana liquidity is moving. For SOL supporters, it gives a concrete metric supporting the network’s DeFi maturity. For Jupiter, it raises expectations.

The platform now has to prove that it can keep growing beyond aggregation while maintaining the execution quality that made it important in the first place.

For now, the milestone is a strong signal: Solana DeFi has real volume, and Jupiter remains one of its main arteries.

This article is based on Jupiter’s public statement and platform data.

This article was written by the News Desk and edited by Samuel Rae.

This report is based on information released in official primary source disclosures at primary source documentation.

❌