Раскрытие мошенничества с подделкой подписи Uniswap Permit2
Хакеры являются пугающим элементом экосистемы Web3. Для разработчиков открытый код делает их уязвимыми, и они боятся, что одна ошибка в коде может оставить уязвимость. Для частных пользователей, если они не понимают значение своих действий, каждое взаимодействие с цепочкой или подпись может привести к краже активов. Поэтому вопрос безопасности всегда был одной из болевых точек криптомира. Из-за особенностей блокчейна украденные активы почти невозможно вернуть, поэтому наличие знаний о безопасности особенно важно в криптомире.
В последнее время активизировался новый метод фишинга, который может привести к краже активов всего лишь с помощью подписи. Этот метод крайне скрытен и труден для предотвращения, и адреса, которые когда-либо взаимодействовали с Uniswap, могут оказаться под угрозой. В этой статье будет проанализирован этот метод фишинга с подписью, чтобы избежать потерь для большего числа людей.
Ход событий
Недавно у моего друга ( маленького А ) были украдены активы в кошельке. В отличие от обычных способов кражи, маленький А не раскрыл свой приватный ключ и не взаимодействовал с фишинговым сайтом.
В блокчейн-браузере видно, что украденные USDT из кошелька маленького A были переведены с помощью функции Transfer From. Это означает, что другой адрес произвел операцию по перемещению токена, а не утечка закрытого ключа кошелька.
Путем запроса деталей сделки были найдены ключевые улики:
Один адрес переводит активы маленького А на другой адрес
Эта операция взаимодействует с контрактом Permit2 Uniswap.
Чтобы успешно вызвать функцию Transfer From, вызывающая сторона должна иметь разрешение на лимит токена (approve). Ответ находится в записях взаимодействия по адресу, перемещающему активы. Перед перемещением активов маленького A данный адрес также выполнил операцию Permit, и оба этих взаимодействия относятся к контракту Permit2 от Uniswap.
Uniswap Permit2 — это новый контракт, представленный в конце 2022 года, который позволяет токенам авторизовывать совместное использование и управление между различными приложениями. Он направлен на создание более унифицированного, более экономичного и более безопасного пользовательского опыта. С интеграцией большего числа проектов, Permit2 может стандартизировать одобрение токенов во всех приложениях, улучшая пользовательский опыт за счет снижения транзакционных издержек, а также повышая безопасность смарт-контрактов.
Появление Permit2 может изменить правила экосистемы Dapp, но это также двусторонний меч. Для пользователей подпись вне цепи может быть наиболее расслабляющим моментом. Большинство людей не будут тщательно проверять содержание подписи и не понимают ее значения, что и является самой опасной частью.
Только если вы взаимодействуете с Uniswap и предоставляете разрешение контракту Permit2 после 2023 года, вы можете столкнуться с риском этого промывания глаз. Хакерам достаточно получить подпись пользователя, чтобы через контракт Permit2 передать токены, разрешенные пользователем.
Подробный анализ события
Функция Permit позволяет пользователям заранее подписывать "контракт", разрешая другим использовать определенное количество токенов в будущем. Функция проверяет срок действия подписи, подтверждает подлинность подписи, а затем обновляет записи о разрешениях.
После проверки, функция _updateApproval обновит значение разрешения для реализации передачи прав. Уполномоченная сторона затем может вызвать функцию transferfrom для перевода токенов на указанный адрес.
Посмотреть реальные детали сделки, можно увидеть:
owner это адрес кошелька 小A
Details отображает адрес авторизованного токен-контракта (USDT) и информацию о сумме и т.д.
Spender является адресом хакера
sigDeadline это время действия подписи
signature является подписью маленького А
Маленький A ранее использовал Uniswap и нажал на стандартный лимит разрешений, то есть почти неограниченный лимит.
Простое резюме: Маленький А ранее предоставил Uniswap Permit2 неограниченный лимит USDT, но затем неосторожно попал в ловушку фишинга, разработанную хакерами с использованием подписи Permit2. Получив подпись, хакер провел операции Permit и Transfer From в контракте Permit2, переведя активы маленького А. В настоящее время контракт Permit2 Uniswap стал рассадником фишинга, этот метод фишинга стал активным около двух месяцев назад.
Как защититься?
Учитывая, что контракт Permit2 может стать более распространенным в будущем, эффективные меры предосторожности включают:
Понять и распознать содержание подписи: научитесь распознавать формат подписи Permit, который включает в себя ключевую информацию, такую как Владелец, Распорядитель, значение, nonce и срок действия.
Разделение кошелька активов и интерактивного кошелька: рекомендуется хранить большую часть активов в холодном кошельке, а в интерактивном кошельке оставлять лишь небольшую сумму средств, что может значительно снизить потери.
Ограничение суммы авторизации или отмена авторизации: при обмене на Uniswap авторизуйте только необходимую сумму для взаимодействия. Если было авторизовано слишком много, можно использовать безопасный плагин для отмены авторизации.
Определите, поддерживает ли токен функцию permit: обратите внимание на то, поддерживает ли токен, который вы держите, эту функцию. Если поддерживает, будьте особенно осторожны и тщательно проверяйте каждую неизвестную подпись.
Разработать完善ный план спасения активов: если вы стали жертвой мошенничества, но у вас все еще есть токены на других платформах, необходимо осторожно вывести и перевести их на безопасный адрес, можно рассмотреть возможность использования MEV для перевода или обратиться за помощью к профессиональной команде безопасности.
В будущем количество фишинга на основе Permit2 может увеличиться. Этот метод подписи фишинга крайне скрытен и труден для предотвращения, и с расширением применения Permit2 будет увеличиваться количество адресов, подвергающихся риску. Надеюсь, читатели смогут распространить эту информацию, чтобы избежать большего числа жертв.
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
15 Лайков
Награда
15
5
Репост
Поделиться
комментарий
0/400
SerLiquidated
· 08-18 16:07
Подписал и исчезло. Кто же тебя заставил жадничать?
Посмотреть ОригиналОтветить0
ParallelChainMaxi
· 08-17 08:57
Опять оказаться в ловушке, да?
Посмотреть ОригиналОтветить0
FlyingLeek
· 08-16 14:56
Сейчас людей обманывают множеством уловок.
Посмотреть ОригиналОтветить0
SolidityNewbie
· 08-16 14:54
Подписал — всё, капец. Кто это выдержит~
Посмотреть ОригиналОтветить0
0xSunnyDay
· 08-16 14:33
Черт возьми, так что теперь подписи нельзя просто так раздавать.
Новая схема мошенничества с подделкой подписей Permit2 Uniswap: как предотвратить кражу активов
Раскрытие мошенничества с подделкой подписи Uniswap Permit2
Хакеры являются пугающим элементом экосистемы Web3. Для разработчиков открытый код делает их уязвимыми, и они боятся, что одна ошибка в коде может оставить уязвимость. Для частных пользователей, если они не понимают значение своих действий, каждое взаимодействие с цепочкой или подпись может привести к краже активов. Поэтому вопрос безопасности всегда был одной из болевых точек криптомира. Из-за особенностей блокчейна украденные активы почти невозможно вернуть, поэтому наличие знаний о безопасности особенно важно в криптомире.
В последнее время активизировался новый метод фишинга, который может привести к краже активов всего лишь с помощью подписи. Этот метод крайне скрытен и труден для предотвращения, и адреса, которые когда-либо взаимодействовали с Uniswap, могут оказаться под угрозой. В этой статье будет проанализирован этот метод фишинга с подписью, чтобы избежать потерь для большего числа людей.
Ход событий
Недавно у моего друга ( маленького А ) были украдены активы в кошельке. В отличие от обычных способов кражи, маленький А не раскрыл свой приватный ключ и не взаимодействовал с фишинговым сайтом.
В блокчейн-браузере видно, что украденные USDT из кошелька маленького A были переведены с помощью функции Transfer From. Это означает, что другой адрес произвел операцию по перемещению токена, а не утечка закрытого ключа кошелька.
Путем запроса деталей сделки были найдены ключевые улики:
Чтобы успешно вызвать функцию Transfer From, вызывающая сторона должна иметь разрешение на лимит токена (approve). Ответ находится в записях взаимодействия по адресу, перемещающему активы. Перед перемещением активов маленького A данный адрес также выполнил операцию Permit, и оба этих взаимодействия относятся к контракту Permit2 от Uniswap.
Uniswap Permit2 — это новый контракт, представленный в конце 2022 года, который позволяет токенам авторизовывать совместное использование и управление между различными приложениями. Он направлен на создание более унифицированного, более экономичного и более безопасного пользовательского опыта. С интеграцией большего числа проектов, Permit2 может стандартизировать одобрение токенов во всех приложениях, улучшая пользовательский опыт за счет снижения транзакционных издержек, а также повышая безопасность смарт-контрактов.
Появление Permit2 может изменить правила экосистемы Dapp, но это также двусторонний меч. Для пользователей подпись вне цепи может быть наиболее расслабляющим моментом. Большинство людей не будут тщательно проверять содержание подписи и не понимают ее значения, что и является самой опасной частью.
Только если вы взаимодействуете с Uniswap и предоставляете разрешение контракту Permit2 после 2023 года, вы можете столкнуться с риском этого промывания глаз. Хакерам достаточно получить подпись пользователя, чтобы через контракт Permit2 передать токены, разрешенные пользователем.
Подробный анализ события
Функция Permit позволяет пользователям заранее подписывать "контракт", разрешая другим использовать определенное количество токенов в будущем. Функция проверяет срок действия подписи, подтверждает подлинность подписи, а затем обновляет записи о разрешениях.
После проверки, функция _updateApproval обновит значение разрешения для реализации передачи прав. Уполномоченная сторона затем может вызвать функцию transferfrom для перевода токенов на указанный адрес.
Посмотреть реальные детали сделки, можно увидеть:
Маленький A ранее использовал Uniswap и нажал на стандартный лимит разрешений, то есть почти неограниченный лимит.
Простое резюме: Маленький А ранее предоставил Uniswap Permit2 неограниченный лимит USDT, но затем неосторожно попал в ловушку фишинга, разработанную хакерами с использованием подписи Permit2. Получив подпись, хакер провел операции Permit и Transfer From в контракте Permit2, переведя активы маленького А. В настоящее время контракт Permit2 Uniswap стал рассадником фишинга, этот метод фишинга стал активным около двух месяцев назад.
Как защититься?
Учитывая, что контракт Permit2 может стать более распространенным в будущем, эффективные меры предосторожности включают:
Разделение кошелька активов и интерактивного кошелька: рекомендуется хранить большую часть активов в холодном кошельке, а в интерактивном кошельке оставлять лишь небольшую сумму средств, что может значительно снизить потери.
Ограничение суммы авторизации или отмена авторизации: при обмене на Uniswap авторизуйте только необходимую сумму для взаимодействия. Если было авторизовано слишком много, можно использовать безопасный плагин для отмены авторизации.
Определите, поддерживает ли токен функцию permit: обратите внимание на то, поддерживает ли токен, который вы держите, эту функцию. Если поддерживает, будьте особенно осторожны и тщательно проверяйте каждую неизвестную подпись.
Разработать完善ный план спасения активов: если вы стали жертвой мошенничества, но у вас все еще есть токены на других платформах, необходимо осторожно вывести и перевести их на безопасный адрес, можно рассмотреть возможность использования MEV для перевода или обратиться за помощью к профессиональной команде безопасности.
В будущем количество фишинга на основе Permit2 может увеличиться. Этот метод подписи фишинга крайне скрытен и труден для предотвращения, и с расширением применения Permit2 будет увеличиваться количество адресов, подвергающихся риску. Надеюсь, читатели смогут распространить эту информацию, чтобы избежать большего числа жертв.