Decentraland

CertiKFiles named in the report

CertiK reviewed Decentraland on 28 Oct 2021: 6 findings, 0 critical; 1 marked fixed, 5 acknowledged.

No open critical findings
Open the reportOpen Decentraland’s security record

Report hosted on skynet.certik.com.

Trustblock does not review code.

Findings6

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

SeverityOpenAcknowledgedFixed
Critical000
High020
Medium010
Low021
HighCentralization RiskAcknowledged

In the contract `ThirdPartyRegistry`, the role `owner` has the authority over the following functions: - `setThirdPartyAgregator()`, to set `thirdPartyAgregator`. - `setFeesCollector()`, to set `feesCollector`. - `setCommittee()`, to set `committee`. - `setAcceptedToken()`, to set `acceptedToken`. - `setItemTiers()`, to set `itemTiers`. - `setInitialThirdPartyValue()`, to set `initialThirdPartyValue`. - `setInitialItemValue()`, to set `initialItemValue`. The role `thirPartyAgregator` has the authority over the following functions: - `addThirdParties()`, to register a new third-party in the contract. - `updateThirdParties()`, to update the info of third parties. The role `committee` has the authority over the following function: - `reviewThirdParties()`, to review third parties. Any compromise to the `owner`, `committee`, `thirPartyAgregator` account may allow the hacker to take advantage of this.

HighCentralization RiskAcknowledged

In the contract `Tiers`, the role `owner` has the authority over the following function: - `updatePrices()`, to update the prices of tiers. - `addTiers()`, to add tiers. Any compromise to the `owner` account may allow the hacker to take advantage of this,

MediumManager can remove/add other managersAcknowledged

The function `updateThirdParties` allows the managers of the `thirdParty` to add others as managers or remove other managers. If untrusted users become the manager of the `thirdParty`, the `thirdParty` team may lose the control of it.

LowThird Party DependenciesAcknowledged

The contract is serving as the underlying entity to interact with third party `committee`, `acceptedToken`, `itemTier` protocols. The scope of the audit treats 3rd party entities as black boxes and assume their functional correctness. However, in the real world, 3rd parties can be compromised and this may lead to lost or stolen assets. In addition, upgrades of 3rd parties can possibly create severe impacts, such as increasing fees of 3rd parties, migrating to new LP pools, etc.

LowUsers can buy itemSlots for any third partiesAcknowledged

The function `buyItemSlots()` does not require the caller is the manager of the third party. We would like to confirm with the client if the current implementation aligns with the original project design.

Contracts in scope

No deployed address is recorded for this audit.

The report names a repository or files. Open the report to see its scope.

Repository and files the report names (2)

  • contracts/registries/ThirdPartyRegistry.sol
  • contracts/managers/Tiers.sol

Part of Decentraland’s security record

Decentraland
Audits3 audits by 2 firmsLast audit Oct 2021, by CertiK.
Critical findingsNo open critical findingsAcross 3 reports.
Open Decentraland’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