Beginner FriendlyFoundryNFT
100 EXP
View results
Submission Details
Severity: high
Invalid

`Soulmate::getDivorced` is susceptible to Oracle Manipulation resulting on misuse of user funds

Summary

Soulmate::getDivorced allows either soulmate to unilaterally divorce without the consent of the other, which could lead to unexpected outcomes. Additionally, there is no check to ensure that a divorce can only occur if the couple is actually married and not already divorced.

Vulnerability Details

Soulmate::getDivorced changes the state of the divorced mapping but does not emit an event for these state changes, which is not ideal for transparency and off-chain tracking.

Impact

Transparency and off-chain tracking are important for users to be able to track the state of their soulmate relationship. The lack of an event for the state changes could lead to confusion and unexpected outcomes.

Tools Used

Manual review with Audit Wizard

Recommendations

Consider providing a mechanism to ensure that both soulmates agree to the divorce, and emit an event for the state changes.

Updates

Lead Judging Commences

0xnevi Lead Judge over 1 year ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.