The MiniMeToken contract implements an ERC20-like token with a unique cloning mechanism and a controller pattern. The audit identified significant centralization risks due to the extensive powers of the controller address. Additionally, the use of an outdated Solidity compiler version (0.4.24) introduces potential vulnerabilities related to integer arithmetic and known compiler bugs. While the contract provides core token functionality, several aspects deviate from modern security best practices, warranting careful review and potential upgrades.

On-chain security analysis — is it a scam or legit?
Is Lido DAO 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 MiniMeToken contract implements an ERC20-like token with a unique cloning mechanism and a controller pattern.
Read the full analysis- Ownership not renounced
- Top-10 concentration > 30%
- Liquidity not locked, but no owner/deployer address holds LP — market-depth risk, not rug risk
- LP top1 unlocked holder = 91.2%
- LP top3 unlocked holders = 97.5%
- 1 High finding(s) from audit
- 2 Medium finding(s) from audit
- 1 Low finding(s) from audit
Exact factors
- Ownership NOT renounced (admin/mint authority retained)
- Top-10 concentration > 30% (50.6% total → 30.3% effective; 16.7% in EOAs, 33.9% in contracts — moderate)
- Liquidity not locked, but no owner/deployer address holds LP — market-depth risk, not rug risk
- LP top1 unlocked holder = 91.2% (independent LP — depth risk, pool = 41% of DEX liquidity)
- LP top3 unlocked holders = 97.5% (independent LP — depth risk, pool = 41% 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, staking33.9%
- Walletsanonymous holders, free to sell16.7%
- Everyone elsethe rest of the supply49.4%
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- Uniswap v3WETHAnalysed$686.5K40.7%
- Uniswap v3WETH$517.1K30.7%
- Uniswap v4CRV$164.1K9.7%
- Uniswap v4ETH$132.0K7.8%
- Uniswap v3USDC$61.4K3.6%
- SushiswapWETH$30.9K1.8%
Show 4 more pairs
The 10 remaining pairs hold $14.3K between them and are not listed. 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.
0xd4f8…489c0xe0f8…803d0x33d2…b0cc0x9d5c…0c280x2db7…8a370xf8d0…dd0c0xe348…dd090xfc4b…e4c10x2afa…53c70x72c3…c102No privileged address appears among these holders: the unlocked liquidity sits with independent providers, not with the deployer.
Security Findings
HighCentralized Control by Controller
The controller address, initially the contract deployer, possesses extensive power over the token contract. This includes the ability to change the controller, enable/disable transfers, and bypass standard transferFrom allowance checks to move tokens arbitrarily. This represents a significant centralization risk and a single point of failure. If the controller's private key is compromised, all token holders could be at risk.H-01
Issue
The controller address, initially the contract deployer, possesses extensive power over the token contract. This includes the ability to change the controller, enable/disable transfers, and bypass standard transferFrom allowance checks to move tokens arbitrarily. This represents a significant centralization risk and a single point of failure. If the controller's private key is compromised, all token holders could be at risk.
Fix
Evaluate if such a high degree of centralization is necessary. If not, consider implementing a multi-signature wallet for the controller address or transitioning control to a decentralized autonomous organization (DAO) for critical functions like changeController and enableTransfers/disableTransfers. Ensure robust security measures are in place for the controller's private key.
Status
Unresolved
MediumOld Solidity Compiler Version and Lack of SafeMath
The contract uses pragma solidity ^0.4.24, an outdated compiler version. This version lacks built-in overflow/underflow protection (like SafeMath in newer versions) and may contain known compiler bugs. While some checks are present (e.g., previousBalanceFrom >= _amount), other arithmetic operations, especially with uint128 values in Checkpoint structs or in the truncated generateTokens/destroyTokens functions, could be vulnerable if not explicitly guarded. This increases the risk of unexpected behavior or exploits.M-01
Issue
The contract uses pragma solidity ^0.4.24, an outdated compiler version. This version lacks built-in overflow/underflow protection (like SafeMath in newer versions) and may contain known compiler bugs. While some checks are present (e.g., previousBalanceFrom >= _amount), other arithmetic operations, especially with uint128 values in Checkpoint structs or in the truncated generateTokens/destroyTokens functions, could be vulnerable if not explicitly guarded. This increases the risk of unexpected behavior or exploits.
Fix
Upgrade the contract to a modern Solidity compiler version (e.g., 0.8.x) which includes default overflow/underflow checks. If upgrading is not feasible, thoroughly audit all arithmetic operations, especially those involving uint128 and uint256 types, and explicitly implement SafeMath checks for all additions, subtractions, and multiplications to prevent overflows and underflows.
Status
Unresolved
MediumERC20 approve Front-Running Vulnerability
The standard ERC20 approve function is susceptible to a known front-running attack. If a user approves an amount, then attempts to approve a different amount, a malicious actor can front-run the second transaction. This allows the malicious actor to spend the original approved amount, and then the new approval is set, potentially leading to a double-spend of the approved amount if the user intended to reduce the allowance.M-02
approve Front-Running VulnerabilityIssue
The standard ERC20 approve function is susceptible to a known front-running attack. If a user approves an amount, then attempts to approve a different amount, a malicious actor can front-run the second transaction. This allows the malicious actor to spend the original approved amount, and then the new approval is set, potentially leading to a double-spend of the approved amount if the user intended to reduce the allowance.
Fix
Advise users to set the allowance to zero (approve(spender, 0)) before setting a new non-zero allowance. Alternatively, consider implementing an increaseAllowance and decreaseAllowance pattern, as seen in modern ERC20 implementations, which mitigates this specific front-running vector.
Status
Unresolved
LowNon-Standard transferFrom Return Behavior
The transferFrom function returns false on insufficient allowance rather than reverting. While technically compliant with the original ERC20 specification, modern Solidity best practices and many integrations expect a revert on failure. Returning false can lead to unexpected behavior or silent failures in consuming contracts that do not explicitly check the return value.L-01
transferFrom Return BehaviorIssue
The transferFrom function returns false on insufficient allowance rather than reverting. While technically compliant with the original ERC20 specification, modern Solidity best practices and many integrations expect a revert on failure. Returning false can lead to unexpected behavior or silent failures in consuming contracts that do not explicitly check the return value.
Fix
Consider modifying the transferFrom function to revert (using require() or revert()) instead of returning false when the allowance is insufficient. This aligns with current best practices and improves compatibility with modern DeFi protocols and tools.
Status
Unresolved
InfoLack of Event Emission for Critical Actions
Critical state-changing actions, such as changeController, enableTransfers, disableTransfers, and potentially token minting/burning (if present in the truncated code), do not emit corresponding events. This hinders off-chain monitoring, transparency, and makes it difficult to track significant administrative changes or token supply adjustments.I-01
Issue
Critical state-changing actions, such as changeController, enableTransfers, disableTransfers, and potentially token minting/burning (if present in the truncated code), do not emit corresponding events. This hinders off-chain monitoring, transparency, and makes it difficult to track significant administrative changes or token supply adjustments.
Fix
Emit events for all critical state-changing functions. For example, `event ControllerChanged(address indexed oldController, address indexed newController); or event TransfersEnabled(bool enabled);`. This enhances transparency and allows for easier integration with off-chain monitoring systems.
Status
Unresolved
Analysis
AI Copilotas of audit · Sep 4The contract implements a custom ERC20-like token with a historical balance tracking mechanism. Strengths include a clear separation of concerns with the Controlled base contract and an ITokenController interface for external control. However, the use of Solidity 0.4.24 is a major technical risk, as it lacks modern security features like built-in overflow/underflow checks (e.g., SafeMath) and may contain known compiler bugs (7.2 Code Security). The transferFrom function's non-standard return behavior (returning false instead of reverting) can lead to integration issues (7.2 Code Security). The approve function is also susceptible to front-running attacks (7.2 Code Security).
The economic and governance model is highly centralized around the controller address. This address, initially the contract deployer, has extensive power, including the ability to change the controller, enable/disable all token transfers, and bypass standard transferFrom allowance checks to move tokens arbitrarily (7.3 Access Control). This level of control presents a significant single point of failure and a high governance risk (7.5 Governance). While this design might be intentional for specific use cases (e.g., a DAO's initial token), it requires absolute trust in the controller.
The MiniMeToken contract is not designed as an upgradeable proxy contract. It is a standard, immutable contract deployed directly to the blockchain. Therefore, there are no upgrade-specific risks such as proxy implementation mismatches or storage collisions (7.7 Upgrades). Any changes to the token's logic would require deploying a new contract and migrating users, which is a known characteristic of this design.
It is strongly recommended to migrate to a more modern Solidity compiler version (e.g., 0.8.x) and incorporate robust security libraries like OpenZeppelin Contracts, especially for arithmetic operations (SafeMath).
The extensive centralized control by the controller should be carefully evaluated; if decentralization is a goal, consider implementing a multi-signature wallet or a robust governance mechanism for critical functions. Additionally, ensure all critical state-changing actions emit events for transparency and off-chain monitoring.
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 4, 202651Medium
- Jul 23, 202642Medium
Score changes are recorded as dated snapshots — history is append-only and cannot be edited.
Frequently Asked Questions
What is the LDO contract address?
The Lido DAO (LDO) contract on Ethereum is 0x5a98fcbea516cf06857215779fd812ca3bef1b32. Compare it with the address the project itself publishes before trading: other contracts can carry the same name and ticker.
Is Lido DAO a scam?
Quantum Audit's risk score for Lido DAO is 51/100 (Medium risk) as of Sep 4, 2026, computed by a deterministic function from on-chain facts — Contract verified: Verified; Ownership: Retained; Mint: No mint; Liquidity lock: Not locked; Upgradeability: Fixed code. A score is a dated snapshot of those facts, not a guarantee; each one is listed on this page.
Is LDO liquidity locked?
Liquidity lock: Not locked (as of Sep 4, 2026). Total DEX liquidity: $1.69M.
Who holds LDO?
As of Sep 4, 2026, the 10 largest holders own 50.6% of the supply. The Holders section on this page shows who they are by holder type.
Would You Like a More Detailed Audit of Lido DAO?
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