Pepe Community - Audit

CertiK1 address on Ethereum

CertiK reviewed Pepe Community (Pepe Community - Audit) on 8 Sep 2023: 16 findings, 0 critical; 2 marked fixed, 2 acknowledged, 12 open.

No open critical findings
Open the reportOpen Pepe Community’s security record

Report hosted on skynet.certik.com.

Trustblock does not review code.

Findings16

Statuses are the security firm’s own, from its report.

SeverityOpenAcknowledgedFixed
Critical000
High011
Medium011
Low1200
HighCentralization Related RisksFixed

In the contract `Ownable` the role `_owner` has authority over the functions shown in the list and diagram below. * renounceOwnership() - Give up ownership rights to the contract * transferOwnership() - Transfer ownership rights to another address Any compromise to the `_owner` account may allow the hacker to take advantage of this authority to control ownership of the contract. ![](https://accelerator-tasks-prod.acc.corp.certik.com/11ee-481a-18a15580-bee8-03a80aa68e38/diagrams/centralization_Pepe-Ownable-_owner.svg) In the contract `Pepe` the role `_owner` has authority over the functions shown in the list and diagram below. * enableTrading() - Enable trading functionality. * removeLimits() - Remove limits after token is stable. * disableTransferDelay() - Disable the transfer delay. * setEarlySellTax() - Enable or disable early sell transaction. * updateSwapTokensAtAmount() - Update the minimum amount of tokens during swapping. * updateMaxTxnAmount() - Update the maximum transaction amount restriction. The new value must be greater than or equal to 0.5% of the total supply. * updateMaxWalletAmount() - Update the maximum wallet amount restriction. The new value must be greater than or equal to 1.5% of the total supply. * excludeFromMaxTransaction() - Exclude or include an address from the maximum transaction amount restriction. * updateSwapEnabled() - Enable or disable the swap functionality. * updateBuyFees() - Update the buy fees for transactions. The owner can set different fees such as marketing fee, liquidity fee, and development fee for buy transactions. The function also calculates the total buy fees and includes a validation check to maintain the fees at 50% or less. * updateSellFees() - Update the sell fees for transactions. The owner can set different fees such as marketing fee, liquidity fee, and development fee for regular sell transactions, as well as specific fees for early sell transactions.The function also calculates the total sell fees and includes a validation check to maintain the fees at 99% or less. * excludeFromFees() - Exclude or include an account from fee calculations. * blacklistAccount() - Add or remove an account from a blacklist. * setAutomatedMarketMakerPair() - Set the address of AMM(Automated Market Maker) pair. * updateMarketingWallet() - Set the address marketing wallet. * updateDevWallet() - Set the address of dev wallet. * setAutoLPBurnSettings() - Configure the settings for automatic LP token burning. The owner can set the frequency of burns, the percentage of tokens to be burned, and enable or disable the automatic burning feature. * manualBurnLiquidityPairTokens() - Manually burn a specified percentage (up to 10%) of tokens from a liquidity pool represented by `uniswapV2Pair`. The tokens are transferred to the `0xdead` address, effectively removing them from circulation. Any compromise to the `_owner` account may allow the hacker to take advantage of this authority and execute the all functions above. ![](https://accelerator-tasks-prod.acc.corp.certik.com/11ee-481a-18a15580-bee8-03a80aa68e38/diagrams/centralization_Pepe-Pepe-_owner.svg) Note: As of 09/01/2023, the ownership has been renounced in the transaction [0xad65e76756b83b846fa0dba9218306947208c2ca9eb1f368d0244cc3dd7b0386](https://etherscan.io/tx/0xad65e76756b83b846fa0dba9218306947208c2ca9eb1f368d0244cc3dd7b0386).

MediumInadequate Blacklisting Mechanism for TransfersFixed

In the `_transfer()` function, there is an incorrect setting of the `to` address as blacklisted when the transfer is made before the `launchedAt` time. It seems that the intention is to blacklist the `to` address if the transfer occurs before the specified launch time. ```solidity=1170 if (block.number <= (launchedAt + 0) && to != uniswapV2Pair && to != address(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D) ) { _blacklist[to] = false; } ``` However, in the code snippet, the condition `block.number <= (launchedAt + 0)` is checked, but the blacklisting mechanism is not triggered. Instead, `_blacklist[to]` is set to false, which means that the `to` address is not added to the blacklist.

Contracts in scope1

AddressChainSource code
0xbe042e9d09cb588331ff911c2b46fd833a3e5bd6Chain: EthereumSource code: Verified source

Part of Pepe Community’s security record

Pepe Community
Audits1 audit by 1 firmLast audit Sep 2023, by CertiK.
Critical findingsNo open critical findingsIn 1 report.
Open Pepe Community’s security record

Security firm

CertiK

1,044 projects reviewed · 1,375 reports · latest May 2025

See CertiK’s audits

Something wrong on this page? A missing report, a wrong date, a finding that was fixed since. Tell us and we check it against its source.

Tell us