Помните потерю $1.500 пользователем на GetGems?
Вы думали, что это наш TON такая помойка, что люди теряют деньги налево и направо? А оказывается очень похожая ситуация произошла почти неделю назад в эфириуме.
Суть взлома — современные кошельки совершают эмуляцию транзакции перед её отправкой, что позволяет убедиться в корректности исполнения и показать пользователю детали о возможных изменениях баланса или владении NFT, например.
Идея делать эмуляцию и выводить человеко-читаемую информацию прекрасна — чаще всего она защитит пользователя от потери средств. Но есть и проблема — состояние блокчейна, на котором исполняется эмуляция, и состояние блокчейна во время исполнения транзакции могут быть разными. Поэтому даже если ты убедишься, что твои средства не уйдут в полном объеме на чужой кошелек — это не значит, что так и будет.
Защититься от такого можно только правильным дизайном смарт контрактов, где в транзакции указывается максимальная сумма, которую готов потратить пользователь. А если сайт окажется фишинговым — пиши пропало, хоть по эмуляции все и будет красиво — результат будет плачевным.
сурсы:
https://t.me/this_is_TON/2199
https://x.com/realScamSniffer/status/1877559749690184087
Post #101
818

- 👨💻 6
- 👍 5
- ❤ 2