Omniscia Stakewise Audit

Manual Review

Manual Review

A thorough line-by-line review was conducted on the codebase to identify potential malfunctions and vulnerabilities in the ETH2 stakign implementation of Stakewise.

As the project at hand implements an ETH2 staking solution, intricate care was put into ensuring that the flow of funds within the system conforms to the specifications and restrictions laid forth both within the protocol's specification as well as the ETH2 protocol it is interfacing with.

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 misbehaviours within the system including one which could have had severe ramifications to its overall operation, however, they were conveyed ahead of time to the Stakewise 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 ambiguous points such as the numeric literals utilized across it.

A total of 26 findings were identified over the course of the manual review of which 11 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
ERP-01MMinorNoNon-Standard Upgradeable Initialization Pattern
MDR-01MMinorYesImproper Pause State Access Control
MDR-02MMinorYesIneffectual Duration Argument
MDR-03MMinorYesPotentially Unclaimed Rewards
MDR-04MInformationalYesPotential Claim Race Condition
ORA-01MMediumYesInexistent Validation of Signature Payload Submitter
ORA-02MMediumYesSingle Point of Failure
POO-01MMinorYesInexistent Validation of Amount
PVS-01MMinorYesInexistent Removal of Validator Status
RET-01MMajorYesCircumvention of Checkpointing Mechanism
ROL-01MMinorNoEvent-Based Role Management