Ownership of NFTAccount can never be transfered due to faulty access control on NFTAccount.sol
Since no EOA or external contract can accessNFTAcount.sol::_update
, no trading account can transfer ownership. Should the security of any individual user's wallet be compromised externally then they would be unable to transfer ownership of their trading accounts and any accomponying positions to a new and secured wallet. Assets may not be directly risked, but protocol functionality is blocked.
Since this function is declared to be internal and there is no public/external method within NFTAccount.sol
wrapping the above, this functionality cannot be accessed by any externally owned account.
Manual Review
Simply change the internal keyword to external to reflect intended functionality. Also may want to consider changing function signature from _update
to update
to match normative conventions.
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.