<!-- canonical: https://0xsimao.com/findings/yieldoor-i-rebalances-performed-shadow-rewards -->

# If enough rebalances are performed, ShadowStrategyGauge::collectGaugeRewards() could be DoSed

Low/Info · 0xSimao · Leveraged yield farming · 12th May 2025

Finding I-1 of the Yieldoor Gauges security review.

- Protocol: https://app.yieldoor.com/
- Report: /reports/yieldoor-i
- Source: https://github.com/0xSimao/audits/blob/main/0xSimao/2025-05-12-yieldoor-i.pdf

---

**Description:**

`ShadowStrategyGauge::collectGaugeRewards()` [receives](https://github.com/spacegliderrrr/yieldoor/blob/master/src/instances/ShadowStrategyGauge.sol#L483) all lower and upper tick positions in the past period. Thus, as rebalances may be performed as soon as every few minutes, it could lead to passing hundreds of positions to collect rewards for all, which could DoS the function call.

**Recommended Mitigation:**

It's unlikely this will happen as rebalancing is not expected to be called this often, but it is something to keep in mind.

---

Related findings:

- [Aave RewardsController can add Usdc to the rewards list and the strategy has no way to collect the rewards](https://0xsimao.com/findings/maple-finance-iv-aave-rewards-usdc-way): Maple Cash Strategies
- [There may not be enough gem(Usdc) in the Psm contract, DoSing withdrawals in the Sky Strategy](https://0xsimao.com/findings/maple-finance-iv-gem-usdc-sing-withdrawals): Maple Cash Strategies
- [DoSed StrategyRouter:withdrawFromStrategies() if strategyTokenBalancesUsd[i] is too small in the swapping phase](https://0xsimao.com/findings/clip-finance-i-withdraw-balances-usd-phase): Clip Finance Strategies
- [Batch:withdraw() can be DoSed by frontrunning it with strategyRouter:allocateToStrategies()](https://0xsimao.com/findings/clip-finance-i-withdraw-frontrunning-allocate-strategies): Clip Finance Strategies
