Beginner FriendlySolidity
100 EXP
View results
Submission Details
Severity: medium
Invalid

Trustee Appointment Does Not Put Estate In Escrow

Summary

In the event that beneficiaries are undecided on the evaluation of the estate or want to change the payout asset, a trustee can be appointed by any of them to handle this process.

But, as is standard practice in real-life situations, the estate goes into a escrow immediately a trustee is appointed. This is to ensure that it is not tampered with. But it is not the case with the InheritanceManager protocol.

Thus, any of the beneficiaries can buy out the estate whilst it is meant to be in escrow.

PoS

Consider this scenario:

  • Gabriel left behind a private jet as an estate for his beneficiaries; Alice and Bob

  • The original value of the jet as set up by Gabriel is 10mil USDC

  • Alice feels that the jet is worth as much as 15 mil USDC, and is confident that she can get a buyer who will pay that amount

  • She convinces Bob that a trustee should be appointed to facilitate the sale of the jet

  • But, because the contract does not put the jet into escrow, she goes behind Bob to buy out the estate (the jet) for 5 mil USDC, and then sells it for 15 mil USDC to a wealthy sheikh

  • She makes 10 mil USDC profit, while Bob only makes 5 mil USDC

Tools Used

  • Manual Review

Recommendations

Consider adding a pause/escrow functionality that is automatically called on the estate immediately a trustee is appointed.

Also, currently the function to appoint a trustee can be called by any beneficiary. What this means in real-life is that any benficiary can appoint any trustee of their choice and does not need to seek approval from other beneficiaries before calling this function. A check should be implemented that ensures that all beneficiaries have given approval for a trustee to be appointed.

Updates

Lead Judging Commences

0xtimefliez Lead Judge 6 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Appeal created

yeahchibyke Submitter
6 months ago
0xtimefliez Lead Judge
6 months ago
0xtimefliez Lead Judge 6 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Support

FAQs

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