[go: up one dir, main page]

0% found this document useful (0 votes)
972 views12 pages

$PePe Coin Full Smart Contract Security Audit

The audit summary is as follows: 1) An audit of the $PePe smart contracts was conducted to ensure proper functionality and identify security issues. 2) The audit reviewed the smart contract functions and interactions to check for vulnerabilities like reentrancy, race conditions, DoS vulnerabilities, and proper access control. 3) No critical issues were found and the smart contracts were determined to function as intended.

Uploaded by

Satu Langkah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
972 views12 pages

$PePe Coin Full Smart Contract Security Audit

The audit summary is as follows: 1) An audit of the $PePe smart contracts was conducted to ensure proper functionality and identify security issues. 2) The audit reviewed the smart contract functions and interactions to check for vulnerabilities like reentrancy, race conditions, DoS vulnerabilities, and proper access control. 3) No critical issues were found and the smart contracts were determined to function as intended.

Uploaded by

Satu Langkah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

Smart Contract Security Audit

Audit details:
Audited project: $PePe
Deployer address: 0xd778875DCb2c2313d243270B42177d521A6897Df
Client contacts: $PePe team
Blockchain: Binance Smart Chain
Project website: https://pepecryptocoins.com

May, 2021
TechRate
Disclaimer
This is a limited report on our findings based on our analysis, in accordance with
good industry practice as at the date of this report, in relation to cybersecurity
vulnerabilities and issues in the framework and algorithms based on smart
contracts, the details of which are set out in this report. In order to get a full view of
our analysis, it is crucial for you to read the full report. While we have done our best
in conducting our analysis and producing this report, it is important to note that you
should not rely on this report and cannot claim against us on the basis of what it
says or doesn’t say, or how we produced it, and it is important for you to conduct
your own independent investigations before making any decisions. We go into more
detail on this in the below disclaimer below – please make sure to read it in full.
DISCLAIMER: By reading this report or any part of it, you agree to the terms of this
disclaimer. If you do not agree to the terms, then please immediately cease reading
this report, and delete and destroy any and all copies of this report downloaded
and/or printed by you. This report is provided for information purposes only and on
a non-reliance basis, and does not constitute investment advice. No one shall have
any right to rely on the report or its contents, and TechRate and its affiliates
(including holding companies, shareholders, subsidiaries, employees, directors,
officers and other representatives) (TechRate) owe no duty of care towards you or
any other person, nor does TechRate make any warranty or representation to any
person on the accuracy or completeness of the report. The report is provided "as
is", without any conditions, warranties or other terms of any kind except as set out
in this disclaimer, and TechRate hereby excludes all representations, warranties,
conditions and other terms (including, without limitation, the warranties implied by
law of satisfactory quality, fitness for purpose and the use of reasonable care and
skill) which, but for this clause, might have effect in relation to the report. Except
and only to the extent that it is prohibited by law, TechRate hereby excludes all
liability and responsibility, and neither you nor any other person shall have any
claim against TechRate, for any amount or kind of loss or damage that may result to
you or any other person (including without limitation, any direct, indirect, special,
punitive, consequential or pure economic loss or damages, or any loss of income,
profits, goodwill, data, contracts, use of money, or business interruption, and
whether in delict, tort (including without limitation negligence), contract, breach of
statutory duty, misrepresentation (whether innocent or negligent) or otherwise
under any claim of any nature whatsoever in any jurisdiction) in any way arising
from or connected with this report and the use, inability to use or the results of use
of this report, and any reliance on this report.
The analysis of the security is purely based on the smart contracts alone. No
applications or operations were reviewed for security. No product code has been
reviewed.
Background
TechRate was commissioned by $PePe to perform an audit of smart contracts:
● https://bscscan.com/address/0xff593cb838547700c565024c42ce9a2a24511b
01#code
The purpose of the audit was to achieve the following:
● Ensure that the smart contract functions as intended.
● Identify potential security issues with the smart contract.

The information in this report should be used to understand the risk exposure of the
smart contract, and as a guide to improve the security posture of the smart
contract by remediating the issues that were identified.
Contracts details
Token contract details for 15.05.2021.
Contract name: $PePe
Contract address: 0xFf593Cb838547700C565024C42ce9A2a24511b01
Total supply: 1_000_000_000_000_000_000_000_000_000_000
Token ticker: $PePe
Decimals: 18
Token holders: 1
Transactions count: 2
Top 100 holders dominance: 100.00%
Liquidity fee: 2
Tax fee: 2
Total fees: 0
Uniswap V2 pair: 0x3c52c97f9167c8dbe4d05709b7ec092244a4a833
Contract deployer address: 0xd778875DCb2c2313d243270B42177d521A6897Df
Contract’s current owner 0xf1872b9ab82a571ccbb69def5dc64922804c8df8
address:
$PePe token distribution

$PePe top 10 token holders


Contract functions details
+ [Int] IBEP20
- [Ext] totalSupply
- [Ext] balanceOf
- [Ext] transfer #
- [Ext] allowance
- [Ext] approve #
- [Ext] transferFrom #
+ [Lib] SafeMath
- [Int] tryAdd
- [Int] trySub
- [Int] tryMul
- [Int] tryDiv
- [Int] tryMod
- [Int] add
- [Int] sub
- [Int] mul
- [Int] div
- [Int] mod
- [Int] sub
- [Int] div
- [Int] mod
+ Context
- [Int] _msgSender
- [Int] _msgData
+ [Lib] Address
- [Int] isContract
- [Int] sendValue #
- [Int] functionCall #
- [Int] functionCall #
- [Int] functionCallWithValue #
- [Int] functionCallWithValue #
- [Int] functionStaticCall
- [Int] functionStaticCall
- [Int] functionDelegateCall #
- [Int] functionDelegateCall #
- [Prv] _verifyCallResult
+ Ownable (Context)
- [Pub] <Constructor> #
- [Pub] owner
- [Pub] renounceOwnership #
- modifiers: onlyOwner
- [Pub] transferOwnership #
- modifiers: onlyOwner
- [Pub] geUnlockTime
- [Pub] lock #
- modifiers: onlyOwner
- [Pub] unlock #
+ [Int] IPancakeSwapV2Factory
- [Ext] feeTo
- [Ext] feeToSetter
- [Ext] getPair
- [Ext] allPairs
- [Ext] allPairsLength
- [Ext] createPair #
- [Ext] setFeeTo #
- [Ext] setFeeToSetter #
+ [Int] IPancakeSwapV2Pair
- [Ext] name
- [Ext] symbol
- [Ext] decimals
- [Ext] totalSupply
- [Ext] balanceOf
- [Ext] allowance
- [Ext] approve #
- [Ext] transfer #
- [Ext] transferFrom #
- [Ext] DOMAIN_SEPARATOR
- [Ext] PERMIT_TYPEHASH
- [Ext] nonces
- [Ext] permit #
- [Ext] MINIMUM_LIQUIDITY
- [Ext] factory
- [Ext] token0
- [Ext] token1
- [Ext] getReserves
- [Ext] price0CumulativeLast
- [Ext] price1CumulativeLast
- [Ext] kLast
- [Ext] mint #
- [Ext] burn #
- [Ext] swap #
- [Ext] skim #
- [Ext] sync #
- [Ext] initialize #
+ [Int] IPancakeSwapV2Router01
- [Ext] factory
- [Ext] WETH
- [Ext] addLiquidity #
- [Ext] addLiquidityETH ($)
- [Ext] removeLiquidity #
- [Ext] removeLiquidityETH #
- [Ext] removeLiquidityWithPermit #
- [Ext] removeLiquidityETHWithPermit #
- [Ext] swapExactTokensForTokens #
- [Ext] swapTokensForExactTokens #
- [Ext] swapExactETHForTokens ($)
- [Ext] swapTokensForExactETH #
- [Ext] swapExactTokensForETH #
- [Ext] swapETHForExactTokens ($)
- [Ext] quote
- [Ext] getAmountOut
- [Ext] getAmountIn
- [Ext] getAmountsOut
- [Ext] getAmountsIn
+ [Int] IPancakeSwapV2Router02 (IPancakeSwapV2Router01)
- [Ext] removeLiquidityETHSupportingFeeOnTransferTokens #
- [Ext] removeLiquidityETHWithPermitSupportingFeeOnTransferTokens #
- [Ext] swapExactTokensForTokensSupportingFeeOnTransferTokens #
- [Ext] swapExactETHForTokensSupportingFeeOnTransferTokens ($)
- [Ext] swapExactTokensForETHSupportingFeeOnTransferTokens #
+ $PePe (Context, IBEP20, Ownable)
- [Pub] <Constructor> #
- [Pub] name
- [Pub] symbol
- [Pub] decimals
- [Pub] totalSupply
- [Pub] balanceOf
- [Pub] transfer #
- [Pub] allowance
- [Pub] approve #
- [Pub] transferFrom #
- [Pub] increaseAllowance #
- [Pub] decreaseAllowance #
- [Pub] isExcludedFromReward
- [Pub] totalFees
- [Pub] deliver #
- [Pub] reflectionFromToken
- [Pub] tokenFromReflection
- [Pub] excludeFromReward #
- modifiers: onlyOwner
- [Ext] includeInReward #
- modifiers: onlyOwner
- [Pub] excludeFromFee #
- modifiers: onlyOwner
- [Pub] includeInFee #
- modifiers: onlyOwner
- [Ext] setTaxFeePercent #
- modifiers: onlyOwner
- [Ext] setMarketingFeePercent #
- modifiers: onlyOwner
- [Ext] setLiquidityFeePercent #
- modifiers: onlyOwner
- [Ext] setMaxTxPercent #
- modifiers: onlyOwner
- [Pub] setSwapAndLiquifyEnabled #
- modifiers: onlyOwner
- [Ext] <Fallback> ($)
- [Prv] _reflectFee #
- [Prv] _getValues
- [Prv] _getTValues
- [Prv] _getRValues
- [Prv] _getRate
- [Prv] _getCurrentSupply
- [Prv] _takeLiquidity #
- [Prv] _takeMarketing #
- [Prv] calculateTaxFee
- [Prv] calculateMarketingFee
- [Prv] calculateLiquidityFee
- [Prv] removeAllFee #
- [Prv] restoreAllFee #
- [Pub] isExcludedFromFee
- [Prv] _approve #
- [Prv] _transfer #
- [Prv] swapAndLiquify #
- modifiers: lockTheSwap
- [Prv] swapTokensForEth #
- [Prv] addLiquidity #
- [Prv] _tokenTransfer #
- [Prv] _transferStandard #
- [Prv] _transferToExcluded #
- [Prv] _transferFromExcluded #
- [Prv] _transferBothExcluded #

($) = payable function


# = non-constant function
Issues Checking Status
№ Issue description. Checking status
1 Compiler errors. Passed
2 Race conditions and Reentrancy. Passed
Cross-function race conditions.
3 Possible delays in data delivery. Passed
4 Oracle calls. Passed
5 Front running. Passed
6 Timestamp dependence. Passed
7 Integer Overflow and Underflow. Passed
8 DoS with Revert. Passed
9 DoS with block gas limit. Low issues
10 Methods execution permissions. Passed
11 Economy model of the contract. Passed
12 The impact of the exchange rate on the logic. Passed
13 Private user data leaks. Passed
14 Malicious Event log. Passed
15 Scoping and Declarations. Passed
16 Uninitialized storage pointers. Passed
17 Arithmetic accuracy. Passed
18 Design Logic. Passed
19 Cross-function race conditions. Passed
20 Safe Open Zeppelin contracts Passed
implementation and usage.
21 Fallback function security. Passed
Security Issues
High Severity Issues
No high severity issues found.
Medium Severity Issues
No medium severity issues found.
Low Severity Issues
1. Out of gas
Issue:
❏ The function includeInReward uses the loop to find and remove
addresses from the _excluded list. Function will be aborted with
OUT_OF_GAS exception if there will be a long excludedaddresses list.
❏ The function _getCurrentSupply also uses the loop for evaluating total
supply. It also could be aborted with OUT_OF_GAS exception if there
will be a long excluded addresses list.
Recommendation:
Use EnumerableSet instead of array or do not use longarrays.
Owner privileges
Owner can change the tax, marketing and liquidity fee.

❏ Owner can change the maximum transaction amount.
❏ Owner can exclude from the fee.
Conclusion
Smart contracts do not contain high severity issues! Liquidity pair contract’s
security is not checked due to out of scope.
No liquidity locking details provided by the team.
Techrate note:
Please check the disclaimer above and note, the audit makes no statements or warranties
on business model, investment attractiveness or code sustainability. The report is provided
for the only contract mentioned in the report and does not include any other potential
contracts deployed by Owner.

You might also like