Omniscia Symbiosis Finance Audit
Manual Review
Manual Review
A thorough line-by-line review was conducted on the codebase to identify potential malfunctions and vulnerabilities in the cross-chain synthetic asset bridge.
As the project at hand implements a cross-chain aware bridge implementation, intricate care was put into ensuring that the flow of funds within the system conforms to the specifications and restrictions laid forth within the protocol's specification and that all features exposed by it are blockchain-aware.
We validated that all state transitions of the system occur within sane criteria and that all rudimentary formulas within the system execute as expected. We identified two vulnerabilities relating to access control within the system which could have had severe ramifications to its overall operation, however, they were conveyed ahead of time to the Symbiosis Finance team to be promptly remediated.
Additionally, the system was investigated for any other commonly present attack vectors such as re-entrancy attacks, mathematical truncations, logical flaws and ERC / EIP standard inconsistencies. The documentation of the project was satisfactory to a certain extent, however, we strongly recommend the documentation of the project to be expanded at certain complex points such as the function encoding for cross-chain interaction as those interfaces could not be validated by the codebase alone.
A total of 28 findings were identified over the course of the manual review of which 17 findings concerned the behaviour and security of the system. The non-security related findings, such as optimizations, are included in the separate Code Style chapter.
The finding table below enumerates all these security / behavioural findings:
| ID | Severity | Addressed | Title |
|---|---|---|---|
| BV2-01M | ![]() | ![]() | Inexistent Sanitization of Commissions |
| MRV-01M | ![]() | ![]() | Inexistent Validation of Calldata Slots |
| MRV-02M | ![]() | ![]() | Arbitrary Approvals |
| MRV-03M | ![]() | ![]() | Ill-Advised Allowance Pattern |
| MRV-04M | ![]() | ![]() | Improper receive Function |
| POR-01M | ![]() | ![]() | Inexistent Access Control for Reverts |
| POR-02M | ![]() | ![]() | Improper receive Function |
| POR-03M | ![]() | ![]() | Potential of Repeat Invocation |
| SER-01M | ![]() | ![]() | Arbitrary Burn Operations |
| SYN-01M | ![]() | ![]() | Inexistent Access Control for Reverts |
| SYN-02M | ![]() | ![]() | Improper Reversion of Burn |
| SYN-03M | ![]() | ![]() | Inconsistent Event Amount |
| SYN-04M | ![]() | ![]() | Inexistent Validation of Token Existence |
| SYN-05M | ![]() | ![]() | Potential of Repeat Invocation |
| WRA-01M | ![]() | ![]() | Deprecated Native Asset Transfer |
| WRA-02M | ![]() | ![]() | Improper receive Function |
| WRA-03M | ![]() | ![]() | Inexistent Validation of Amounts |




