The FourERC20 contract is an implementation of the ERC-20 standard, largely based on OpenZeppelin's battle-tested libraries. However, the contract as provided lacks a constructor to initialize token parameters (name, symbol) and, critically, a mechanism to mint the initial supply of tokens. If deployed directly, this contract would result in a non-functional token with zero total supply, rendering it unusable for its intended purpose. This fundamental design flaw constitutes a critical vulnerability.

On-chain security analysis — is it a scam or legit?
Is Palu 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 FourERC20 contract is an implementation of the ERC-20 standard, largely based on OpenZeppelin's battle-tested libraries.
Read the full analysis- Top-10 concentration > 30%
- 1 Critical finding(s) from audit
Exact factors
- Top-10 concentration > 30% (71.6% total → 31.4% effective; 4.5% in EOAs, 67.1% in contracts — moderate)
- 1 Critical 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, staking67.1%
- Walletsanonymous holders, free to sell4.5%
- Everyone elsethe rest of the supply28.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- Pancakeswap v2WBNBAnalysed$370.5K96.6%
- UniswapUSDT$7.5K2.0%
- Pancakeswap v3USDT$4.1K1.1%
- Pancakeswap v3WBNB$1.3K0.3%
The risk score reads depth across every pair.
The LP tokens of the analysed pool are locked or burned.
0xbed6…53d20x3c5c…66b60x69c0…fd740x2fb8…ea690x0f7a…056d0x4dd4…a26bNo privileged address appears among these holders: the unlocked liquidity sits with independent providers, not with the deployer.
Security Findings
CriticalNon-functional Token due to Missing Constructor and Minting Logic
The FourERC20 contract, as provided, lacks a public constructor to initialize the token's _name and _symbol variables. More critically, it does not include any public or external function to mint an initial supply of tokens. The _mint function is internal, meaning it can only be called by the contract itself or a derived contract. If FourERC20 is deployed directly, _totalSupply will remain 0, and no tokens can ever be created, rendering the token completely non-functional and unusable.C-01
Issue
The FourERC20 contract, as provided, lacks a public constructor to initialize the token's _name and _symbol variables. More critically, it does not include any public or external function to mint an initial supply of tokens. The _mint function is internal, meaning it can only be called by the contract itself or a derived contract. If FourERC20 is deployed directly, _totalSupply will remain 0, and no tokens can ever be created, rendering the token completely non-functional and unusable.
Fix
Implement a public constructor in FourERC20 that calls _init(name_, symbol_) and _mint(recipient, initialSupply) to set the token's metadata and create an initial supply upon deployment. Alternatively, ensure that any contract inheriting FourERC20 properly implements these initialization and minting steps in its own constructor.
Status
Unresolved
InfoUse of Internal _init Function for Token Metadata
The contract uses an internal function _init(string memory name_, string memory symbol_) to set the token's name and symbol. While this pattern is common in base contracts designed for inheritance, it means that if FourERC20 is deployed directly without a derived contract calling _init in its constructor, the _name and _symbol state variables will remain empty strings. This contributes to the non-functional state of the token.I-01
_init Function for Token MetadataIssue
The contract uses an internal function _init(string memory name_, string memory symbol_) to set the token's name and symbol. While this pattern is common in base contracts designed for inheritance, it means that if FourERC20 is deployed directly without a derived contract calling _init in its constructor, the _name and _symbol state variables will remain empty strings. This contributes to the non-functional state of the token.
Fix
If FourERC20 is intended to be directly deployable, convert _init into a public constructor. If it's strictly a base contract, ensure clear documentation for developers inheriting it to call _init in their derived contract's constructor.
Status
Unresolved
InfoAdherence to OpenZeppelin Standards
The FourERC20 contract largely follows the structure and implementation patterns of OpenZeppelin Contracts for ERC-20 tokens. This includes using Context for _msgSender(), implementing standard ERC-20 functions, and including increaseAllowance and decreaseAllowance to mitigate common allowance-related issues. This adherence to well-audited and widely adopted standards enhances the contract's inherent security and reliability.I-02
Issue
The FourERC20 contract largely follows the structure and implementation patterns of OpenZeppelin Contracts for ERC-20 tokens. This includes using Context for _msgSender(), implementing standard ERC-20 functions, and including increaseAllowance and decreaseAllowance to mitigate common allowance-related issues. This adherence to well-audited and widely adopted standards enhances the contract's inherent security and reliability.
Fix
Continue to leverage and stay updated with OpenZeppelin's best practices and contract versions. Ensure any custom logic added in the future maintains the same high standards.
Status
Unresolved
Analysis
AI Copilotas of audit · Sep 4The contract leverages well-audited OpenZeppelin libraries for its core ERC-20 functionality, which contributes to strong code security (7.2 Code Security). Standard ERC-20 functions like transfer, approve, and transferFrom are correctly implemented. However, the primary technical risk lies in the contract's architecture (7.1 Architecture) as a standalone deployable token, specifically the absence of a constructor and any public or external minting functions. This design flaw prevents the token from ever having a supply, making it non-functional.
The contract has no explicit governance mechanisms (7.5 Governance) or access control roles beyond the standard ERC-20 sender/spender model (7.3 Access Control). The economic model (7.4 Economic) is severely compromised because the token's total supply is permanently zero due to the lack of a minting function. This renders the token economically worthless and unusable, representing a critical economic risk.
The FourERC20 contract is not designed as an upgradeable proxy (7.7 Upgrades). Therefore, there are no specific upgrade-related risks. Any changes to the token's logic would require deploying a new contract.
It is strongly recommended to either implement a constructor within the FourERC20 contract to initialize _name, _symbol, and mint an initial supply, or to deploy a derived contract that properly extends FourERC20 with these essential functionalities.
Without a constructor and a minting mechanism, the deployed token will be non-functional. Additionally, consider adding an Ownable or similar access control pattern if specific administrative functions (like pausing or further minting/burning) are desired post-deployment.
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.
- Aug 30, 20262Low
Score changes are recorded as dated snapshots — history is append-only and cannot be edited.
Would You Like a More Detailed Audit of Palu?
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