DeeLance Info

deelance.com

Deelance is a freelancing and Recruitment platform based on Web3. Deelance is one such decentralized platform that is redefining how freelancers connect with potential employers and buyers

Overall Score
79.55
Poor Excellent
DeeLance Logo

Real-Time Threat Detection

Real-time threat detection, powered by Cyvers.io, is currently not activated for this project.

This advanced feature provides continuous monitoring and instant alerts to safeguard your assets from potential security threats. Real-time detection enhances your project's security by proactively identifying and mitigating risks. For more information, click here.

TrustNet DataPulse

Smart Contract Audit

Select the audit
Static Analysis Dynamic Analysis Symbolic Execution SWC Check Manual Review
Contract address
0x74c9...3C0C
Network
Ethereum - Mainnet
License N/A
Compiler N/A
Type N/A
Language Solidity
Onboard date 2023/02/21
Revision date In progress

Summary and Final Words

No crucial issues found

The contract does not contain issues of high or medium criticality. This means that no known vulnerabilities were found in the source code.

Contract owner cannot mint

It is not possible to mint new tokens.

Contract owner can blacklist addresses

It is possible to lock user funds by blacklisting addresses.

Contract owner can set high fees

Contract owner is able to set fees above 25%. Very high fees can also prevent token transfer.

Token transfer can be locked

Owner can lock user funds with owner functions.

Token cannot be burned

There is no burn function within the contract.

Ownership is not renounced

Contract can be manipulated by owner functions.

Scope of Work

This audit encompasses the evaluation of the files listed below, each verified with a SHA-1 Hash. The team referenced above has provided the necessary files for assessment.

The auditing process consists of the following systematic steps:

  1. Specification Review: Analyze the provided specifications, source code, and instructions to fully understand the smart contract's size, scope, and functionality.
  2. Manual Code Examination: Conduct a thorough line-by-line review of the source code to identify potential vulnerabilities and areas for improvement.
  3. Specification Alignment: Ensure that the code accurately implements the provided specifications and intended functionalities.
  4. Test Coverage Assessment: Evaluate the extent and effectiveness of test cases in covering the codebase, identifying any gaps in testing.
  5. Symbolic Execution: Analyze the smart contract to determine how various inputs affect execution paths, identifying potential edge cases and vulnerabilities.
  6. Best Practices Evaluation: Assess the smart contracts against established industry and academic best practices to enhance efficiency, maintainability, and security.
  7. Actionable Recommendations: Provide detailed, specific, and actionable steps to secure and optimize the smart contracts.

A file with a different Hash has been intentionally or otherwise modified after the security review. A different Hash may indicate a changed condition or potential vulnerability that was not within the scope of this review.

Final Words

The following provides a concise summary of the audit report, accompanied by insightful comments from the auditor. This overview captures the key findings and observations, offering valuable context and clarity.


Ownership/Authority Privileges:

The authority other than the owner known as Verifier will be decided at the time of deployment and it can only be changed when the owner and the verifier itself vote. But even after the voting it will be upon the owner's discretion to set the verifier.

The verifier address has no privileges but the verifier's vote can decide whether the owner will be able to make transfers or not.

The owner has the following privileges:

  • Enable/Disable antiDump and antiBot
  • Set antiDump interval and amount to any arbitrary value.
  • Include/Exclude wallets from fees
  • Set the max transaction amount to any arbitrary value including zero to lock user funds.
  • Set fee wallet, and Enable/Disable fees
  • Start and Stop Trading to lock user funds
  • Set AMM pair address
  • BlackList Addresses
  • Recover ETH and other tokens from the contract.
  • Set buy and sell fees up to 100% or more 

We recommend investors/users to do their own research before investing

Files and details

Functions
public

/

State variables
public

/

Total lines
of code

/

Capabilities
Hover on items

/

Findings and Audit result

medium Issues | 1 findings

Pending

#1 medium Issue
Fees can be 100% or more
L1015
L1019
Description

The owner is able to set the fees up to 100% or even more which will lead to loss of user funds and may cause some functions to revert, It is recommended to limit the maximum fees under 25% which is to be set by the owner.

low Issues | 4 findings

Pending

#1 low Issue
Missing Events Access Control (events-access)
DeeLance.sol
L1031-1036
Description

Emit an event for critical parameter changes.

Pending

#2 low Issue
Missing Events Arithmetic (events-maths)
DeeLance.sol
L985-988
L1015-1017
L1019-1021
L1023-1025
Description

Emit an event for critical parameter changes.

Pending

#3 low Issue
Floating Pragma
DeeLance.sol
-
Description

The current pragma Solidity directive is “^0.8.7". Contracts should be deployed with the same compiler version and flags that they have been tested thoroughly. Locking the pragma helps to ensure that contracts do not accidentally get deployed using other versions

Pending

#4 low Issue
Contract doesn’t import npm packages from source (like OpenZeppelin etc.)
DeeLance.sol
-
Description

We recommend importing all packages from npm directly without flattening the contract. Functions could be modified or can be susceptible to vulnerabilities

optimization Issues | 2 findings

Pending

#1 optimization Issue
State variables that could be declared constant (constable-states)
DeeLance.sol
L895
L913
L892
Description

Add the `constant` attributes to state variables that never change.

Pending

#2 optimization Issue
Public function that could be declared external (external-function)
DeeLance.sol
L194-196
L202-204
L219-221
L226-228
L245-248
L253-255
L264-267
L282-290
L304-307
L323-326
L485-488
L494-498
L990-998
L1007-1013
L1027-1029
L1031-1036
L1043-1045
L1047-1049
L1065-1069
L1083-1085
L1180-1183
L1186-1189
Description

Use the `external` attribute for functions never called from the contract.

informational Issues | 3 findings

Pending

#1 informational Issue
Functions that are not used (dead-code)
DeeLance.sol
L131-134
L1191-1206
L387-395
L627-629
L643-646
Description

Remove unused functions.

Pending

#2 informational Issue
Function initializing state variables (function-init-state)
DeeLance.sol
L928
Description

Remove any initialization of state variables via non-constant state variables or function calls. If variables must be set upon contract deployment, locate initialization in the constructor instead.

Pending

#3 informational Issue
Unused return values (unused-return)
DeeLance.sol
L1191-1206
Description

Ensure that all the return values of the function calls are used.