First-depositor / share-inflation guard
Morpho V1 (Morpho Blue + MetaMorpho)'s assessment for RD-F-075 — scored yellow on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
Two-layer: (1) Core Morpho Blue markets: VIRTUAL_SHARES=1e6 and VIRTUAL_ASSETS=1 in SharesMathLib provide structural protection — first depositor cannot inflate shares via donation. Effective protection. (2) MetaMorpho ERC-4626 vaults: rely on curator dead deposit (1e9 shares to 0xdead); not protocol-enforced. Docs warn of vulnerability if dead deposit omitted. Yellow for composite protocol (vault layer is exposed without curator action).
Detail #
Core Morpho Blue markets: SharesMathLib confirmed to use VIRTUAL_SHARES=1e6 and VIRTUAL_ASSETS=1 constants in toSharesDown and toSharesUp functions (source: DeFiHackLabs analysis of morpho-blue source). When totalSupplyShares=0, conversion rate = (assets * 1e6) / (totalAssets + 1) — prevents the classic first-depositor inflation attack by establishing meaningful initial exchange rate. This is structural protection equivalent to OZ >=4.9 virtual shares. MetaMorpho ERC-4626 vaults: the dead deposit mechanism (1e9 shares to 0xdead) is recommended and documented in multiple tutorial pages, but is not automatically applied at vault deployment. The vault factory does not call supply() to make the dead deposit on behalf of curator. Security considerations doc explicitly warns of the inflation front-running vulnerability. Template: green = structural protection exists (virtual offset or seed deposit on deploy); yellow = protection depends on curator action post-deploy. The composite protocol scores yellow because the MetaMorpho vault layer (which holds the majority of user-facing TVL) has curator-dependent protection rather than structural protection.
Sources #
- URLVault curator security considerationsdocs.morpho.org/curate/concepts/security-considerations — inflation front-running vulnerability if dead deposit not made for MetaMorpho V1 vaultsretrieved 2026-04-27
- Market dead deposit tutorialdocs.morpho.org/curate/tutorials-market-v1/dead-deposit — dead deposit tutorial: 1e9 shares to 0xdead, curator responsibility not protocol-enforcedretrieved 2026-04-27
- Morpho Blue internals: share accountingDeFiHackLabs Morpho Internals Part 1: VIRTUAL_SHARES=1e6, VIRTUAL_ASSETS=1 in SharesMathLib — structural first-depositor protection at core market levelretrieved 2026-04-27
Methodology #
Determine whether the vault has a first-depositor guard (seed deposit on deploy, virtual-share offset, or floor-check).
See the full factor methodology and distribution across all protocols →