DESCRIPTION
The target of this audit is the private code repository of bgw-swap-aggregator-evm of bitgetwallet. The Bitget Aggregator EVM project introduces BWAggFeeHandler, a new contract enabling a fee distribution mechanism via the standard handler interface (i.e., IBWAggBaseHandler.swap()). On each invocation, the function decodes the fee parameters, optionally charges a flat fee, and splits a percentage fee between a share recipient and the platform treasury. Before any distribution takes place, an ECDSA signature from an authorized signer is verified, ensuring that only approved fee-split parameters can be settled on-chain.
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 1 potential issues in the smart contract. We also have 3 recommendations and 3 notes, as follows:
| ID | Severity | Description | Status |
|---|---|---|---|
| 1 | Low | Lack of check on token consistency | Fixed |
| 2 | - | Use the received amount as input | Confirm |
| 3 | - | Enforce feeRate bounds in function swap() |
Confirm |
| 4 | - | Bind tokenIn in the signed message |
Fixed |
| 5 | - | Potential centralization risks | - |
| 6 | - | Trusted off-chain logic | - |
| 7 | - | Weird ERC20 Tokens | - |
More details are provided in the audit report.