You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
DuplicateA valid issue that is a duplicate of an issue with `Has Duplicates` labelMediumA Medium severity issue.RewardA payout will be made for this issue
The totalAssets() function in the SuperPool contract does not fully comply with ERC4626 requirements, as it does not account for accrued interest in its calculation of total managed assets.
Vulnerability Detail
According to eip-4626totalAssets() MUST be inclusive of any fees that are charged against assets in the Vault.
The totalAssets() function is intended to provide the total amount of underlying assets managed by the vault. However, it currently only sums the balance of assets held directly by the SuperPool and those in the underlying pools, without including any accrued interest(which is inclusive of interest fee). This omission means that the function does not accurately reflect the total assets under management, potentially misleading users about the actual value of the vault's holdings.
Impact
The lack of accrued interest in the totalAssets() calculation can lead to discrepancies in asset reporting, affecting users' understanding of the vault's performance and potentially impacting decisions based on the vault's reported assets. This could result in financial miscalculations or misrepresentations of the vault's value.
Modify the totalAssets() function to include accrued interest in its calculation. This could involve integrating logic from simulateAccrue() to ensure that any interest accrued since the last update is reflected in the total assets reported by the function
sherlock-admin4
changed the title
Abundant Cobalt Gazelle - SuperPool.totalAssets() is not EIP-4626 complaint
0xAadi - SuperPool.totalAssets() is not EIP-4626 complaint
Sep 15, 2024
DuplicateA valid issue that is a duplicate of an issue with `Has Duplicates` labelMediumA Medium severity issue.RewardA payout will be made for this issue
0xAadi
Medium
SuperPool.totalAssets()
is not EIP-4626 complaintSummary
The
totalAssets()
function in theSuperPool
contract does not fully comply with ERC4626 requirements, as it does not account for accrued interest in its calculation of total managed assets.Vulnerability Detail
According to eip-4626
totalAssets()
MUST be inclusive of any fees that are charged against assets in the Vault.The
totalAssets()
function is intended to provide the total amount of underlying assets managed by the vault. However, it currently only sums the balance of assets held directly by theSuperPool
and those in the underlying pools, without including any accrued interest(which is inclusive of interest fee). This omission means that the function does not accurately reflect the total assets under management, potentially misleading users about the actual value of the vault's holdings.Impact
The lack of accrued interest in the totalAssets() calculation can lead to discrepancies in asset reporting, affecting users' understanding of the vault's performance and potentially impacting decisions based on the vault's reported assets. This could result in financial miscalculations or misrepresentations of the vault's value.
Code Snippet
https://github.com/sherlock-audit/2024-08-sentiment-v2/blob/main/protocol-v2/src/SuperPool.sol#L180
Tool used
Manual Review
Recommendation
Modify the
totalAssets()
function to include accrued interest in its calculation. This could involve integrating logic fromsimulateAccrue()
to ensure that any interest accrued since the last update is reflected in the total assets reported by the functionDuplicate of #110
The text was updated successfully, but these errors were encountered: