Everrise Protocol Token & Staking V3 Smart Contract Audit: Chainsulting by Softstack GMBH Audit Report
Everrise Protocol Token & Staking V3 Smart Contract Audit: Chainsulting by Softstack GMBH Audit Report
Protocol
Token & Staking v3
SMART CONTRACT AUDIT
03.04.2022
1. Disclaimer.................................................................................................................................................................................................................... 4
2. About the Project and Company ............................................................................................................................................................................. 5
2.1 Project Overview .................................................................................................................................................................................................. 6
3. Vulnerability & Risk Level ......................................................................................................................................................................................... 7
4. Auditing Strategy and Techniques Applied ............................................................................................................................................................ 8
4.1 Methodology ......................................................................................................................................................................................................... 8
4.2 Tested Contract Files .......................................................................................................................................................................................... 9
4.3 Used Code from other Frameworks/Smart Contracts ................................................................................................................................. 10
4.4 Metrics / CallGraph (Token v3) ....................................................................................................................................................................... 12
4.4.1 Metrics / CallGraph (Staking v3) .................................................................................................................................................................. 13
4.5 Metrics / Source Lines & Risk (Token v3) ..................................................................................................................................................... 14
4.5.1 Metrics / Source Lines & Risk (Staking v3) ................................................................................................................................................ 15
4.6 Metrics / Capabilities (Token v3) ..................................................................................................................................................................... 16
4.6.1 Metrics / Capabilities (Staking v3) ............................................................................................................................................................... 17
4.7 Metrics / Source Unites in Scope .................................................................................................................................................................... 18
5. Scope of Work .......................................................................................................................................................................................................... 19
5.1 Manual and Automated Vulnerability Test ..................................................................................................................................................... 20
CRITICAL ISSUES ................................................................................................................................................................................................. 20
HIGH ISSUES .......................................................................................................................................................................................................... 20
MEDIUM ISSUES ................................................................................................................................................................................................... 20
5.1.1 Overpowered onlyOwner rights ................................................................................................................................................................... 20
5.1.2 Exclude addresses ......................................................................................................................................................................................... 23
The information presented in this report is confidential and privileged. If you are reading this report, you agree to keep it confidential,
not to copy, disclose or disseminate without the agreement of EVERRISE PTE. LTD. If you are not the intended receptor of this
document, remember that any disclosure, copying or dissemination of it is forbidden.
Website: https://www.everrise.com/
Twitter: https://twitter.com/EverRise
Discord: https://discord.com/invite/everrise
LinkedIn: https://www.linkedin.com/company/everrise-pte-ltd/about/
Telegram: https://t.me/everriseofficial
YouTube: https://www.youtube.com/channel/UCCDMjFJUr9OvV03I3wNX7lw
Instagram: https://www.instagram.com/everrisetoken
Facebook: https://www.facebook.com/EverRiseToken
Reddit: https://www.reddit.com/r/EverRise
EverRise token is the keystone in the EverRise Ecosystem of dApps and the overarching key that unlocks multi-blockchain unification
via the EverBridge. EverRise token transactions have 6% buyback and business development fees are collected 4% for token
Buyback from the market, with bought back tokens directly distributed as ve-staking rewards 2% for Business Development
(Development, Sustainability and Marketing).
EverRise Staking NFTs are Vote Escrowed. EverRise weighted governance tokens which generate rewards with a market driven yield
curve, based on the transaction volume of EverRise trades and veEverRise sales. On sales of veEverRise Staking NFTs a 10%
royalty fee is collected 6% for token Buyback from the market,with bought back tokens directly distributed as ve-staking rewards 4%
for Business Development (Development, Sustainability and Marketing).
EverOwn is a dApp that allows developers and project owners to hand over ownership of a contract to their community rather than
renouncing ownership. Renouncing ownership of a contract limits the growth of the ecosystem as it decreases the flexibility of the
project. With EverOwn developers and project owners are able to empower their community, and still have the flexibility to improve
and fix their contract.
EverWallet is a secure and decentralized vault residing on the blockchain and acts as a security protocol to enhance the security of
pre-existing wallets. EverSwap allows the users to purchase, sell and transfer tokens available on PancakeSwap directly to and from
EverWallet.
EverSale is a launchpad powered by the EverRise ecosystem for any BSC or ETH token presales. Unlike other platforms, EverSale
will not be collecting tokens from projects using the launch pad as a fee, ensuring that projects are protected from presale platform
dumps. Adding liquidity to a new token is crucial to ensure the project's development as it is one of the main revenue streams for an
ecosystem. With EverLock, developers will be able to lock their initial liquidity and build trust with their community as the community
will have the ability to vote for unlocking initial liquidity.
4.1 Methodology
The auditing process follows a routine series of steps:
The following are the MD5 hashes of the reviewed files. A file with a different MD5 hash has been modified, intentionally or otherwise,
after the security review. You are cautioned that a different MD5 hash could be (but is not necessarily) an indication of a changed
condition or potential vulnerability that was not within the scope of the review
Language Solidity
Token Standards ERC20 / ERC721
Compiler Version 0.8.13
Buy Back Token Yes
Staking Token Yes
Burn Function Yes
Mint Yes
Cross Chain token Yes
0.8.13 yes
Exposed Functions
This section lists functions that are explicitly declared public or payable. Please note that getter methods for public stateVars are not included.
🌐Public 💰Payable
186 7
177 142 21 12 74
StateVariables
Total 🌐Public
50 20
0.8.13 yes
yes
yes → NewContract:veRise
→ NewContract:claimRise
Exposed Functions
This section lists functions that are explicitly declared public or payable. Please note that getter methods for public stateVars are not included.
🌐Public 💰Payable
133 10
123 77 32 8 75
StateVariables
Total 🌐Public
42 24
📝📚🔍
EverRise_flat.sol 8 12 1774 1528 1034 250 1063 💰📤🧮🔖🔆Σ
🎨
📝📚🔍
Totals 8 12 1774 1528 1034 250 1063 💰📤🧮🔖🔆Σ
🎨
Legend: [➖]
The main goal of this audit was to verify these claims. The auditors can provide additional feedback on the code upon the client’s
request.
CRITICAL ISSUES
During the audit, Chainsulting‘s experts found no Critical issues in the code of the smart contract.
HIGH ISSUES
During the audit, Chainsulting’s experts found no High issues in the code of the smart contract.
MEDIUM ISSUES
During the audit, Chainsulting’s experts found 2 Medium issues in the code of the smart contract.
constructor() {
address deployer = _msgSender();
roles[Role.BuyBack][deployer] = true;
roles[Role.Staking][deployer] = true;
roles[Role.Limits][deployer] = true;
roles[Role.Liquidity][deployer] = true;
roles[Role.Fees][deployer] = true;
roles[Role.Exchanges][deployer] = true;
roles[Role.Nfts][deployer] = true;
}
function addControlRole(address
newController, Role role) external onlyOwner
{
if (role == Role.NotValidRole) revert
NotZero();
if (newController == address(0)) revert
NotZeroAddress();
if (roles[role][newController]) revert
InvalidAddress();
roles[role][newController] = true;
function removeControlRole(address
oldController, Role role) external onlyOwner
{
if (role == Role.NotValidRole) revert
NotZero();
if (oldController == address(0)) revert
NotZeroAddress();
if (!roles[role][oldController]) revert
InvalidAddress();
roles[role][oldController] = false;
emit ControlRemoved(oldController,
role);
}
}
emit ExcludedFromRewards(account);
}
LOW ISSUES
During the audit, Chainsulting’s experts found 3 Low issues in the code of the smart contract.
INFORMATIONAL ISSUES
During the audit, Chainsulting’s experts found 2 Informational issues in the code of the smart contract.
Test
ID Title Relationships Result
Right-To-Left-Override control
character (U+202E)
SWC-130 CWE-451: User Interface (UI) Misrepresentation of Critical Information • $
#
"
✅
Typographical Error
SWC-129 CWE-480: Use of Incorrect Operator • $
#
"
✅
Requirement Violation
SWC-123 CWE-573: Improper Following of Specification by Caller • $
#
"
✅
Signature Malleability
SWC-117 CWE-347: Improper Verification of Cryptographic Signature • $
#
"
✅
Timestamp Dependence
SWC-116 CWE-829: Inclusion of Functionality from Untrusted Control Sphere • $
#
"
✅
Transaction Order Dependence CWE-362: Concurrent Execution using Shared Resource with Improper
SWC-114 Synchronization ('Race Condition')
• $
#
"
✅
Assert Violation
SWC-110 CWE-670: Always-Incorrect Control Flow Implementation • $
#
"
✅
Reentrancy
SWC-107 CWE-841: Improper Enforcement of Behavioral Workflow • $
#
"
✅
Unprotected SELFDESTRUCT
Instruction
SWC-106 CWE-284: Improper Access Control • $
#
"
✅
Floating Pragma
SWC-103 CWE-664: Improper Control of a Resource Through its Lifetime • $
#
"
✅
5.3.2 Owner/Deployer is not able to pause the token contract or freeze user funds
Status: tested and verified ✅
5.3.3 The user can withdraw the stake at anytime and receiving the correct reward
Status: tested and verified ✅
5.3.7 Royalties for the NFT sales are paid out correctly
Status: tested and verified ✅
5.3.9 The smart contract is coded according to the newest standards and in a secure way.
Status: tested and verified ✅
The main goal of the audit was to verify the claims regarding the security of the smart contract and the claims inside the scope of work.
During the audit, 2 Medium, 3 Low and 2 Informational issues were found after the manual and automated security testing.
EverRise: https://etherscan.io/address/0xC17c30e98541188614dF99239cABD40280810cA3#code
nftEverRise: https://etherscan.io/address/0x23cD2E6b283754Fd2340a75732f9DdBb5d11807e#code
veRiseToken: https://etherscan.io/address/0xDbA7b24257fC6e397cB7368B4BC922E944072f1b#code
claimRiseToken: https://etherscan.io/address/0xbBD7B847C6d0d0B5691518a363194D71426475F1#code