Summary
The StrategyArb and StrategyMainnet contracts exhibit a high-severity vulnerability stemming from the approval of unlimited tokens (type(uint256).max) to external contracts (transmuter, router, and Curve RouterNG). This unrestricted approval introduces a severe risk of fund mismanagement or loss if these external contracts are compromised.
Technical Details
The StrategyArb contract approves unlimited tokens for both the transmuter and router during initialization and router updates.
Code Reference:
Unlimited approval in _initStrategy:
Unlimited approval on router update:
Workflow Context:
The underlying token (WETH) is approved for spending by the router.
These approvals are not capped or revoked, allowing full control of all tokens held by the strategy if the router is compromised.
The StrategyMainnet contract approves the maximum possible amount of underlying tokens to the Curve RouterNG during initialization and router updates.
Code Reference:
Unlimited approval in _initStrategy:
Workflow Context:
The underlying token (WETH) is approved for spending by the Curve RouterNG.
If the Curve RouterNG is compromised, attackers can transfer all approved tokens.
An attacker compromises the router contract.
They execute unauthorized transfers of underlying tokens due to the unlimited approval.
Result: Complete loss of all underlying tokens held in the strategy.
Quantifiable Example:
Assume the strategy holds 10,000 WETH (~$20M at $2,000/WETH).
The compromised router drains all tokens in a single transaction.
An attacker compromises the Curve RouterNG contract.
They exploit the unlimited token approval to transfer all tokens:
Result: Complete loss of all underlying tokens (WETH).
Quantifiable Example:
Assume the strategy holds 20,000 WETH (~$40M at $2,000/WETH).
The compromised Curve RouterNG drains all assets.
Financial Loss: Unlimited approvals expose the strategy to complete asset loss.
Operational Disruption: Fund mismanagement causes a halt in strategy operations.
Reputational Damage: Loss of user trust in the protocol.
Total financial risk for both contracts exceeds $60M in the above examples.
Root Cause Analysis
Unrestricted Approvals:
Approvals are set to type(uint256).max without limits or constraints.
Mitigation Recommendations
Approve only the amount needed for specific transactions:
Use time-bound or event-bound approvals to minimize exposure.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.