KISS KISS META - Smart Contract Audit Report
Audit Summary
KISS KISS META ($KISSME) is a new BEP-20 token on the Binance Smart Chain.
We reviewed the CoinToken contract at 0x3aD2eA050c3A103961475E10c2332E043E170840 on the Binance Smart Chain mainnet.
Audit Findings
Please ensure trust in the team prior to investing as they currently own a large portion of the total supply.
Date: February 11th, 2022.
Contract Overview
- The total supply of the token is currently 60 billion $KISSME [60,000,000,000].
- Any user can burn their own tokens to reduce the total supply.
- Any user can burn tokens on another user's behalf if an allowance has been granted.
- The owner can mint any amount of tokens at any time until the finishMinting() function has been called.
- The top three holders own a cumulative 89.71% of the total supply.
- The next five holders own a cumulative 6.57% of the total supply.
- The contract implements the EIP-1363 standard to support transfer-and-call and approve-and-call functionality.
- The owner can withdraw any tokens from the contract address at any time.
- There are no fees associated with transferring tokens.
- As the contract is deployed with Solidity v0.8.5, it is protected from overflows/underflows.
- The contract complies with the BEP-20 token standard.
External Threat Results
Vulnerability Category | Notes | Result |
---|---|---|
Arbitrary Storage Write | N/A | PASS |
Arbitrary Jump | N/A | PASS |
Centralization of Control | WARNING | |
Delegate Call to Untrusted Contract | N/A | PASS |
Dependence on Predictable Variables | N/A | PASS |
Deprecated Opcodes | N/A | PASS |
Ether Thief | N/A | PASS |
Exceptions | N/A | PASS |
External Calls | N/A | PASS |
Flash Loans | N/A | PASS |
Integer Over/Underflow | N/A | PASS |
Logical Issues | N/A | PASS |
Multiple Sends | N/A | PASS |
Oracles | N/A | PASS |
Suicide | N/A | PASS |
State Change External Calls | N/A | PASS |
Unchecked Retval | N/A | PASS |
User Supplied Assertion | N/A | PASS |
Critical Solidity Compiler | N/A | PASS |
Overall Contract Safety | PASS |
Function Graph
Inheritance Chart
Functions Overview
($) = payable function
# = non-constant function
+ [Int] IERC20
- [Ext] totalSupply
- [Ext] balanceOf
- [Ext] transfer #
- [Ext] allowance
- [Ext] approve #
- [Ext] transferFrom #
+ [Int] IERC20Metadata (IERC20)
- [Ext] name
- [Ext] symbol
- [Ext] decimals
+ Context
- [Int] _msgSender
- [Int] _msgData
+ ERC20 (Context, IERC20, IERC20Metadata)
- [Pub] #
- [Pub] name
- [Pub] symbol
- [Pub] decimals
- [Pub] totalSupply
- [Pub] balanceOf
- [Pub] transfer #
- [Pub] allowance
- [Pub] approve #
- [Pub] transferFrom #
- [Pub] increaseAllowance #
- [Pub] decreaseAllowance #
- [Int] _transfer #
- [Int] _mint #
- [Int] _burn #
- [Int] _approve #
- [Int] _beforeTokenTransfer #
+ ERC20Burnable (Context, ERC20)
- [Pub] burn #
- [Pub] burnFrom #
+ [Lib] Address
- [Int] isContract
- [Int] sendValue #
- [Int] functionCall #
- [Int] functionCall #
- [Int] functionCallWithValue #
- [Int] functionCallWithValue #
- [Int] functionStaticCall
- [Int] functionStaticCall
- [Int] functionDelegateCall #
- [Int] functionDelegateCall #
- [Prv] _verifyCallResult
+ [Int] IERC165
- [Ext] supportsInterface
+ ERC165 (IERC165)
- [Pub] supportsInterface
+ [Int] IERC1363 (IERC20, IERC165)
- [Ext] transferAndCall #
- [Ext] transferAndCall #
- [Ext] transferFromAndCall #
- [Ext] transferFromAndCall #
- [Ext] approveAndCall #
- [Ext] approveAndCall #
+ [Int] IERC1363Receiver
- [Ext] onTransferReceived #
+ [Int] IERC1363Spender
- [Ext] onApprovalReceived #
+ ERC1363 (ERC20, IERC1363, ERC165)
- [Pub] supportsInterface
- [Pub] transferAndCall #
- [Pub] transferAndCall #
- [Pub] transferFromAndCall #
- [Pub] transferFromAndCall #
- [Pub] approveAndCall #
- [Pub] approveAndCall #
- [Int] _checkAndCallTransfer #
- [Int] _checkAndCallApprove #
+ Ownable (Context)
- [Pub] owner
- [Pub] renounceOwnership #
- modifiers: onlyOwner
- [Pub] transferOwnership #
- modifiers: onlyOwner
+ TokenRecover (Ownable)
- [Pub] recoverERC20 #
- modifiers: onlyOwner
+ ERC20Decimals (ERC20)
- [Pub] #
- [Pub] decimals
+ ERC20Mintable (ERC20)
- [Ext] mintingFinished
- [Ext] mint #
- modifiers: canMint
- [Ext] finishMinting #
- modifiers: canMint
- [Int] _finishMinting #
+ CoinToken (ERC20Decimals, ERC20Mintable, ERC20Burnable, ERC1363, TokenRecover)
- [Pub] ($)
- modifiers: ERC20,ERC20Decimals
- [Pub] decimals
- [Int] _mint #
- modifiers: onlyOwner
- [Int] _finishMinting #
- modifiers: onlyOwner