Likelihood:
Any user interacting with a standard ERC-721 wallet interface will see the approve and setApprovalForAll options available — standard UX flows surface these buttons.
Phishing sites targeting NFT holders routinely request setApprovalForAll signatures. Even though the transfer will fail, users may not know this and could be deceived.
Impact:
Profile NFTs can be "approved" to third-party addresses, creating misleading on-chain state that contradicts the soulbound design.
Third-party tooling that reads approval state (OpenSea, Blur, wallet dashboards) may display these profiles as transferable, confusing users and undermining trust in the protocol's identity guarantees.
Phishing vectors exist: users tricked into signing approvals believe they've compromised their profile.
Override approve() and setApprovalForAll() to revert with the same custom error:
The contest is live. Earn rewards by submitting a finding.
Submissions are being reviewed by our AI judge. Results will be available in a few minutes.
View all submissionsThe contest is complete and the rewards are being distributed.