The protocol's redemption mechanism can be effectively denied to legitimate users through a low-cost dust withdrawal attack, potentially trapping user funds in the protocol.
The initiateWithdrawal
function lacks a minimum withdrawal threshold, enabling an attacker to execute a denial-of-service attack against the protocol's credit capacity system, preventing legitimate withdrawals.
The attack exploits the protocol's credit capacity system through a continuous cycle of dust-sized withdrawal requests. By flooding the protocol with minimal withdrawal requests, the attacker consumes protocol credit capacity in small increments, then maintains this pressure by creating new requests as old ones expire. This creates a sustained drain on the system's credit capacity with minimal cost to the attacker, effectively weaponizing the withdrawal mechanism against the protocol itself.
The crucial vulnerability lies in the redeem check:
The attack creates a cascading effect on protocol functionality by saturating credit capacity with dust withdrawals, effectively preventing legitimate users from executing larger withdrawals. This leads to a situation where user funds become temporarily locked in the protocol, while the system suffers from mounting gas costs due to the processing overhead of backlogged withdrawal requests. The situation is particularly severe because the attacker can continuously cycle through this process, maintaining a persistent denial of service condition that disrupts normal protocol operations and undermines user confidence in the withdrawal mechanism.
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.