2025-02-raac/contracts/core/collectors/FeeCollector.sol at main · Cyfrin/2025-02-raac
The collectFee() function at line 162 is an external function that is never enforced within the contract, allowing users to opt-out of paying protocol fees entirely. This prevents revenue generation for veRAAC holders, burning mechanisms, repair funds, and the treasury, ultimately compromising the protocol's sustainability.
The fee collection mechanism relies on the function:
External Call Without Enforcement
This function is never called internally within any deposit, withdrawal, or transaction.
Users can simply choose not to call collectFee(), avoiding all protocol fees.
No Automatic Fee Deduction
Normally, fees should be deducted from user transactions automatically.
Here, the function relies on voluntary user action, making it ineffective.
Loss of Revenue for Protocol
Automatically Deduct Fees in Transactions:
Modify deposit, borrow, and withdraw functions to automatically call collectFee() when applicable.
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.