
MAP Protocol
2.3K posts

MAP Protocol
@MapProtocol
An omnichain infrastructure for BTC, stablecoins, and tokenized assets swap | Get $MAPO 🟣 https://t.co/kPAP2t7dxx


MAP Protocol has suspended the conversion service between MAPO tokens on the original ERC20 contract address 0x66d79b8f60ec93bfce0b56f5ac14a2714e509a99 across the BSC and Ethereum networks and MAPO on the MAP Protocol mainnet. All relevant exchanges have also been notified to disable deposits and withdrawals for these tokens. Users are strongly advised not to trade MAPO tokens associated with the original BSC and Ethereum ERC20 contract address 0x66d79b8f60ec93bfce0b56f5ac14a2714e509a99 on decentralized exchanges, including Uniswap, PancakeSwap, or any other platforms. The project team will announce a new contract address in due course and will select an appropriate time to conduct an asset snapshot. Any remaining tokens held by attacker-controlled addresses will be fully invalidated and will not be included in any future snapshot or conversion process. Please refer only to official announcements for the snapshot timing, new contract information, and subsequent arrangements. Users are advised to remain patient and avoid taking any action through unofficial channels.


Hi @mapprotocol, you may want to take a look: huge amount 1,000,000,000,000,000 of $MAP0 were minted: etherscan.io/tx/0x31e56b473…

🔎 Suspected root cause - TL;DR The bridge authenticates cross-chain message retries with keccak256(abi.encodePacked(...)) over four consecutive dynamic-bytes fields (initiator, from, to, swapData). abi.encodePacked has no length prefixes, so the field boundaries aren't encoded - different field allocations can pack to the identical byte string and therefore the identical keccak. The attacker: 1) Originated a real, oracle-multisig-signed MAP→ETH message to a precomputed CREATE address. Destination had no code yet → bridge cached a "NotContract" retry commitment. 2) Deployed the exploit contract at that exact address. 3) Called retryMessageIn with rearranged bytes-field boundaries that pack to the IDENTICAL 601-byte string as the planted message → same keccak → guard passes → bridge mints 10^15 MAPO (~4.8M× supply) to attacker. Not a key compromise, not a light-client bug, not a MAPO bug. Pure Solidity abi.encodePacked footgun on multiple dynamic-bytes fields.

🚨 Community alert @MapProtocol / @ButterNetworkio bridge exploited on Ethereum and Bsc. Attacker tricked Butter Bridge V3.1 (OmniServiceProxy) into minting ~1 quadrillion MAPO — about 4.8M× the legitimate ~208M supply — directly to a brand-new EOA. More details in🧵








