Security: Price Manipulation in function UnderlyingToSharesView
Closed this issue · 0 comments
Impact
- Denial of Service: By exploiting the manipulation, an attacker could disrupt the service availability.
- Escalation of Privileges: Manipulating share values might indirectly allow unauthorized access to broader system functionalities.
- Other:This vulnerability may allow an attacker to manipulate price calculations, potentially leading to unauthorized profit through arbitrage, or misleading financial reporting within the platform.
Affected component(s)
function UnderlyingToSharesView
in StrategyBase.sol
Attack vector(s)
An attacker can manipulate the input variables or the state of the system affecting totalShares
and _tokenBalance()
to influence the ratio
calculation, leading to manipulated outputs.
Suggested description of the vulnerability for use in the CVE
The underlyingToSharesView
function in Eigenlayer does not correctly isolate the calculation of share price conversions from external state changes, leading to a potential price manipulation vulnerability. By influencing the totalShares
and the results of _tokenBalance()
, an attacker can manipulate the computed ratio, affecting the integrity of financial calculations and potentially leading to unauthorized code execution, information disclosure, service denial, or privilege escalation.
Discoverer(s)/Credits
xFuzz
Proposed Solution
A potential fix would involve implementing additional checks to ensure the integrity of input values and the isolation of this calculation from mutable state variables. One approach could be to enforce strict validation rules that prevent the modification of totalShares
and _tokenBalance()
during the execution of this function. Additionally, using cryptographic techniques to verify the authenticity and correctness of the affected parameters before performing calculations might prevent exploitation.