After conducting a full inspection of token contracts on, the CertiK concluded that among the top 500 tokens, 53 are impacted with different severity of loopholes, with a total market cap of $40 million. Among them, 70% of the smart contracts have integer overflow issues, while 30% have functional correctness issues. There are a total of 3 new types of critical bugs, 2 new types of medium bugs, and numerous bugs with low priority: Unlimited Burn
- Severity: Critical
- Symptom: Once User A approves User B 1 token as allowance, User B will be able to drain/burn all the rest of the tokens from User A due to the flawed function implementation
- Total market cap of impacted smart contracts: $15,000,000
Unlimited Mint
- Severity: Critical
- Symptom: Contract owner can mint an unlimited amount of tokens. This puts the token holders at stake because the value of the tokens that they are holding may diminish as supply increases. This is subtle and cannot be easily spotted from the contract itself. It could also lead to fraud
- Total market cap of impacted smart contracts: $3,000,000
Token Transfer = Mint
- Severity: Critical
- Symptom: Contract owner can mint an unlimited amount of tokens through integer overflow or during token transfer
- Total market cap of impacted smart contracts: $16,000,000
Orphan Token
- Severity: Medium
- Symptom: Ownership transfer is not properly implemented. A contract may lose its owner when the ownership is transferred and fails. As a result, the contract can go wild and no one has permission to administer the -contract
Underflow from Balance Withdrawal
- Severity: Medium
- Symptom: User gets fewer tokens than they should from balance withdrawal, due to an integer overflow issue
Smart Contracts have attracted significant attention from hackers, as a result of their unique characteristics (i.e. immutability and transparency). Although there are ways to salvage a hacked project, such as a hard fork or a technical upgrade, the most effective means of ensuring safety is to vigilantly prevent the common types of attacks.