Omniscia Euler Finance Audit
Manual Review
Manual Review
A thorough line-by-line review was conducted on the codebase to identify potential malfunctions and vulnerabilities in Euler Finance's Vault Kit.
As the project at hand implements an EIP-4626 based borrowing and lending vault, intricate care was put into ensuring that the flow of funds & assets 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 vulnerabilities within the system which could have had moderate ramifications to its overall operation; more details can be observed in the audit's summary.
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 it to be expanded at certain complex points such as Euler Finance.
A total of 51 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 |
---|---|---|---|
BFR-01M | Inexplicable Permittance of Re-Entrancies | ||
BUL-01M | Potentially Insecure Balance Tracker Invocation | ||
BPY-01M | Insecure Memory Array Expansion | ||
BPY-02M | Unhandled Misbehaviour of Memory Load Operation | ||
BUS-01M | Improper Event Emittance | ||
CEH-01M | Inexistent Upward-Rounding Operation of Total Borrows | ||
CEH-02M | Improper Interest Rate Update | ||
CHS-01M | Inefficient Imposition of Virtual Deposit | ||
GFY-01M | Potentially Dangerous Push Ownership Pattern | ||
GFY-02M | Potentially Improper Exposure of Data | ||
GEC-01M | Potentially Weak Validation of Caps | ||
GEC-02M | Insecure Clearance of LTV | ||
LNO-01M | Improper Liquidation Incentive Calculations | ||
MPD-01M | Inexistent Allocation of Memory | ||
MPD-02M | Inexistent Appendment of Metadata Length (EIP-3448 Discrepancy) | ||
MPD-03M | Inexistent Handling of Creation Failure | ||
PSM-01M | Inexistent Sanitization of Fees | ||
PSM-02M | Inexistent Reversion of Rounding Direction | ||
RMR-01M | Overprotective Security Mechanism |