Umbrella is a new version of the Aave Safety Module to help address bad debt managment within the Aave protocol.

BGD engaged Ackee Blockchain Security to perform a security review of the Aave protocol with a total time donation of 19 engineering days in a period between February 10 and February 26, 2025.

METHODOLOGY

We began our review using static analysis tools, including Wake. This yielded the I2 finding. We then took a deep dive into the logic of the contracts. For testing and fuzzing, we used the Wake testing framework. We implemented additional unit tests that helped us analyze the shares inflation possibility (M1) and arithmetic errors (L1). We also implemented an additional set of fuzz tests, however, a full fuzzing campaign was not in the scope of this report. The fuzz tests discovered potential integration issues with the price oracle availability (L2). During the review, we paid special attention to:

  • analyzing ERC-4626 shares inflation and checking for compliance with the standard;
  • ensuring the slashing mechanism could not be abused;
  • checking correctness of the rewards distribution;
  • ensuring the arithmetic of the system was correct;
  • detecting possible reentrancies and unprotected calls in the code;
  • ensuring access controls were not too relaxed or too strict; and
  • looking for common issues such as data validation.

SCOPE

The first audit was performed on the commit a2ad2ff and the scope were the umbrella , stakeToken and rewards folders.

A fix review was performed on commit de990C5.

A third review was conducted on commit 5b987d2 with final changes before the release. No issues were identified during this review.

FINDINGS

The classification of a security finding is determined by two ratings: impact and likelihood. This two-dimensional classification helps clarify the severity of individual issues. Issues which would be rated as medium severity, but which would be likely discovered only by the team, are typically decreased by the likelihood factor to the warning or informational severity ratings.

Our review resulted in 9 findings, ranging from Informational to Medium severity. The most severe finding is M1, which identified an issue with shares inflation. Due to the slashing mechanism, shares can grow rapidly, making the correct functioning of the system significantly dependent on configuration. StakeToken vaults that undergo full slashing due to small deficit offsets or higher pool deficits can enter a denial-of-service state. The state can be entered by an attacker in a single transaction due to the permissionless nature of slashing and deposits. The cost of the attack is determined by the underlying token (it can be as low as a few cents).

For detailed acknowledgment statements from the client on see the Findings section of the full audit report.

Critical severity

No critical severity issues were found.

High severity

No high severity issues were found.

Medium severity

M1: Possible shares inflation

Low severity

L1: Frequent claiming of rewards can lead to losses

L2: The latestAnswer function reverts after slashing configuration removal

Warning severity

W1: Inconsistent usage of _msgSender() over msg.sender

W2: Missing validation of the upper bound in validateTargetLiquidity

Informational severity

I1: Typos

I2: Unused using-for directive

I3: Permit error handling

I4: The same suffix is used for name and symbol

TRUST MODEL

While the permissions within the system are carefully designed to limit the potential impact of any single component, users should trust the DEFAULT_ADMIN_ROLE (which should be granted to Aave governance) to correctly configure the system and act honestly.

CONCLUSION

Ackee Blockchain Security recommends BGD to:

  • set up off-chain monitoring for the purposes described in the M1 finding; and
  • address all other reported issues.

Ackee Blockchain Security’s full Aave Umbrella audit report can be found here.

We were delighted to audit Aave and look forward to working with them again.