Omniscia Steer Protocol Audit
Manual Review
Manual Review
A thorough line-by-line review was conducted on the codebase to identify potential malfunctions and vulnerabilities in Steer Protocol's Algebra module.
As the project at hand implements an Algebra V4 plugin, 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 as well as Algebra's documentation.
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 significant vulnerabilities within the system which could have had severe ramifications to its overall operation; for more information, kindly consult the relevant non-informational exhibits within the audit report.
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 the extent it need be.
A total of 43 findings were identified over the course of the manual review of which 19 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 |
|---|---|---|---|
| FP3-01M | ![]() | ![]() | Improper Rounding of Nearest Tick |
| GPN-01M | ![]() | ![]() | Inconsistent Rounding of Constants |
| GPN-02M | ![]() | ![]() | Incorrect Denominator Precision |
| GPN-03M | ![]() | ![]() | Non-Standard Addition of Extra Tick Range in Even Positions |
| GPN-04M | ![]() | ![]() | Denominator Precision Loss of Sigma in Square Root Calculation |
| GPN-05M | ![]() | ![]() | Inexistent Assignment of Relative Weight |
| GPN-06M | ![]() | ![]() | Inexistent Boundaries of Ticks |
| GPN-07M | ![]() | ![]() | Loss of Denominator Precision in Exponent |
| GPN-08M | ![]() | ![]() | Improper Rounding of Nearest Tick |
| PHR-01M | ![]() | ![]() | Incorrect Evaluations of Algebra Vault Balances |
| PHR-02M | ![]() | ![]() | Underestimation of Vault Balance |
| PHR-03M | ![]() | ![]() | Inexistent Rounding of TWAP |
| PV1-01M | ![]() | ![]() | Incorrect Hook Implementations |
| PV1-02M | ![]() | ![]() | Inexistent Validation of Deposit Limitations |
| PV1-03M | ![]() | ![]() | Inexistent Validation of Fee Values |
| PV1-04M | ![]() | ![]() | Insufficient Sanitization of Percentages |
| PV1-05M | ![]() | ![]() | Potentially Incorrect Deposit Mechanism |
| PV1-06M | ![]() | ![]() | Rounding of Fee Distribution |
| PV1-07M | ![]() | ![]() | Inexistent Distinction of Algebra Plugins |






