Royalty logic might result in DoS with certain marketplaces #635
Labels
bug
Something isn't working
downgraded by judge
Judge downgraded the risk level of this issue
edited-by-warden
grade-b
Q-16
QA (Quality Assurance)
Assets are not at risk. State handling, function incorrect as to spec, issues with clarity, syntax
sponsor acknowledged
Technically the issue is correct, but we're not going to resolve it for XYZ reasons
Lines of code
https://github.com/rabbitholegg/quest-protocol/blob/8c4c1f71221570b14a0479c216583342bd652d8d/contracts/RabbitHoleReceipt.sol#L90
https://github.com/rabbitholegg/quest-protocol/blob/8c4c1f71221570b14a0479c216583342bd652d8d/contracts/RabbitHoleReceipt.sol#L71
Vulnerability details
Impact
The royalty fee logic can result in DoS which prevents NFTs to be sold on marketplaces
Proof of Concept
Currently, the
RabbitHoleReceipt
contract has two flaws within its royalty logic:royaltyFee
can be set > 10_000royaltyRecipient
can be set to address(0) [known-issue]Both of these configurational freedoms can result in DoS with marketplace implementations because the desired fee amount cannot be transferred because it is either higher than the initial value or the recipient is 0x0.
Tools Used
VSCode
Recommended Mitigation Steps
Consider validating both variables accordingly.
The text was updated successfully, but these errors were encountered: