getPseudoRand is easily manipulatable #28
Labels
1 (Low Risk)
Acknowledged
bug
Something isn't working
duplicate
This issue or pull request already exists
Handle
paulius.eth
Vulnerability details
Impact
function getPseudoRand uses a very poor source of randomness so it is easily replicable on another smart contract. When enableDirectRedeem is turned off, you can't specify specificIds, however, it does not stop advanced users to write a custom smart contract that exploits this randomness or reverts if the final output is not what was intended. I know that you are aware that this random generation is not safe (thus named 'pseudo') but still I think this is worth pointing out as it gives an unfair advantage to those that know smart contracts and can build a service on top of it. Also, it helps to avoid directRedeemFee.
The text was updated successfully, but these errors were encountered: