December 25, 2023

Медовая ловушка на криптанов

Смарт-контракты криптомошенников отличаются очевидной уязвимостью, которая позволяет получить весомую прибыль. Однако у ловушки есть условие: жертва должна заплатить процент за такой «подарок» из своего кармана. Когда это происходит, средства пользователя автоматически переводятся на кошелек скамера.

Таким образом человек ведется на приманку, концентрируясь на явной ошибке и возможности наживы, не замечая несколько уровней сложности.

В начале своего пути в крипте, когда почти ни чего не понимал в кодинге смарт-контрактов сам чуть не попал в такую ловушку

Изучал последние добавленные блоки на езерскане и наткнулся на такой контракт-квиз

https://etherscan.io/address/0xad63b86d77b9c84cbc81cf3c1cf5136de0297e11

Админ кладет призовые эфиры на адрес контракта и загадывает загадку. А отгадывающий отправляет 1 эфир и ответ, если ответ правильный, то ему отправляются все эфиры в качестве приза

Взглянув на функцию Start мы видим что ответ на загадку посылается как параметр в незашифрованном виде, а значит мы можем увидеть его в езерскане.

УРА! пошли в езерскан смотреть ответ!

Вот транзакция в которой хранится ответ. Ну ничего себе! еще и 30 эфиров. Я буду богат!

Скорей открываю транзакцию вижу заветный ответ

Нет, нет, не может быть все просто. Здесь где то обман!

Иду смотреть контракт снова.

Ответ на загадку хранится в как bytes32. В функции Start эта переменная сохраняет хеш из строки, которую только что нашел на езерскане.

А в функции New эта переменная не расчитывается ончейн, а значит ее знает только админ

Может функия New не была еще вызвана? снова смотрим езерскан.

Во внешних вызовах нет New

Во внутриних вызовах только пересылка эфиров

Может езерскан врет. Нужен более профессиональный инструмент! воспользуемся тендерли

Тут тоже нет вызова New. Похоже мошенник забыл активировать ловушку! и я все таки могу забрать 30 эфиров

А, стоп, а что это?

Вот спрятанная транзакиция, активирующая ловушку!

Но даже если бы эта ловушка не была активирована - не факт что удалось бы вывести 30 эфиров.

Возможно, что нашу транзакцию зафронтранили и снял бы эфиры раньше нас