The RAACNFT contract allows users to deposit ERC-20 tokens when minting NFTs but lacks a withdrawal function, resulting in permanently locked funds. This issue prevents the contract owner from retrieving deposited tokens, leading to financial loss and operational inefficiency.
The mint()
function transfers ERC-20 tokens from the user to the contract but does not provide any function for the owner to retrieve them. Once deposited, the funds remain locked indefinitely.
🔴 Problem: There is no function to allow the contract owner to withdraw the accumulated ERC-20 tokens.
Financial Loss: Tokens inside the contract cannot be accessed, leading to lost funds.
Operational Inefficiency: The project cannot reuse or allocate deposited funds effectively.
Security Risk: Large, idle balances inside a contract increase the attack surface for potential exploits.
Manuel Review
Add a function that allows the owner to safely withdraw ERC-20 tokens from the contract:
Alternatively, provide an option to withdraw all funds:
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.