2

Losses from create2 wallets that look similar to recently active wallets has surpassed $60m: https://gbhackers.com/create2-bypass-wallet-security-alerts/

Even today I made a transaction, and noticed that create2 contract was deployed which looks very similar to my own wallet. So, clearly the create2 opcode is very useful in this attack pattern as you can cycle through a large number of potential wallets until you find one that looks similar to your target.

Instead of simply getting rid of create2 - what if create2 always returns the same wallet address until it is claimed? This may have to be enforced across all transactions the entire block as simply a recursive call may fool a check that is only scoped to the caller function.

Is this a reasonable patch? or is there a better way of fixing this vulnerably?

3
  • Not sure what you mean by "claimed". You can also try posting to ethereum-magicians.org to get feedback, and possibly assistance or even co-authors for an EIP.
    – eth
    Commented Nov 18, 2023 at 1:32
  • @eth according to the blockchain explorer we have broken 100k affected wallets and over $60m stolen. I posted to thereum-magicians.org and as far as i can tell they are trolling me.
    – rook
    Commented Nov 29, 2023 at 7:40
  • I'm glad you posted to magicians, I'm sorry you got trolled a little, but overwhelmingly I see positive discussion in that thread and that they helped you understand some things better. Along with it, your ideas have been changing, and what might help you might be a "round 2" post where you try to write clearly, the "best" idea you have. I haven't been able to read whole thread, but if your idea is to modify CREATE2, it is very difficult to modify existing behavior. Maybe an example of success is ethereum.stackexchange.com/questions/267/…
    – eth
    Commented Dec 1, 2023 at 9:03

1 Answer 1

1

Even without create2, people could still do address poisoning attacks...it would just be a little harder to generate the addresses but still not hard enough to make a difference.

1
  • Correct. The shortcut is still present. Forcing the calculation to be on-chain by requiring the block_hash to be apart of the calculation would prevent pre-computation.
    – rook
    Commented Nov 29, 2023 at 7:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.