balance

CertiKFiles named in the report

CertiK reviewed Balance.Fun (balance) on 18 Dec 2024: 18 findings, 0 critical; 4 marked fixed, 2 acknowledged, 12 open.

No open critical findings
Open the reportOpen Balance.Fun’s security record

Report hosted on skynet.certik.com.

Trustblock does not review code.

Findings18

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

SeverityOpenAcknowledgedFixed
Critical000
High021
Medium000
Low1203
HighCentralization Related RisksAcknowledged

In the contract `topup_v1`(Aptos), the role `admin` has authority over the functions shown below: - set_valid_coin(): setup whitelist token status - set_recv_addr(): setup token receiver address --- In `solana-pay` program, the role `ADMIN` has authority over the functions shown below: - withdraw(): withdraw tokens from the token account belongs to the program id --- In the contract `TopUpTron`, the role ` m_owner` has authority over the functions shown below: - withdraw(): withdraw native tokens from the contract - tokenWithdraw(): withdraw tokens from the contract - setValidToken(): setup whitelist token status - setRecvAddr(): setup token receiver address - changeOwner(): update `m_owner` address --- In the contract `TopUpV1`, the role `Manager` has authority over the functions shown below: - withdraw(): withdraw native tokens from the contract - tokenWithdraw(): withdraw tokens from the contract - setValidToken(): setup whitelist token status - setRecvAddr(): setup token receiver address - setupRole(): assign `MANAGER_ROLE` or `DEFAULT_ADMIN_ROLE` to an address In the contract `TopUpV1`, the role `DEFAULT_ADMIN_ROLE` has authority over the functions shown below: - grantRole(): assign `MANAGER_ROLE`, `DEFAULT_ADMIN_ROLE` or other role to an address - revokeRole(): revoke `MANAGER_ROLE`, `DEFAULT_ADMIN_ROLE` or other role from an address In the contract `TopUpV1`, the role `Owner` has authority over the functions shown below: - renounceOwnership(): Leaves the contract without owner. - transferOwnership(): Transfers ownership of the contract to a new account (`newOwner`). Any compromise of the privileged accounts could allow an attacker to exploit the authority, and potentially manipulate the contract functionalities.

HighContract Upgrade Centralization RiskAcknowledged

The Aptos Move provides a code upgrade feature(with policy `compatible` by default) that allows deployed Move code to be replaced with the newer code based on the upgrade policy. Any compromise to the deployer account may allow a hacker to take advantage of this authority to control the implementation of the program, for example, burning tokens, which raises potential security risks. Reference: [Upgrading Move Code](https://aptos.dev/en/build/smart-contracts/book/package-upgrades) --- The Solana platform allows for the possibility of upgrading its programs, with the default upgrade authority being the entity responsible for deployment. In situations where the program has upgradability features and the account of the upgrade authority becomes compromised, there is the potential for an unauthorized and malicious update to the program. Reference: [Solana Update Program](https://solana.com/docs/programs/deploying#update-program) --- In the contract `TopUpV1`, the proxy admin has the authority to update the implementation contract behind the `TopUpV1` contract. Any compromise to the admin account may allow a hacker to take advantage of this authority and change the implementation contract which is pointed by proxy and therefore execute potential malicious functionality in the implementation contract.

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 (4)

  • TopUpTron/TopUpTron.sol
  • topup/TopUpV1.sol
  • topup/PresetUpgradeableCustom.sol
  • TopUpTron/IERC20.sol

Part of Balance.Fun’s security record

Balance.Fun
Audits1 audit by 1 firmLast audit Dec 2024, by CertiK.
Critical findingsNo open critical findingsIn 1 report.
Open Balance.Fun’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