Solid Proof
Solid Proof
AUDIT
SECURITY ASSESSMENT
SolidProof_io @solidproof_io
Introduction 3
Disclaimer 3
Project Overview 4
Summary 4
Social Medias 4
Audit Summary 5
File Overview 6
Imported packages 6
Components 7
Exposed Functions 7
Capabilities 8
Inheritance Graph 9
Audit Information 10
Vulnerability & Risk Level 10
Auditing Strategy and Techniques Applied 11
Methodology 11
Overall Security 12
Upgradeability 12
Ownership 13
Ownership Privileges 14
Minting tokens 14
Burning tokens 15
Blacklist addresses 16
Fees and Tax 17
Lock User Funds 18
Centralization Privileges 19
Audit Results 20
2
Introduction
SolidProof.io is a brand of the officially registered company
FutureVisions Deutschland, based in Germany. We’re mainly focused
on Blockchain Security such as Smart Contract Audits and KYC
verification for project teams.
Solidproof.io assess potential security issues in the smart contracts
implementations, review for potential inconsistencies between the
code base and the whitepaper/documentation, and provide
suggestions for improvement.
Disclaimer
SolidProof.io reports are not, nor should be considered, an
“endorsement”or “disapproval” of any particular project or team. These
reports are not, nor should be considered, an indication of the
economics or value of any “product” or “asset” created by any team.
SolidProof.io do not cover testing or auditing the integration with
external contract or services (such as Unicrypt, Uniswap, PancakeSwap
etc’...)
3
Project Overview
Summary
Project Name Flockerz
Website https://flockerz.com/
About the project The project that redefines decentralization. In the chaotic
PVP world of meme coins, where major decisions are
often made by a select few, FLOCKERZ empowers its
community—known as "The Flock"
Chain Ethereum Network
Language Solidity
Codebase https://etherscan.io/address/0xb33D999469a7e6b9EbC2
5A3a05248287b855eD46#code
Commit N/A
Unit Tests Not Provided
Social Medias
Telegram https://t.me/flockerz
Twitter https://x.com/FlockerzToken
Facebook N/A
Instagram N/A
GitHub N/A
Reddit N/A
Medium N/A
Discord N/A
YouTube N/A
TikTok N/A
LinkedIn N/A
4
Audit Summary
Version Delivery Date Change Log
5
File Overview
The Team provided us with the files that should be tested in the security
assessment. This audit covered the following files listed below with an
SHA-1 Hash.
contracts/Token.sol 74fbe1a2e579542a9cb4fc6f5635b3c78547cd78
Please note: Files with a different hash value than in this table have been modified
after the security check, either intentionally or unintentionally. A different hash value
may (but need not) be an indication of a changed state or potential vulnerability that
was not the subject of this scan.
Imported packages.
Used code from other Frameworks/Smart Contracts.
N/A
6
External/Public functions
External/public functions are functions that can be called from outside of a contract,
i.e., they can be accessed by other contracts or external accounts on the blockchain.
These functions are specified using the function declaration’s external or public
visibility modifier.
State variables
State variables are variables that are stored on the blockchain as part of the
contract'sstate. They are declared at the contract level and can be accessed
and modified by any function within the contract. State variables can be
needed within visibility modifier, such as public, private or internal, which
determines the access level of the variable.
Components
Contracts Libraries Interfaces Abstract
1 0 2 2
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
24 0
10 26 0 0 16
StateVariables
Total Public
12 5
7
Capabilities
Low- Uses
Transfer Level Delegate Hash New/Create/
ECRecover
s ETH Calls Call Functions Create2
yes
8
Inheritance Graph
An inheritance graph is a graphical representation of the inheritance hierarchy
among contracts. In object-oriented programming, inheritance is a mechanism
that allows one class (or contract, in the case of Solidity) to inherit properties and
methodsfrom another class. It shows the relationships between different contracts
and how they are related to each other through inheritance.
9
Audit Information
Vulnerability & Risk Level
Risk represents the probability that a certain source threat will exploit
thevulnerability and the impact of that event on the organization or
system.The risk level is computed based on CVSS version 3.0.
10
Auditing Strategy and Techniques Applied
Throughout the review process, care was taken to check the repository
for security-related issues, code quality, and compliance with
specifications and best practices. To this end, our team of experienced
pen-testers andsmart contract developers reviewed the code line by
line and documented any issues discovered.
We check every file manually. We use automated tools only so that they
help us achieve faster and better results.
Methodology
The auditing process follows a routine series of steps:
11
Overall Security
Upgradeability
Deployer cannot update the contract
Contract is not an upgradable with new functionalities.
12
Ownership
The ownership
Contract is is
ownership
The ownership is renounced.
renounced.
renounced.
13
Ownership Privileges
These functions can be dangerous. Please note that abuse can lead to financial loss.
We have a guide where you can learn more about these Functions.
Minting tokens
Minting tokens refer to the process of creating new tokens in a cryptocurrency or
blockchain network. This process is typically performed by the project's owner or
designated authority, who has the ability to add new tokens to the network's total
supply.
14
Burning tokens
Burning tokens is the process of permanently destroying a certain number of
tokens, reducing the total supply of a cryptocurrency or token. This is usually done
to increase the value of the remaining tokens, as the reduced supply can create
scarcity and potentially drive up demand.
15
Blacklist addresses
Blacklisting addresses in smart contracts is the process of adding a
certain address to a blacklist, effectively preventing them from
accessingor participating in certain functionalities or transactions
within the contract. This can be useful in preventing fraudulent or
malicious activities, such as hacking attempts or money laundering.
16
Fees and Tax
In some smart contracts, the owner or creator of the contract can
setfees for certain actions or operations within the contract. These fees
can be used to cover the cost of running the contract, such as paying
for gas fees or compensating the contract's owner for their time and
effort indeveloping and maintaining the contract.
17
Lock User Funds
In a smart contract, locking refers to the process of restricting access to
certain tokens or assets for a specified period of time. When token or
assets are locked in a smart contract, they cannot be transferred or
used until the lock-up period has expired or certain conditions have
been met.
Comment N/A
18
Centralization Privileges
Centralization can arise when one or more parties have privileged access or control
over the contract's functionality, data, or decision-making. This can occur, for
example,if the contract is controlled by a single entity or if certain participants have
special permissions or abilities that others do not.
In the project, there are authorities that have access to the following
functions:
File Privileges
Token.sol ➢ There are no ownership privileges in the contract. The
owner cannot change any settings in the contract.
Recommendations
To avoid potential hacking risks, it is advisable for the client to manage
the private key of the privileged account with care. Additionally, we
recommend enhancing the security practices of centralized privileges
or roles in the protocol through a decentralized mechanism or smart-
contract-based accounts, such as multi-signature wallets.
19
Audit Result
Critical Issues
No critical issues
High Issues
No high issues
Medium Issue
No medium issues
Low Issue
No low issues
Informational Issue
20
Legend for the Issue Status
Attribute or Symbol Meaning
21