Ideally transfer_tokens should validate that the authority signer matches the expected PDA (e.g., liquidity_pool) to prevent unauthorized token transfers.
Specific Issue: The function trusts the provided authority without checking it against the pool PDA, allowing malicious users to transfer tokens from pool vaults.
Likelihood: Medium
Reason 1: Malicious users submit invalid authority in permissionless AMMs.
Reason 2: Lack of validation simplifies unauthorized transfer attempts.
Impact: High
Impact 1: Funds are stolen from pool vaults, causing direct losses.
Impact 2: Severe disruption of AMM operations, undermining trust.Proof of Concept
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.