https://github.com/Cyfrin/2024-08-kitty-fi/blob/main/src/KittyCoin.sol#L17-L19
The KittyCoin
contract lacks a mechanism to transfer ownership, creating issues in contract upgrades or maintenance.
The KittyCoin
contract's constructor sets the pool address during deployment without providing any way to change it later. This design flaw makes the system rigid and problematic when the KittyPool
contract needs to be upgraded or replaced.
The constructor of KittyCoin assigns the pool address during deployment but does not include any mechanism to change this address later. If the KittyPool contract is upgraded or replaced, there is no way to transfer minting/burning rights to the new contract, creating a maintenance issue.
Without a way to transfer ownership or reassign the pool address, the system may require a complete redeployment of contracts, leading to operational issues and potential disruption of services.
Manual
Implement a function to transfer ownership or reassign the pool address in KittyCoin
to allow for flexibility in contract upgrades and maintenance.
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.