Omniscia Sovryn Audit

Manual Review

Manual Review

A thorough line-by-line review was conducted on the codebase to identify potential malfunctions and vulnerabilities in the V4 Bridge implementation of Sovryn.

As the project at hand implements a cross-chain bridge, 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.

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 pinpointed multiple medium-level discrepancies within the system which could have had severe ramifications to its overall operation, however, they were conveyed ahead of time to the Sovryn 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 exact nature of the two execution paths within the bridge's transfer acceptance function.

A total of 20 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:

IDSeverityAddressedTitle
ATS-01MMinorNoPotential Desynchronization of State
ATS-02MInformationalNoRedundant Comments
BRI-01MMediumYesIncorrect Bytes Conversion
BRI-02MMediumYesInsufficient Smart Contract Invocation
BRI-03MMinorNoUnconventional Invocation Restriction
BRI-04MInformationalNoMisleading Error Message
FED-01MMediumNoArbitrary User Data
FED-02MMediumNoDesynchronization of State
FED-03MMediumYesSingle Point of Failure
FED-04MMinorNoInconsistent Input Sanitization
FED-05MMinorNoMisleading Validation of required
MSW-01MMediumYesOutdated Gas Stipend
STN-01MMinorNoImproper Granularity Sanitization
STN-02MMinorNoIncorrect ERC-677 Compliance
STN-03MInformationalNoSuperfluous Event
UTI-01MMinorNoInvalid Function Argument
ERC-01MMinorNoInexistent Override