Academy Hot News Article

The USDM Team suffered a loss of about $46 million due to the “Rug Pull” incident



According to the official source, at 9:00 p.m. on 11th November 2021 (Thursday), Curve (stable currency trading protocol) confront with a loss of $46 million to users who provided USDM liquidity due to the “Governance Attack” of Mochi (USDM stable currency protocol). After the attack, Curve handled it urgently to avoid a wider range of losses.

Previously, Mochi voted to increase the reward of USDM pool by purchasing CVX to increase the liquidity of USDM and other assets. After the liquidity was improved, Mochi traded a large number of USDM tokens owned by the team into DAI, a total of 46million USDM tokens into DAI.

OKLink followed up immediately after learning of the incident and sorted out the whole incident in detail.


At present, the preliminary conclusion is that the contract owner committed an internal crime.

Address of the USDM contract owner: 0x9cadb2c8735a120c4d3292dca2b7f03d5f7dd6b4;

Operation address: 0x0c3a1a43392f06347aa8fea1852b4ba068443a0d;

USDM multi-sign address 1:0x6ddb204df5980b122fa89f928fd741f35584ac0b;

USDM multisignature address 2:0xdc71417e173955d100af4fc9673493ff244514c;

1. The authorized address of  USDM contract owner [0x9cad] mints 46 million USDM for the operation address [0x0c3a] without any reason;

2. ETH GAS of the operation address comes from the withdrawal of Coinbase;

3. The operation address sells USDM and trades into other stable currencies: 46,004,689 Dai (only the users who provide the liquidity of the Curve USDM Pool will be affected, and the rest will not be affected);

4. The operation address will trade the DAI as 9875 ETH, of which 1720 ETH will be paired with another token issued by the team, and the liquidity of Uniswap will be added, and the LP will be transferred to the multi-signature address 1 [0x6ddb] held by the team;

5. The remaining 8155 ETH were traded as 1,050,285 CVX and transferred to another multi-signature address 2 [0xdc71] controlled by the team (Note: this address is also the address for the USDM Protocol to charge gas fee, and CVX is the token of Covex Finance to accelerate staking);

6. Multi-sign address 2 [0xdc71] will stake all CVX (Note: all are locked in the CVX lock contract, and multi-sign address 2 [0xdc71] can retrieve all CVX later).

Cause Of Attack

Generally speaking, the hacking incident was a governance attack launched by Mochi (USDM stable currency protocol) against Curve by using rule vulnerabilities. The following is the attack process of the whole incident.

According to official data, Mochi is a loan protocol through the cross-chain autonomous algorithm, which can realize the entry of staking assets without restrictions and based on specific requirements into the market. Users can use the listed collateral to mint USDM through the “Mochi vaults” smart contract.

At 00:40 on 11th November(HKT), Mochi launched its governance token Mochi INU (Mochi) and encouraged the liquidity of its USDM/3Pool.  Mochi has no upper limit or economic model, and its price prediction machine is actually a number set by a hot wallet, which means that the Mochi team can cast any number of Mochi without a time lock, then stake and generate USDM, and trade USDM into other stable currencies through its liquidity pool, provided that there is sufficient liquidity.

To make matters worse, the position of Mochi is represented by NFT. Mochi Vaults verify the user’s position ownership by checking the user’s NFT ownership, but Vaults do not store the NFT address itself. Instead, it queries the MochiEngine contract 0x86e. In this case, the management wallet of the project can change the NFT address at any time and extract all the staking assets that mint USDM.

Then, Mochi used a large number of MOCHI held by Mochi to create 46 million USDM, and then traded and sold 46 million DAI on Curve. At this time, the team did not choose to OTC immediately but used DAI to purchase a large number of CVX governance tokens of Convex Finance.

Note: the mechanism of Curve and the role of CVX. As a decentralized trading pool designed for stable currencies, Curve’s popularity stems from two factors: first, the liquidity providers (LPS) of Curve face a low risk of free losses; Second, its yield is satisfactory. Curve LPS can earn CRV farming incentives in addition to obtaining rewards from the transaction fees of each transaction (50% of the transaction fees) and loan interest from external protocol connected to Curve such as compound and AAVE. Each Curve liquidity pool uses CRV inflation to stimulate LPS.

In addition to holding CRVs, holders can also lock their CRV in the Curve Dao. After locking the CRV in the Curve Dao for a period of time, they can obtain the veCRV required for voting. Users who lock the CRV and hold the veCRV can obtain:

1. Governance rights, such as voting to determine the distribution of additional issuance of CRV among different curve liquidity;

2. 50% of the agreed transaction fee (50% of each transaction fee of Curve is allocated to all LPS, and the other 50% is allocated to veCRV holders);

3. Accelerated CRV rewards;

For the number of CRV that LPS can earn, acceleration plays a role in multiplication, which can increase the CRV reward of LPS to 2.5 times at most. Convex Finance is designed to help Curve LPS and CRV holders maximize their profits, that is, the protocol attempts to obtain as many CRV as possible so that more CRV can be locked in exchange for veCRV, so as to obtain CRV acceleration rewards, thus bringing higher income to depositors.

After buying a large number of CVX, the Mochi team can use the CVX in their hands to drive the massive veCRV to vote for their own pool and obtain a large number of CRV subsidies. In this way, the staking APR will continue to rise, thus attracting more LPS to participate in the USDM liquidity pool.

It can be seen that Mochi team holds a large amount of MOCHI, which can be mint into USDM. After the USDM liquidity pool becomes deeper, the team can easily trade USDM with USDT, DAI and other available assets through Curve. After the hacker attack, Curve shut down the USDM gauge to stop receiving CRV output immediately to avoid greater losses.

Disclaimer: The Content is for informational purposes only, you should not construe any such information or other material as investment, financial, or other advice.