Как я случайно нашел критический баг в минте стикеров @fuse
После первого минта стикеров в @fuse я решил заглянуть во внутрянку их контрактов, а именно сообщений, которые передаются при минте. Однако наткнулся на довольно серьезный баг.
Прикол в том, что сообщение минта весило 654 бита, из которых 512 бит приходилось на подпись. Для сравнения: адрес в TON занимает всего 267 бит.
Это означает, что контракт никак не проверял отправителя. Получалось, что любой MEV-бот мог перехватить твой запрос на минт, отправить его раньше и получить NFT себе. Стоимость атаки - 0.1 TON комиссии. Это классический пример фронтраннинга.
После обнаружения бага я сразу сообщил об этом нужным людям. На следующих минтаx проблема уже была закрыта, и контракт стал безопасным.
В итоге я случайно заметил критическую дыру и помог ее устранить до того, как кто-то реально мог эксплуатировать ее. Теперь минтить стикеры в @fuse можно спокойно 🤟
Post #417
20K
- 🔥 113
- 👏 63
- 👍 47
- 😁 9
- ❤ 7
- 🥰 2