The deployERC1155Bridgeable
function always deploys a new implementation contract, but it doesn't ensure that each deployed proxy is unique or track the deployed proxies.
Multiple proxies for the same URI can create phantom contracts that are not easily identifiable. If a user attempts to interact with a specific URI, they may inadvertently engage with a proxy that has a different implementation than expected.
Each invocation of deployERC1155Bridgeable
generates a new implementation, regardless of whether an existing one with the same URI already exists. This leads to unnecessary contract deployments.
Manual Review
Implement a mapping to track the deployed proxies.
Please, do not suppose impacts, think about the real impact of the bug and check the CodeHawks documentation to confirm: https://docs.codehawks.com/hawks-auditors/how-to-determine-a-finding-validity A PoC always helps to understand the real impact possible.
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.