Overview
Blockus aims to revolutionize the social gaming sector by blending social interactions and gaming into a unified, immersive platform. It aims to simplify the integration of traditional gamers into the web3 ecosystem through blockchain technology. With a vision for a community-driven gaming ecosystem, Blockus embarks on a journey towards decentralization.
The company offers a comprehensive suite of services, including a Wallet-as-a-Service for easy account management, a first-party NFT marketplace, and versatile payment options supporting fiat and crypto. These features underscore the emphasis on security, ease of use, and trust within the ecosystem.
Recognizing the exceptional importance of security in web3, Blockus collaborates with Blaize, a specialist in blockchain security audits with a notable portfolio in Sui blockchain projects, including a successful audit for Mysten Labs. This partnership highlights Blockus’s dedication to creating a secure gaming environment, leveraging Blaize’s expertise in Sui-based projects to enhance ecosystem safety.
Task
During the auditing process for this project, we checked Blockus smart contracts for various vulnerabilities. The whole procedure is divided into the following stages:
1) Standard vulnerabilities checklists, including but not limited to:
- Storage structure and data modification flow
- Access control structure, roles existing in the system
- Public interface and restrictions based on the roles system
- Order-dependency and time-dependency of operations
- Validation of function parameters, inputs validation
- Asset Security (backdoors connected to underlying assets)
- Incorrect minting, initial supply or other conditions for assets issuance
- General code structure checks and correspondence to best practices
- Language specific checks
- Object generation flow
and other potential Move vulnerabilities and attack vectors;
2) Business logic decompositions to find loopholes, deadlocks, hidden backdoors, incorrect math and calculations, malicious code injections, and other flow-related issues;
3) Review of dependencies, integrations, and 3rd parties, verified with appropriate integration tests;
4) Our own internal security checklists, additionally verified during the testing stage. The team had the main focus on verifying the correctness of implemented lock mechanics, the safety of stored assets, and created lock management.