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:

IDSeverityAddressedTitle
BFR-01MInexplicable Permittance of Re-Entrancies
BUL-01MPotentially Insecure Balance Tracker Invocation
BPY-01MInsecure Memory Array Expansion
BPY-02MUnhandled Misbehaviour of Memory Load Operation
BUS-01MImproper Event Emittance
CEH-01MInexistent Upward-Rounding Operation of Total Borrows
CEH-02MImproper Interest Rate Update
CHS-01MInefficient Imposition of Virtual Deposit
GFY-01MPotentially Dangerous Push Ownership Pattern
GFY-02MPotentially Improper Exposure of Data
GEC-01MPotentially Weak Validation of Caps
GEC-02MInsecure Clearance of LTV
LNO-01MImproper Liquidation Incentive Calculations
MPD-01MInexistent Allocation of Memory
MPD-02MInexistent Appendment of Metadata Length (EIP-3448 Discrepancy)
MPD-03MInexistent Handling of Creation Failure
PSM-01MInexistent Sanitization of Fees
PSM-02MInexistent Reversion of Rounding Direction
RMR-01MOverprotective Security Mechanism