Gang Members transferring their crime money to other members will make withdrawal fail for God Father as crime money is transferred but the corresponding amount measured in money shelf via bank mapping is not updated.
As a result of which members who transfers their funds will make it a denial of service for God Father to withdraw their USDC amount.
The vulnerability occurs when members perform CrimeMoney transfer operations to other members, which causes their CrimeMoney balance to reduce correctly but their corresponding bank mapping amount in MoneyShelf remains the same, as a result of which whenever God Father tries to withdraw the USDC corresponding to a Gang Member's account it will revert.
This occurs because while withdrawing the account that will be passed by God Father is deducted with Crime Money and also the corresponding bank mapping is deducted by the same amount, so as for the user which now has the crime money will not have their bank updated, thus causes a DoS for the withdrawal by God Father.
God Father will not be able to withdraw from Gang Member's account.
Consider two gang member A and B.
A deposited 10 USDC and got 10 CrimeMoney tokens, also their corresponding amount in bank mapping is updated to 10.
A sends 10 CrimeMoney to B, but B's bank mapping will still be 0.
God Father tries to withdraw USDC by burning the CrimeMoney of B, but fails due to 0 amount B's bank mapping.
Manual Review
Whenever there is a transfer also update the bank mapping in MoneyShelf, by overriding all the functions that performs transfer in CrimeMoney, and performing updates on the MoneyShelf.
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.