The Folio contract serves as an upgradeable ERC20 token managing a basket of assets, incorporating features like fees, rebalancing, and trusted fillers. The contract leverages OpenZeppelin's upgradeable standards, reentrancy guards, and access control. Key strengths include the use of a Timelock for administrative actions and a robust fee distribution mechanism. However, the system exhibits a high degree of centralized control by the admin role, and relies on complex, unaudited external components for core economic functions like rebalancing and auctions. The presence of deprecated code also adds to complexity.

On-chain security analysis — is it a scam or legit?
Is CoinMarketCap 20 Index DTF Safe?
Not verified
This record has not gone through deep verification and is not being monitored. The score is a dated snapshot — the token’s risk can change at any time.Own this token? Put it under verification →The Folio contract serves as an upgradeable ERC20 token managing a basket of assets, incorporating features like fees, rebalancing, and trusted fillers.
Read the full analysis- Ownership status UNKNOWN
- Mintable supply — no cap found, dilution unbounded
- Proxy contract
- Top-10 concentration > 50%
- Liquidity not locked, but no owner/deployer address holds LP — market-depth risk, not rug risk
- LP top1 unlocked holder = 99.4%
- LP top3 unlocked holders = 99.8%
- 1 High finding(s) from audit
- 2 Medium finding(s) from audit
- 1 Low finding(s) from audit
Exact factors
- Ownership status UNKNOWN (owner could not be resolved)
- Mintable supply — no cap found, dilution unbounded
- Proxy contract (upgradeable — admin can replace logic)
- Top-10 concentration > 50% (86.9% total → 61.7% effective; 44.9% in EOAs, 42.1% in contracts — heavy)
- Liquidity not locked, but no owner/deployer address holds LP — market-depth risk, not rug risk
- LP top1 unlocked holder = 99.4% (independent LP — depth risk, pool = 49% of DEX liquidity)
- LP top3 unlocked holders = 99.8% (independent LP — depth risk, pool = 49% of DEX liquidity)
- 1 High finding(s) from audit
- 2 Medium finding(s) from audit
- 1 Low finding(s) from audit
Each factor is an on-chain fact recorded at the time of this analysis. The score is computed from them by a deterministic function, so the same contract returns the same score for anyone who runs the audit. How scores are computed
Security Checklist
as of audit · Sep 4Holders
as of audit · Sep 4, 2026- Contractstreasury, vesting, bridge, staking42.1%
- Walletsanonymous holders, free to sell44.9%
- Everyone elsethe rest of the supply13.1%
How holder types affect the score
Share held by contracts — treasury, vesting, bridge or staking — is discounted against share held by wallets when the score is computed: a contract cannot decide to sell the way an anonymous holder can, though it can still be drained or voted to sell. Effective concentration is the figure the risk score is actually calculated from.
Holder balances as recorded by the audit of Sep 4, 2026
Liquidity
as of audit · Sep 4- Pancakeswap v3USDTAnalysed$1.69M48.5%
- Pancakeswap v3WBNB$1.65M47.3%
- Pancakeswap v3BTCB$146.3K4.2%
- Pancakeswap v2XPHX$1130.0%
- Pancakeswap v2Cbit$670.0%
- Pancakeswap v3WBNB$10.0%
Show 1 more pair
The risk score reads depth across every pair.
The LP tokens of the analysed pool are not locked or burned, so whoever holds them can withdraw that liquidity.
0x1b13…458c0xc3f6…3f1e0x3998…39760xf547…f2a70x7dc7…ac9c0xcade…5a380x9675…a6270xebc4…d7960xdbee…73170x41ce…7788No privileged address appears among these holders: the unlocked liquidity sits with independent providers, not with the deployer.
Security Findings
HighCentralized Control by DEFAULT_ADMIN_ROLE
The DEFAULT_ADMIN_ROLE possesses extensive control over critical contract parameters, including setting fees (setTVLFee, setMintFee, setFeeRecipients), managing basket assets (addToBasket, removeFromBasket), configuring rebalancing (setRebalanceControl), enabling/disabling trusted fillers (setTrustedFillerRegistry), and deprecating the entire Folio (deprecateFolio). While this role is assigned to a Timelock contract with a 2-day delay, this concentration of power means that a compromise of the Timelock's owner could lead to significant financial loss or protocol manipulation. (7.3 Access Control, 7.5 Governance, 7.4 Economic)H-01
Issue
The DEFAULT_ADMIN_ROLE possesses extensive control over critical contract parameters, including setting fees (setTVLFee, setMintFee, setFeeRecipients), managing basket assets (addToBasket, removeFromBasket), configuring rebalancing (setRebalanceControl), enabling/disabling trusted fillers (setTrustedFillerRegistry), and deprecating the entire Folio (deprecateFolio). While this role is assigned to a Timelock contract with a 2-day delay, this concentration of power means that a compromise of the Timelock's owner could lead to significant financial loss or protocol manipulation. (7.3 Access Control, 7.5 Governance, 7.4 Economic)
Fix
Consider implementing a multi-signature wallet for the Timelock's owner or further decentralizing control over highly sensitive parameters where feasible, perhaps through community governance or additional timelocks for specific actions.
Status
Unresolved
MediumUnaudited External Rebalancing and Auction Logic
The Folio contract integrates complex rebalancing and auction mechanisms through external libraries (RebalancingLib) and interfaces (ITrustedFillerRegistry, IBaseTrustedFiller). The provided code snippet does not include the full implementation of these external components. Without a comprehensive audit of these external contracts and libraries, their security, potential for manipulation, front-running, or economic exploits cannot be fully assessed. (7.6 External, 7.4 Economic, 7.1 Architecture)M-01
Issue
The Folio contract integrates complex rebalancing and auction mechanisms through external libraries (RebalancingLib) and interfaces (ITrustedFillerRegistry, IBaseTrustedFiller). The provided code snippet does not include the full implementation of these external components. Without a comprehensive audit of these external contracts and libraries, their security, potential for manipulation, front-running, or economic exploits cannot be fully assessed. (7.6 External, 7.4 Economic, 7.1 Architecture)
Fix
Conduct a thorough security audit of all external contracts and libraries, specifically RebalancingLib, ITrustedFillerRegistry, and IBaseTrustedFiller, to ensure their robustness and prevent vulnerabilities that could impact the Folio contract.
Status
Unresolved
MediumDependency on External IFolioDAOFeeRegistry
The calculation of DAO fees in the mint function (and potentially other fee-related operations) relies on the getFeeDetails function of an external IFolioDAOFeeRegistry contract. The security and integrity of this external registry are paramount. If the daoFeeRegistry were compromised or misconfigured, it could lead to incorrect fee calculations, unexpected fee distributions, or denial of service for fee-related operations within the Folio contract. (7.6 External, 7.4 Economic)M-02
Issue
The calculation of DAO fees in the mint function (and potentially other fee-related operations) relies on the getFeeDetails function of an external IFolioDAOFeeRegistry contract. The security and integrity of this external registry are paramount. If the daoFeeRegistry were compromised or misconfigured, it could lead to incorrect fee calculations, unexpected fee distributions, or denial of service for fee-related operations within the Folio contract. (7.6 External, 7.4 Economic)
Fix
Ensure the IFolioDAOFeeRegistry contract is highly secure, immutable, or managed by a robust governance process. Implement robust input validation and consider circuit breakers or fallback mechanisms in case of unexpected behavior from the external registry.
Status
Unresolved
LowRisk from Malicious or Non-Standard ERC20 Tokens
The addToBasket function allows the DEFAULT_ADMIN_ROLE to add any ERC20 token. While SafeERC20 is used for token interactions, malicious or non-standard ERC20 tokens (e.g., those with re-entrant transferFrom hooks, fee-on-transfer mechanisms, or tokens that can be paused/blacklisted) could still introduce unexpected behavior, lead to loss of funds, or disrupt the contract's operations (e.g., rebalancing, minting, redeeming). (7.6 External, 7.4 Economic)L-01
Issue
The addToBasket function allows the DEFAULT_ADMIN_ROLE to add any ERC20 token. While SafeERC20 is used for token interactions, malicious or non-standard ERC20 tokens (e.g., those with re-entrant transferFrom hooks, fee-on-transfer mechanisms, or tokens that can be paused/blacklisted) could still introduce unexpected behavior, lead to loss of funds, or disrupt the contract's operations (e.g., rebalancing, minting, redeeming). (7.6 External, 7.4 Economic)
Fix
Implement a strict whitelist for approved ERC20 tokens that have been thoroughly vetted for standard behavior. Consider adding additional checks or safeguards when interacting with newly added tokens.
Status
Unresolved
InfoPresence of Deprecated Code and Variables
The contract contains several variables and structs explicitly marked with _DEPRECATED (e.g., auctions_DEPRECATED, sellEnds_DEPRECATED, DeprecatedStruct). While these are likely inactive or remnants of previous versions, their presence adds to the code's complexity, increases the cognitive load for auditors and developers, and could potentially lead to confusion or unintended interactions if not completely isolated or removed. (7.1 Architecture, 7.2 Code Security)I-01
Issue
The contract contains several variables and structs explicitly marked with _DEPRECATED (e.g., auctions_DEPRECATED, sellEnds_DEPRECATED, DeprecatedStruct). While these are likely inactive or remnants of previous versions, their presence adds to the code's complexity, increases the cognitive load for auditors and developers, and could potentially lead to confusion or unintended interactions if not completely isolated or removed. (7.1 Architecture, 7.2 Code Security)
Fix
Consider removing all deprecated code and variables to improve code clarity, reduce the attack surface, and simplify future maintenance and audits. If removal is not feasible, ensure they are clearly documented as unreachable and have no impact on current logic.
Status
Unresolved
Analysis
AI Copilotas of audit · Sep 4The Folio contract demonstrates good technical practices, utilizing OpenZeppelin's upgradeable contracts, ReentrancyGuardUpgradeable, and SafeERC20 for secure token interactions (7.2 Code Security). The initialize function correctly sets up the contract, and fee distribution logic (distributeFees() before fee changes) is well-implemented. However, the contract's reliance on external libraries and interfaces for complex rebalancing and auction logic introduces an unassessed technical risk (7.6 External, 7.1 Architecture). The presence of deprecated code also adds unnecessary complexity (7.1 Architecture).
The governance and economic model features a DEFAULT_ADMIN_ROLE with extensive control over critical parameters, including fees, basket assets, and rebalancing settings (7.3 Access Control, 7.5 Governance). While this role is protected by a Timelock with a 2-day delay, the centralization of power remains a high-risk factor. The fee distribution mechanism is designed to distribute pending fees before parameter changes, which is a strong point (7.4 Economic). However, the contract's economic stability heavily depends on the integrity and security of the external IFolioDAOFeeRegistry and the complex, unaudited rebalancing/auction logic (7.4 Economic, 7.6 External).
The contract is designed for upgradeability using OpenZeppelin's Initializable and Upgradeable patterns, including __ERC20_init, __AccessControlEnumerable_init, and __ReentrancyGuard_init (7.7 Upgrades). The constructor correctly calls _disableInitializers(). This standard approach minimizes upgrade-related risks, provided that future upgrades meticulously manage storage layout to prevent collisions and ensure backward compatibility. The Versioned contract also suggests a structured approach to upgrades.
Prioritize a comprehensive audit of all external contracts and libraries, especially those governing rebalancing, auctions, and trusted fillers, as these are critical to the protocol's economic integrity.
Evaluate the necessity of the highly centralized DEFAULT_ADMIN_ROLE and explore options for further decentralization or multi-signature protection for the Timelock's owner. Implement a strict whitelist for basket assets to mitigate risks from malicious or non-standard ERC20 tokens. Finally, consider refactoring to remove deprecated code to enhance clarity and reduce the attack surface.
Contract & Record
Free for any token on the record. It links to this page and always shows the current score and the date it was checked.
- Sep 2, 202671High
Score changes are recorded as dated snapshots — history is append-only and cannot be edited.
Frequently Asked Questions
What is the CMC20 contract address?
The CoinMarketCap 20 Index DTF (CMC20) contract on BNB Chain is 0x2f8a339b5889ffac4c5a956787cda593b3c36867. Compare it with the address the project itself publishes before trading: other contracts can carry the same name and ticker.
Is CoinMarketCap 20 Index DTF a scam?
Quantum Audit's risk score for CoinMarketCap 20 Index DTF is 71/100 (High risk) as of Sep 4, 2026, computed by a deterministic function from on-chain facts — Contract verified: Verified; Mint: Mintable; Liquidity lock: Not locked; Upgradeability: Upgradeable; Honeypot: None found; Buy / sell tax: 0% / 0%. A score is a dated snapshot of those facts, not a guarantee; each one is listed on this page.
Is CMC20 liquidity locked?
Liquidity lock: Not locked (as of Sep 4, 2026). Total DEX liquidity: $3.49M.
Who holds CMC20?
As of Sep 4, 2026, the 10 largest holders own 86.9% of the supply. The Holders section on this page shows who they are by holder type.
Would You Like a More Detailed Audit of CoinMarketCap 20 Index DTF?
Our AI-powered scanner gives you a deeper, real-time smart contract analysis — free, with every scoring factor shown.
Get Detailed Audit Is this your token? Publish your own audit on this page