Beginner FriendlyFoundry
100 EXP
View results
Submission Details
Severity: high
Valid

Unauthorized Upgrades

Summary

Without restricting access to _authorizeUpgrade, any entity could invoke this function, leading to unauthorized and potentially malicious upgrades.

https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable/blob/master/contracts/proxy/utils/UUPSUpgradeable.sol#L126

Vulnerability Details

Impact

This could allow an attacker to replace the contract logic with malicious code, steal funds, or disrupt the contract’s intended functionality.

Tools Used

Manual review

Recommendations

Add onlyOwner modifier to _authorizeUpgrade

function _authorizeUpgrade(address newImplementation) internal override onlyOwner {}
Updates

Lead Judging Commences

bube Lead Judge 11 months ago
Submission Judgement Published
Validated
Assigned finding tags:

Lack of access control in _authorizeUpgrade

Support

FAQs

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