Rock Paper Scissors

First Flight #38
Beginner FriendlySolidity
100 EXP
View results
Submission Details
Severity: high
Invalid

Missing Admin Access Control on Fee Withdrawal

Missing Administrative Access Control on Fee Withdrawals

Summary


The withdrawal of accumulated platform fees is not protected by an access control modifier, allowing anyone to withdraw funds.


Vulnerability Details:
Critical functions managing platform funds should require administrative access.

Code Snippet:

function withdrawFees() external {
uint256 amount = platformFees;
platformFees = 0;
payable(msg.sender).transfer(amount);
}

Impact:
Any user could steal accumulated platform funds, causing financial losses and damaging trust.


Tools Used:

  • Solidity

  • VS Code


Recommendations:
Add an onlyAdmin modifier:

modifier onlyAdmin() {
require(msg.sender == admin, "Not authorized");
_;
}

and use it:

function withdrawFees() external onlyAdmin {
...
}
Updates

Appeal created

m3dython Lead Judge about 2 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement
m3dython Lead Judge about 2 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.