Omniscia Arcade XYZ Audit

Protocol Implementation Security Audit

Audit Report Revisions

Commit HashDateAudit Report Hash
f1eb8ae7b7July 21st 2023d8001c12b8
7a4e1dc948August 16th 20231b32f8b17a
45ccaa43faAugust 19th 20231e208dfd32
45ccaa43faSeptember 12th 202351db706b62

Audit Overview

We were tasked with performing an audit of the Arcade XYZ codebase and in particular their version 3 implementation of a decentralized NFT borrowing and lending market.

Over the course of the audit, we identified multiple misconceptions around the AssetVault implementation that could significantly compromise the integrity of "packaged vaults" and loans created around them.

We advise the Arcade XYZ team to closely evaluate all minor-and-above findings identified in the report and promptly remediate them as well as consider all optimizational exhibits identified in the report.

Post-Audit Conclusion

The Arcade XYZ team iterated through all findings within the report and provided us with a revised commit hash to evaluate all exhibits on.

We evaluated all alleviations performed by Arcade XYZ and have identified that certain exhibits require a re-evaluation.

We advise the Arcade XYZ team to revisit the following exhibits: CWO-01M, CWA-01M, CWT-01C

Additionally, all acknowledged exhibits should be validated as they may have been missed by the Arcade XYZ team during the first iteration of the report: PVR-01S, PVR-02C, PVR-03C, PVR-01M, CBT-01M, OER-02S, OER-01C, AVT-05C, AVT-01S, AVT-04C, AVT-02C, PNE-01S, LCE-01C, LCE-03C, OCR-01S, OCR-01C, OCR-03M, RCR-01C

Post-Audit Conclusion (45ccaa43fa)

The Arcade XYZ team re-evaluated exhibits CWO-01M, CWA-01M, and CWT-01C providing us with a dedicated response to each as well as a follow-up remediation for CWT-01C.

All remaining exhibits referenced above have additionally been validated as acknowledged by the Arcade XYZ team.

As a result of these updates, we consider all outputs of the report properly consumed by the Arcade XYZ team with no further action required on their end.

Contracts Assessed

Files in ScopeRepositoryCommit(s)
AssetVault.sol (AVT)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
ArtBlocksVerifier.sol (ABV)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
ArcadeItemsVerifier.sol (AIV)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
BaseURIDescriptor.sol (BUR)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
CallBlacklist.sol (CBT)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
CallWhitelist.sol (CWT)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
CallWhitelistApprovals.sol (CWA)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
CallWhitelistDelegation.sol (CWD)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
CallWhitelistAllExtensions.sol (CWE)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
CollectionWideOfferVerifier.sol (CWO)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
ERC721Permit.sol (ERC)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
FeeLookups.sol (FLS)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
FeeController.sol (FCR)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
InterestCalculator.sol (ICR)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
Lending.sol (LGN)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
LoanCore.sol (LCE)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
LoanLibrary.sol (LLY)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
OwnableERC721.sol (OER)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
OriginationController.sol (OCR)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
PunksVerifier.sol (PVR)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
PromissoryNote.sol (PNE)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
RepaymentController.sol (RCR)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
UnvaultedItemsVerifier.sol (UIV)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
Vault.sol (VTL)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa
VaultFactory.sol (VFY)arcade-protocolf1eb8ae7b7,
7a4e1dc948,
0a7551b095,
45ccaa43fa

Audit Synopsis

SeverityIdentifiedAlleviatedPartially AlleviatedAcknowledged
4301
322309
13904
4301
3201

During the audit, we filtered and validated a total of 8 findings utilizing static analysis tools as well as identified a total of 48 findings during the manual review of the codebase. We strongly recommend that any minor severity or higher findings are dealt with promptly prior to the project's launch as they can introduce potential misbehaviours of the system as well as exploits.

The list below covers each segment of the audit in depth and links to the respective chapter of the report: