The setEggNFT
function allows the owner to update the eggNFT
address. Changing this address without safeguards can make deposited NFTs inaccessible, as the contract will reference a new NFT contract that doesn’t hold the original tokens.
The vulnerable function is:
The function updates eggNFT
to a new address but doesn’t check compatibility with deposited NFTs. If the contract holds NFTs in the original EggstravaganzaNFT
contract, changing eggNFT
to a new address breaks access to those NFTs, as subsequent operations target the new contract.
Users may lose access to deposited NFTs, resulting in financial loss. Functions relying on eggNFT
will fail for existing tokens, breaking contract functionality. This could harm the project’s reputation.
Manual code review.
Changing the NFT contract address doesn't update the storedEggs and eggDepositors mappings
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.