Протокол Punk - REKT



Punk все же мёртв.

10 августа Punk Protocol подвергся хакерской атаке, было украдено $8.95 миллионов, из которых ~$5 миллионов позже вернули.

Платформа планировала запустить DeFi-схему аннуитетных платежей с поддержкой ETH, WBTC и стейблкойнов.

Потому что нет ничего более панковского, чем пенсионный план.

К счастью, белому хакеру удалось провести фронтраннинг транзакций и вернуть больше половины фондов.

Но не удержался и забрал один миллион долларов себе.

Проект планировал использовать Fair Launch (Справедливый запуск), чтобы привлечь $3 миллиона депозитов в три пула стейблкойнов: USDC, DAI и USDT.

Пост-мортем протокола Punk дает детали уязвимости, которая привела к атаке, и в качестве корневой причины указывает на отсутствующий Modifier в функции initialize() внутри кода CompoundModel.

Хакер использовал delegateCall(), чтобы заменить ту часть, которая должна была быть forgeAddress протокола на свой собственный вредоносный контракт, в качестве параметра функции initialize() CompoundModel.

Отсутствие “initializer” Modifier значило, что манипулируемая функция была выполнена, несмотря на то, что была привязана к незнакомому (и в данном случае вредоносному) контракту.

Теперь, когда адрес контракта был обновлен, атакующий имел возможность вызвать withdrawToForge, послав активы, контролируемые CompoundModel, напрямую во вредоносный контракт, и в свой кошелек.

Несмотря на то, что механизмы вывода защищены с помощью OnlyForge Modifier, функция initialize() уже определила вредоносный контракт как forgeAddress, и в таком его качестве OnlyForge не заметил аномалии.

Украденные USDC были обменены на ETH через 1inch, а затем посланы на TornadoCash в нескольких транзакциях по 100 ETH каждая. Остальные активы обменять не успели, потому что их перехватил белый хакер.

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

Спаситель четко обозначил, что им движет, через tx input data, и начались переговоры по электронной почте.

Транзакция оригинального хака:0x7604c7dd6e9bcdba8bac277f1f8e7c1e4c6bb57afd4ddf6a16f629e8495a0281

Фронтраннинговая транзакция белого хакера: 0x597d11c05563611cb4ad4ed4c57ca53bbe3b7d3fefc37d1ef0724ad58904742b

И все же белому хакеру не удалось помешать всем фондам перекочевать в кошелек к атакующему.

Очень жаль, но похоже, что мой фронтран прошел не очень удачно, потому что в итоге я все-таки послал 3 миллиона долларов настоящему хакеру. Переписывать транзакции может оказаться достаточно сложной задачей.

После краткого обмена имейлами, команде Punk удалось убедить белого хакера, что этот инцидент не был инсайдерской работой.

Анонимный союзник протокола решил наградить себя баунти размером в $1 миллион. После вялых попыток переговоров команда согласилась на это, и он вернул оставшиеся ~5 миллионов долларов.

Приблизительно $1.95М DAI: 0x008dd92f8bcfcee400aed26d13495fbfc8351f9b21289792fc2bb9e771668147

Приблизительно $3M USDT: 0xace7c07695ec1bbf917486c3c81ee7de79c04e0309d4f6a149688463e6f83247

Punk Protocol утверждает, что все фонды, котрые удалось вернуть, будут потрачены на возмещение убытков пользователям, и что они выпустят обновление через несколько дней.

Команда Punk до сих пор надеется, что атаковавший их передумает, хотя какой бы ни была сумма возмещенных убытков, она будет незначительной по сравнению с событиями, произошедшими накануне в Poly Network.

Остается ли белый хакер белым, если он отказывается вернуть часть денег, которые он спасает?*

Несмотря на то, что анонимный игрок оставил себе всего лишь 16% от того, что было украдено, эти фонды все же стоили 1 миллион долларов, когда он заставил Punk Protocol согласиться на эту сделку.

Лучше хоть что-то, чем совсем ничего, и у команды Punk Protocol нет особых причин, чтобы злиться на белую шляпу. Но ведь эти деньги могли вернуться к тем, кому они принадлежали изначально.

Анти-герои в DeFi повсюду. Днем они в белых шляпах, а ночью в черных.

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

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


Поделиться

REKT представляет собой общественную площадку для анонимных авторов. Мы не несём ответственность за выражаемые точки зрения или контент на этом веб-сайте.

Пожертвование (ETH / ERC20): 0x3C5c2F4bCeC51a36494682f91Dbc6cA7c63B514C

Дисклеймер:

REKT не несет никакой ответственности за любое содержание, размещенное на нашем Веб-сайте или имеющее какое-либо отношение к оказываемым нами Услугам, независимо от того, было ли оно опубликовано или создано Анонимным Автором нашего Веб-сайта или REKT. Не смотря на то, что мы устанавливаем правила поведения и нормы публикаций для Анонимных Авторов, мы не контролируем и не несем ответственность за содержание публикаций Анонимных Авторов, а также за то, чем делятся и что передают Авторы с помощью нашего Сайта и наших Сервисов, и не несем ответственность за любое оскорбительное, неуместное, непристойное, незаконное или спорное содержание, с которым вы можете столкнуться на нашем Веб-сайте и на наших Сервисах. REKT не несет ответственность за поведение, будь то онлайн или офлайн, любого пользователя нашего Веб-сайта или наших Сервисов.