Security Audit Report: Reentrancy & Access Control Review: Grove Finance
Security Audit Report: Reentrancy & Access Control Review: Grove Finance Target Protocol : Grove Finance (TVL: $2329.4M) Security Audit Report: Reentrancy & Access Control Review Protocol: Grove Finance Scope: Core Smart Contracts (Ethereum Mainnet & L2 Deployments) TVL Context: $2.329B Date: October 26, 2023 Auditor: Senior DeFi Security Research Team 1. Executive Summary Grove Finance, a…
Grove Finance, a major yield optimization protocol on Ethereum with a $2.33 billion TVL, underwent a security audit focusing on reentrancy and access control vulnerabilities. The audit, conducted by the Senior DeFi Security Research Team, revealed several critical issues. First, the cross-chain bridge adapter's `receiveMessage` function lacks a reentrancy guard, allowing attackers to exploit the protocol by crafting malicious messages that trigger callbacks and manipulate state.
This could result in double-spending bridged assets or draining liquidity pools, leading to a total loss of funds. Second, the protocol's admin functions' `upgradeImplementation` function is vulnerable due to insufficient access control, enabling compromised admin keys to pause the protocol and upgrade to a malicious contract, draining all user funds.
Third, the yield distribution module's `distributeYield` function violates the Checks-Effects-Interactions pattern, allowing attackers to repeatedly claim yield by interacting with the contract during state updates. Additionally, there is no timelock mechanism for critical parameter updates in the `GroveParameters` contract, allowing admins to change parameters maliciously and immediately drain funds.
While a reentrancy vulnerability exists in the token swap function, it is considered a medium-risk issue. The audit's overall risk assessment is high, emphasizing the potential for catastrophic financial loss even with low-probability exploits.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.