Normal view

There are new articles available, click to refresh the page.
Yesterday — 14 September 2026Coinmonks

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

14 September 2026 at 10:24

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.

Forex Meets Bitcoin: The Changing Role of Trading Software

By: Novaayim
14 September 2026 at 06:55
Explore how Bitcoin is influencing the expectations around modern forex trading technology, from real-time data and automation to security and user experience.
See why today’s forex platforms need to focus on reliable technology rather than just basic trading features.
Forex Trading Software
Forex Meets Bitcoin

Forex and Bitcoin are very different markets, but the way people interact with them has started to share one important thing: they rely heavily on technology.

A forex trader may be watching currency pairs, while a crypto trader may be following Bitcoin prices. In both cases, users expect reliable market information, quick order handling, clear account details, and a platform that does not get in the way of trading.

This is changing the role of Forex Trading Software. It is no longer just a tool for viewing prices and placing orders. For brokers and trading businesses, it has become part of the overall experience they offer to users.

Bitcoin Has Raised the Bar for Digital Trading

Bitcoin made people more familiar with a market that operates continuously. Prices can move at any hour, and users can check their positions from a phone in seconds.

Forex follows a different market structure, so the two cannot be treated as the same. Still, Bitcoin has influenced what users expect from financial platforms. Traders are more comfortable with real-time dashboards, mobile access, instant notifications, and digital account management.

That means forex businesses have to think beyond the basic trading terminal. The platform needs to feel dependable whenever users access it.

Reliable Data Matters More Than Fancy Features

A trading platform can have dozens of features, but they are not very useful if the underlying market data is delayed or inconsistent.

Forex software usually depends on external price feeds, broker systems, liquidity providers, and APIs. Keeping these connections stable is important because traders use the information on the screen to make decisions.

Bitcoin trading platforms have also shown how useful real-time data aggregation can be. For forex businesses, the practical lesson is not to copy crypto platforms, but to make sure the data reaching the trader is timely, consistent, and easy to understand.

Automation Can Reduce Repetitive Work

Automation is another area where crypto and forex platforms are moving in a similar direction.

Automation Can Reduce Repetitive Work

Traders now use alerts, automated strategies, risk controls, and APIs to reduce repetitive tasks. Brokers can also use automation for account processes, reporting, order workflows, and monitoring.

This does not mean every forex platform needs complicated AI or fully automated trading. In many cases, simple automation that reduces manual work can make the platform more useful.

The important part is choosing automation based on a real need rather than adding it just because it sounds advanced.

Security Cannot Be an Afterthought

Financial software deals with information that users expect businesses to protect. Account credentials, personal data, trading activity, and transaction details all need proper safeguards.

Bitcoin has made security a familiar topic for a much wider group of users, but the same principle applies to forex platforms. Secure authentication, controlled access, encrypted communication, API protection, and regular testing should be considered during development.

Good security is not only about preventing attacks. It also helps users feel confident that their accounts and information are being handled responsibly.

Traders Expect More From the User Experience

Trading platforms have also become easier to access. A trader may move between desktop and mobile devices throughout the day, which means the experience should remain consistent across both.

Clear dashboards, readable charts, simple navigation, order history, account information, and useful alerts can make everyday trading easier.

This is one place where businesses should listen carefully to their users. A platform does not become better simply by adding more screens. Often, removing unnecessary steps can make a bigger difference.

The Technology Will Keep Evolving

Bitcoin did not replace forex, and forex is not becoming a crypto market. What is changing is the technology expectations around both.

For businesses, the takeaway is fairly practical: build software that is reliable first, then make it useful, flexible, and easy to maintain. Real-time connectivity, dependable order handling, security, automation, and a sensible user experience are more valuable than a long list of features that nobody needs.

The role of Forex Trading Software is therefore moving beyond basic trade execution. As financial markets become more digital, the platforms supporting them will need to keep improving with user expectations rather than simply following old trading models.


Forex Meets Bitcoin: The Changing Role of Trading Software was originally published in Coinmonks on Medium, where people are continuing the conversation by highlighting and responding to this story.

The Problem of UX in Crypto, or How to Make It Look More User-Friendly

14 September 2026 at 06:49

Have you ever tried to “stake” your tokens, adjust your “gas fees,” or back up your “mnemonic phrase,” and wondered if you accidentally stepped into a foreign language class? Welcome to crypto, where even the most enthusiastic newcomers can feel like they’re solving a riddle just to send a few dollars. Among this confusing terminology and intimidating design is where UX (or user experience) comes in.

Simply put, UX is how a product feels to use. Is it intuitive, simple, pleasant? Or does it leave you frustrated and confused? UX is about the journey of the user, making sure every step flows naturally. Don’t confuse it with UI (user interface), which refers just to what the screens look like. You can have a beautiful interface but a terrible user experience if the steps don’t make sense or the language is hard to understand.

And that’s the heart of the problem: crypto is full of powerful, promising technology, but it’s often locked behind confusing menus and jargon that scare people away.

Why UX Matters Everywhere — Even More in Crypto

You might think UX is just a “nice touch,” like a fancy design on your coffee cup. But actually, besides the actual need for the product, it’s what makes people stick around in the digital world. If a software product is useful and also feels easy and enjoyable, they’ll keep using it. If not, they’ll quit — fast. And in crypto, that difference can mean millions of potential users deciding to stay in traditional systems or worse, with none at all.

According to the World Bank, “about two-thirds of unbanked adults said that if they opened an account at a financial institution, they could not use it without help.” The total of those unbanked adults is around 1.4 billion, who also face barriers of distance and documentation when trying to open bank accounts. You might think that crypto could easily win over those users (only the Internet is needed), but there’s still the thing about the difficulty of use. All those unbanked people could find a useful alternative in crypto, but the UX is in the middle.

Think about how the iPhone revolutionized smartphones. Before it, phones were clunky and only tech enthusiasts explored their advanced features. Apple made the experience smooth, even delightful, for everyone. That’s great UX at work: you don’t need to read a manual, and you feel confident while using it.

Crypto should aim for the same. Many fixes are simple, but they require product designers to focus more on regular people instead of just insiders and developers.

Why UX Feels Broken in Crypto

So why does crypto feel so awkward to use today? There are a few common culprits. First, the jargon. Terms like “rollups,” “mnemonic phrases,” “staking,” and “slippage” confuse even experienced users. Then, there are the many steps just to do something simple: opening a wallet, buying tokens, and transferring them often feels like learning advanced mathematics from scratch.

Let’s not forget the complex wallet addresses: long strings of random letters and numbers. Would you feel confident sending your money to ‘0x5a1F…7bC9’ without triple-checking it? That’s why the lack of human-readable addresses makes users nervous. They can’t even dream about ‘reading’ smart contracts written in a programming language, but they should be able to, since these systems are doing all kinds of things with their money.

A Transaction Overview on Etherscan. Not exactly user-friendly.

And mistakes in crypto can be permanent. If you send coins to the wrong address or lose your keys, there’s often no way to recover them. No friendly “undo” button here.

Even crypto’s biggest names agree this is a problem. Brian Armstrong, CEO of Coinbase, admitted that their platforms still need improvements and require more simplification to attract new users. Likewise, Changpeng Zhao, ex-CEO of Binance, has said that the exchange has suffered from a bad user experience.

If you’ve ever tried bridging your first coins or using DeFi protocols, you know what they mean. It may seem intimidating, even for someone who’s comfortable online.

How to Make UX in Crypto Better

Thankfully, there are plenty of ways to improve UX in crypto. First, providers should minimize the jargon wherever possible. If they must use technical terms, explaining them in plain language right in the app would be a good idea.

Next, the education of users as they go is essential. Little inline tips, confirmation screens, and progress indicators help make the experience less stressful. Avoiding costly mistakes can be done through clearer warnings and descriptions before transactions, and by defaulting to safer settings. For example, pre-selecting higher security or suggesting conservative fees can help protect users from themselves.

Another helpful principle is progressive disclosure: show the basic, necessary options first and hide advanced settings behind a “more options” button. That way, providers don’t overwhelm beginners but still serve power users.

Inclusivity is also crucial. Not everyone speaks English, has perfect eyesight, or is under 30. Thinking about accessibility and diverse users is good for everyone. Having those same users test the apps and provide feedback is probably the best option, since developers will never have the same experience as them.

On the other hand, users also need to consider the custodial vs. non-custodial trade-off. Custodial wallets (like those on centralized exchanges) are often easier because the company handles security, but they’re less private and secure. Non-custodial wallets give more control but demand more knowledge from the owners. A good UX can help guide users to what fits them best.

What’s Been Done So Far?

We have to admit that it hasn’t always been this way. Back when Bitcoin first launched, there weren’t even “seed phrases.” People often just kept (or lost) an unencrypted file of their private key. Decentralized exchanges (DEXs) were once more complex, clunky tools; today, they have interfaces resembling apps. This progress shows how much can change with a focus on usability.

One great example is the rise of crypto domain name services. Instead of copying and pasting a 42-character address, you can send crypto to ‘alice.eth’ thanks to services like Ethereum Name Service (ENS), Unstoppable Domains, and SPACE ID. They replace intimidating addresses with short, human-readable names. However, the trick is that those domains are available only for those who can buy them and/or pay for them yearly. It’s not exactly a native, free feature.

For their part, wallets and exchanges are also doing things to improve. Ready Wallet (previously Argent) focuses on a mobile-first design, friendly support, and replacing seed phrases with an “off-chain recovery” feature from the cloud to help users recover access if they lose their devices. MetaMask introduced “Smart Transactions” for pre-simulated transactions and to make them more cost-efficient. Coinbase has simplified its app dramatically to appeal to beginners, even removing some advanced options until users feel ready.

Some chains are experimenting with making smart contracts readable to humans or have already done that. Platforms like CSPR.live aim to present contract actions in plain English so users can understand what they’re signing before clicking confirm — similar to what already exists in Obyte since 2020 (see below). Researchers are working on this too, proposing new ways to make smart contracts easier to use and readable by humans.

These efforts prove that better UX isn’t just possible, it’s already happening in several platforms. The challenge now is making these improvements the norm, not the exception.

Obyte’s UX Initiatives

Obyte has been quietly building user-friendly crypto features for years, making it much easier for anyone (even complete beginners) to send and use digital money. One of its most approachable tools is textcoins. These are like little wallets you can send over email, chat, or even print on paper. You don’t need the recipient’s crypto address; they just click a link or type in a simple 12-word phrase to claim the funds. If nobody claims the textcoin, you can even take it back with a tap.

Another thoughtful feature is the ability to replace long, intimidating addresses with usernames or shortcodes. Instead of sending funds to a random string of letters and numbers, you can register a customized username via wallet chatbot or, if you own a house in Obyte City, claim a unique shortcode to receive payments. These names and shortcodes do come with a small, one-time fee, but it’s affordable and yours to keep without subscriptions.

Obyte also helps you avoid mistakes when interacting with dapps (like bridges or DEXes). Before you hit send, the wallet shows you a preview of the expected transaction result, including amounts of the coins to be sent in response, changes in the agent’s state (such as balance records), and even the website of the agent you are interacting with. This transparency gives you peace of mind when dealing with complex smart contracts or agents.

Lastly, Obyte makes creating human-readable smart contracts easy. You don’t have to be a programmer; you just fill out a simple template in plain language, set the conditions, and send it to the other party for approval. Whether you’re sending coins, creating agreements, or claiming funds, many of these features have been live, tested, and open to everyone for years. They all are both powerful and easy to use, making Obyte a welcoming corner of the crypto world –including user experience.

Featured Vector Image by pikisuperstar / Freepik

Originally Published on Hackernoon


The Problem of UX in Crypto, or How to Make It Look More User-Friendly was originally published in Coinmonks on Medium, where people are continuing the conversation by highlighting and responding to this story.

Before yesterdayCoinmonks
❌
❌