Executive Summary

From Aug 20, 2024, to Sept 1, 2024, the TOMO team engaged Fuzzland to conduct a thorough security audit of their wallet projects. The primary objective was to identify and mitigate potential security vulnerabilities, risks, and coding issues to enhance the project's robustness and reliability. Fuzzland conducted this assessment over 40 person-days, involving 4 engineers who reviewed the code over a span of 10 days. Employing a multifaceted approach that included static analysis, fuzz testing, formal verification, and manual code review, the Fuzzland team identified 27 issues across different severity levels and categories.

Scope

TOMO Telegram MiniApp

The TOMO Telegram MiniApp is a wallet product encompasses several interconnected components, including a frontend application, authentication server, and backend services.

Project Name TOMO Telegram MiniApp Frontend
Repository Link https://github.com/FansTech/tgbot_app
Commit 09f480fca5c4331829764814b3dbf1cb1b2a0837
Fix Commit N/A
Language Typescript (React)
Project Name TOMO Telegram MiniApp Auth Server
Repository Link https://github.com/FansTech/tomo-tg-auth
Commit 589b7632db0b98f695fd94ecebfbab6bb93c8bba
Fix Commit N/A
Language Golang
Project Name TOMO Telegram MiniApp Backend
Repository Link https://github.com/FansTech/bot-server
Commit 413a28f401176a2f9fd57c2abda0d51d08722374
Fix Commit N/A
Language Golang
Project Name TOMO Telegram MiniApp Signer Backend
Repository Link https://github.com/FansTech/fans-tech-node
Commit f66e44ee5d452bb43a89810019ae02919aec2e71
Fix Commit N/A
Language Typescript (NodeJS)

TOMO Social Login

The TOMO Social Login is a web component that allows users to authenticate and access their wallets using their social media credentials.

Project Name TOMO Social Login
Link https://socialwallet-react-prod.tomo.inc/login
Language Javascript (* Blackbox Audit)
Project Name TOMO BTC Connect
Link https://docs.tomo.inc/tomo-labs/tomo-login-solution/social-login-sdk/wallet-providers/add-custom-wallets
Language Javascript (* Blackbox Audit)

TOMO Apps

TOMO offers mobile applications for both iOS and Android platforms, providing users with convenient access to their wallet services on phones.

Project Name TOMO Android App
Link https://play.google.com/store/apps/details?id=tomo.app.unyx&pli=1
Language Flutter
Project Name TOMO iOS App
Link https://apps.apple.com/us/app/tomo-inc/id6468010287
Language Flutter

Methodology

Whitebox Testing