background
logo

Security Audit Report for Mantle's Fiat24 Contracts

DESCRIPTION

The target of this audit is the private code repository of Fiat24 Contracts of Mantle. The Fiat24 Contracts of Mantle is a fiat-crypto payment infrastructure on Mantle that enables card authorization processing and operator-controlled vault management for fiat token operations. This update introduces a unified fee configuration module via the contract Fiat24FeeManager, cross-chain deposit paths on the Arbitrum and Tempo chains via LayerZero, a delegation vault extension for partner-managed payouts in the contract DelegationVault, and batch double-booking transfers in the contract Fiat24CardAuthorizationMarqeta.

Please refer to the report for the detailed audit scope.

Our audit methodology employs automated vulnerability scans, manual verification, and business logic analysis to uncover potential security issues coupled with gas and code quality optimization recommendations.

In summary, we did not find any critical issues within the audited codebase. However, we have identified some non-critical issues that should be addressed. Additionally, we have put forth recommendations and notes that should be taken into consideration. It is important to note that the scope of our audit was strictly limited to the specific code versions mentioned in the report. Any updates made subsequent to our review would require a re-evaluation.

KEY FINDINGS

In total, we find 7 potential issues in the smart contract. We also have 4 recommendations and 1 notes, as follows:

High Risk: 0
Medium Risk: 0
Low Risk: 7
Recommendation: 4
Note: 1
ID Severity Description Status
1 Low Lack of fee distribution to the wallet provider Confirmed
2 Low Redundant swaps for the fee conversion Fixed
3 Low Improper minimum fee guard in calculateTokenFeeAmount() Fixed
4 Low Improper removal of the function __Fiat24Token_init_() Fixed
5 Low Potential DoS due to inconsistent allowance consumption Fixed
6 Low Incorrect fund source in the function retryFailedBatchTransfer() Fixed
7 Low Incorrect quoting in the function _executeOnrampAndBridge() Fixed
8 - Remove redundant and deprecated code Partially Fixed
9 - Add duplicate checks in the function setFeeManager() Confirmed
10 - Add non-reentrant guard to the function permitAndMoneyExchangeExactIn() Fixed
11 - Verify wrapped LZD amount in the function _wrapPathUsdToLzd() Fixed
12 - Potential centralization risks -

More details are provided in the audit report.

Take the first step towards a secure future

Reach out now for BlockSec's expert code audit services, elevate the security of your protocol before it goes live!

Security Audit Report for Mantle's Fiat24 Contracts - BlockSec