When a profile is burned (via burnProfile() or blockProfile()), the
likes mapping in LikeRegistry is NOT cleared. If the user re-mints a
new profile, their old likes still exist. This means:
A blocked user can re-mint and instantly match with anyone who previously
liked them — bypassing the block entirely.
A user who burned and re-created their profile carries stale like state.
Likelihood: Medium
Requires a user to burn/be blocked and then re-mint
Blocked users are motivated to re-mint to recover match state
Impact: High
Blocked users bypass safety measures and can still match
Users unknowingly match with previously-blocked accounts
Stale likes can trigger matches with profiles the user no longer intends
This step-by-step scenario proves that a blocked user can re-mint and
exploit stale like data from a previous profile to instantly trigger a
match — completely bypassing the owner's moderation action.
Introduce a persistent blocklist so blocked addresses cannot re-create
profiles, or implement cross-contract cleanup of stale likes when a
profile is destroyed.
Option A — Prevent re-minting for blocked addresses:
Option B — Clear likes in LikeRegistry when a profile is destroyed
(requires cross-contract coordination or event-driven cleanup).
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.