Omniscia Myso Finance Audit
Manual Review
Manual Review
A thorough line-by-line review was conducted on the codebase to identify potential malfunctions and vulnerabilities in Myso Finance's novel lending and borrowing protocol.
As the project at hand implements a novel peer-to-peer and peer-to-pool protocol, 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 edge-case vulnerabilities within the system which could have had severe ramifications to its overall operation, however, they were conveyed ahead of time to the Myso 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 great extent, containing extensive in-line documentation as well as explainations wherever certain security checks were not performed because they were implicit.
A total of 57 findings were identified over the course of the manual review of which 26 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 |
---|---|---|---|
CBC-01M | Improper Integration of Chainlink Oracles | ||
CLP-01M | Inexistent Liquidity Gauge Reward Token Sanitization | ||
CLP-02M | Potential Increase of Profitability | ||
CLP-03M | Unrestricted Support of Token Reward Flow | ||
GLP-01M | Incorrect Reward Receiver | ||
GLP-02M | Inexistent Opportunistic Claim | ||
LVI-01M | Potentially Dangerous Overwrite of Storage | ||
LVI-02M | Unsafe Type Casts | ||
LVI-03M | Insufficient Restriction of Loan Tenors | ||
LVI-04M | Incorrect Interest Rate Factor Validation | ||
LVI-05M | Insecure Collateral Compartment Creation | ||
LPF-01M | Unsanitized Funding Pool | ||
LPI-01M | Inefficient Collateralization of Loan | ||
LPI-02M | Discrepant Loan Subscription Validation | ||
LPI-03M | Incorrect Overlap of States | ||
LPI-04M | Potentially Insecure Acceptance of Loan Terms | ||
LPI-05M | Incorrect Rollback Procedure | ||
LPI-06M | Insufficient Validation of Repayment Schedule | ||
OEL-01M | Inexistent Clean-Up of Proposed Owner | ||
QHR-01M | Improper Enforcement of Minimum Signers | ||
QHR-02M | Insecure Duplicate Address Evaluations | ||
QHR-03M | Insufficient Restriction of Loan Tenors | ||
QHR-04M | Insufficient Sanitization of Token Types | ||
QHR-05M | Insufficient Evaluation of Quote Expiry | ||
VCT-01M | Potential Increase of Usability | ||
VCT-02M | Inexistent Validation of Post-Call State |