Хакери є лякаючим явищем в екосистемі Web3. Для розробників відкритий код означає, що глобальні хакери можуть його вивчати, і будь-яка недбалість може призвести до великих проблем. Для окремих користувачів кожна взаємодія в ланцюгу або підпис може нести ризик, і будь-яка необережність може призвести до крадіжки активів. Тому питання безпеки завжди було однією з найбільших проблем у криптовалютному світі. Через особливості блокчейну вкрадені активи майже неможливо повернути, тому знання з безпеки є особливо важливими.
Нещодавно почала активізуватися нова форма риболовлі, яка може призвести до крадіжки лише за допомогою підпису, метод надзвичайно прихований і важкий для запобігання. Адреси, які використовували Uniswap, можуть бути піддані ризику. У цій статті ми розглянемо цю методику риболовлі з підписами, щоб уникнути подальших втрат активів.
Хід подій
Нещодавно один мій друг ( малий А ) втратив свої активи з гаманця. На відміну від звичних способів крадіжки, малий А не розкривав свій приватний ключ і не взаємодіяв з фішинговими сайтами.
Блокчейн-браузер показує, що USDT маленького А було переміщено через функцію Transfer From. Це означає, що переказ токенів здійснив третій адрес, а не витік приватного ключа гаманця.
Деталі угоди показують:
Адреса з кінцевими цифрами fd51 перенесла активи малого A на адресу з кінцевими цифрами a0c8
Операція взаємодіє з контрактом Permit2 від Uniswap
Ключове питання: як отримати права на активи за адресою, яка закінчується на fd51? Чому це пов'язано з Uniswap?
Подальше розслідування виявило, що перед передачею активів малого A ця адреса також виконала операцію Permit, а об'єктами взаємодії були контракти Permit2 Uniswap.
Uniswap Permit2 є новим контрактом, запущеним наприкінці 2022 року, який дозволяє токенам надавати дозволи для спільного використання та управління між різними додатками, з метою створення більш єдиного, ефективного та безпечного користувацького досвіду. З інтеграцією більшої кількості проектів, Permit2 має надію реалізувати стандартизоване схвалення токенів між додатками, зменшуючи витрати на транзакції та підвищуючи безпеку.
Permit2 як посередник між користувачами та Dapp, користувачам потрібно лише надати дозвіл контракту Permit2, і всі інтегровані Dapp можуть ділитись дозволеною сумою. Це знижує витрати на взаємодію для користувачів і покращує досвід. Але це також двосічний меч, проблема полягає у способі взаємодії з Permit2.
У традиційних способах взаємодії авторизація та переміщення коштів є операціями в ланцюгу. Permit2 перетворює дії користувача на підписування поза ланцюгом, а операції в ланцюгу виконуються проміжною особою. Це дозволяє користувачам, навіть якщо їхній гаманець не має ETH, використовувати інші токени для сплати Gas або отримувати відшкодування від проміжної особи.
Однак, підпис поза ланцюгом є етапом, який користувачі найчастіше ігнорують. Більшість людей не перевіряють уважно вміст підпису та не розуміють його значення, що є найбільш небезпечним моментом.
Щоб скористатися цим вразливістю, ключовою умовою є те, що гаманець повинен надати дозвіл контракту Permit2 Uniswap. Наразі для виконання Swap на Dapp, що інтегрує Permit2, або на Uniswap потрібно надати такий дозвіл. Ще більш страшно, що незалежно від суми Swap, контракт Permit2 за замовчуванням запитує дозвіл на всю суму залишку. Хоча MetaMask дозволяє налаштовувати суму, більшість людей вибирає максимальне або значення за замовчуванням, а значення за замовчуванням для Permit2 є безмежним.
Це означає, що якщо ви взаємодієте з Uniswap і надаєте дозвіл контракту Permit2 після 2023 року, ви можете піддатися цьому ризику фішингу. Хакери використовують функцію Permit, щоб за допомогою вашого підпису перенести дозволену вами суму токенів Permit2 на іншу адресу.
Як запобігти?
Розуміння та розпізнавання вмісту підпису: навчіться розпізнавати формат підпису Permit, що містить ключову інформацію, таку як Owner, Spender, value, nonce та deadline. Використання безпечних плагінів є хорошим вибором.
Розділення активів гаманця та інтерактивного гаманця: зберігайте великі активи в холодному гаманці, інтерактивний гаманець тримає лише невелику кількість коштів, що може значно зменшити втрати.
Обмеження суми авторизації або скасування авторизації: під час обміну на Uniswap авторизуйте лише необхідну суму. Хоча повторна авторизація щоразу буде збільшувати витрати, це дозволить уникнути ризику фішингу підписів Permit2. Вже авторизовані можна скасувати за допомогою безпечного плагіна.
Досліджуйте, чи підтримує токен функцію permit: зверніть увагу на те, чи підтримує ваш токен цю функцію, якщо підтримує, необхідно бути особливо обережним і уважно перевірити кожен невідомий підпис.
Розробка плану реагування: якщо вас обманули, але у вас ще є токени на інших платформах, необхідно обережно їх виводити та переносити. Хакери можуть у будь-який момент контролювати вашу адресу, і як тільки з'являться токени, вони можуть бути перенесені. Рекомендується звернутися за допомогою до професійної безпекової команди, використовуючи такі технічні засоби, як MEV-перенесення.
У майбутньому кількість фішингових атак на основі Permit2 може зростати. Цей спосіб фішингу з використанням підписів є надзвичайно прихованим і важко захистити, а з розширенням сфери застосування Permit2 ризиків для адрес, які піддаються загрозі, також стане більше. Сподіваюся, читачі зможуть поширити цю інформацію серед більшої кількості людей, щоб спільно підвищити обізнаність про безпеку.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
20 лайків
Нагородити
20
7
Поділіться
Прокоментувати
0/400
ruggedNotShrugged
· 07-20 12:50
А це знову невдахи на uni постраждали
Переглянути оригіналвідповісти на0
RektButStillHere
· 07-20 12:30
Сусідній гаманець знову зник, найбільший ворог Блокчейн
Переглянути оригіналвідповісти на0
MEVVictimAlliance
· 07-18 15:04
Знову попав у таку пастку, ще й підписався на це, блін.
Переглянути оригіналвідповісти на0
ChainDoctor
· 07-18 14:54
Справді страшно. Добре, що я торгую криптовалютою досить обережно.
Переглянути оригіналвідповісти на0
rekt_but_resilient
· 07-18 14:48
Вже програв, а все ще граєш
Переглянути оригіналвідповісти на0
BoredRiceBall
· 07-18 14:38
Подивившись, прямо відкривайте зволожувач, хто ще наважиться грати в uni
Переглянути оригіналвідповісти на0
RektRecorder
· 07-18 14:36
Цього року навіть підпис не є безпечним? Шахрайство, шахрайство~
Uniswap Permit2 підписка замилювання очей: висока прихованість, величезна загроза
Розкриття шахрайства з підписами Uniswap Permit2
Хакери є лякаючим явищем в екосистемі Web3. Для розробників відкритий код означає, що глобальні хакери можуть його вивчати, і будь-яка недбалість може призвести до великих проблем. Для окремих користувачів кожна взаємодія в ланцюгу або підпис може нести ризик, і будь-яка необережність може призвести до крадіжки активів. Тому питання безпеки завжди було однією з найбільших проблем у криптовалютному світі. Через особливості блокчейну вкрадені активи майже неможливо повернути, тому знання з безпеки є особливо важливими.
Нещодавно почала активізуватися нова форма риболовлі, яка може призвести до крадіжки лише за допомогою підпису, метод надзвичайно прихований і важкий для запобігання. Адреси, які використовували Uniswap, можуть бути піддані ризику. У цій статті ми розглянемо цю методику риболовлі з підписами, щоб уникнути подальших втрат активів.
Хід подій
Нещодавно один мій друг ( малий А ) втратив свої активи з гаманця. На відміну від звичних способів крадіжки, малий А не розкривав свій приватний ключ і не взаємодіяв з фішинговими сайтами.
Блокчейн-браузер показує, що USDT маленького А було переміщено через функцію Transfer From. Це означає, що переказ токенів здійснив третій адрес, а не витік приватного ключа гаманця.
Деталі угоди показують:
Ключове питання: як отримати права на активи за адресою, яка закінчується на fd51? Чому це пов'язано з Uniswap?
Подальше розслідування виявило, що перед передачею активів малого A ця адреса також виконала операцію Permit, а об'єктами взаємодії були контракти Permit2 Uniswap.
Uniswap Permit2 є новим контрактом, запущеним наприкінці 2022 року, який дозволяє токенам надавати дозволи для спільного використання та управління між різними додатками, з метою створення більш єдиного, ефективного та безпечного користувацького досвіду. З інтеграцією більшої кількості проектів, Permit2 має надію реалізувати стандартизоване схвалення токенів між додатками, зменшуючи витрати на транзакції та підвищуючи безпеку.
Permit2 як посередник між користувачами та Dapp, користувачам потрібно лише надати дозвіл контракту Permit2, і всі інтегровані Dapp можуть ділитись дозволеною сумою. Це знижує витрати на взаємодію для користувачів і покращує досвід. Але це також двосічний меч, проблема полягає у способі взаємодії з Permit2.
У традиційних способах взаємодії авторизація та переміщення коштів є операціями в ланцюгу. Permit2 перетворює дії користувача на підписування поза ланцюгом, а операції в ланцюгу виконуються проміжною особою. Це дозволяє користувачам, навіть якщо їхній гаманець не має ETH, використовувати інші токени для сплати Gas або отримувати відшкодування від проміжної особи.
Однак, підпис поза ланцюгом є етапом, який користувачі найчастіше ігнорують. Більшість людей не перевіряють уважно вміст підпису та не розуміють його значення, що є найбільш небезпечним моментом.
Щоб скористатися цим вразливістю, ключовою умовою є те, що гаманець повинен надати дозвіл контракту Permit2 Uniswap. Наразі для виконання Swap на Dapp, що інтегрує Permit2, або на Uniswap потрібно надати такий дозвіл. Ще більш страшно, що незалежно від суми Swap, контракт Permit2 за замовчуванням запитує дозвіл на всю суму залишку. Хоча MetaMask дозволяє налаштовувати суму, більшість людей вибирає максимальне або значення за замовчуванням, а значення за замовчуванням для Permit2 є безмежним.
Це означає, що якщо ви взаємодієте з Uniswap і надаєте дозвіл контракту Permit2 після 2023 року, ви можете піддатися цьому ризику фішингу. Хакери використовують функцію Permit, щоб за допомогою вашого підпису перенести дозволену вами суму токенів Permit2 на іншу адресу.
Як запобігти?
Розуміння та розпізнавання вмісту підпису: навчіться розпізнавати формат підпису Permit, що містить ключову інформацію, таку як Owner, Spender, value, nonce та deadline. Використання безпечних плагінів є хорошим вибором.
Розділення активів гаманця та інтерактивного гаманця: зберігайте великі активи в холодному гаманці, інтерактивний гаманець тримає лише невелику кількість коштів, що може значно зменшити втрати.
Обмеження суми авторизації або скасування авторизації: під час обміну на Uniswap авторизуйте лише необхідну суму. Хоча повторна авторизація щоразу буде збільшувати витрати, це дозволить уникнути ризику фішингу підписів Permit2. Вже авторизовані можна скасувати за допомогою безпечного плагіна.
Досліджуйте, чи підтримує токен функцію permit: зверніть увагу на те, чи підтримує ваш токен цю функцію, якщо підтримує, необхідно бути особливо обережним і уважно перевірити кожен невідомий підпис.
Розробка плану реагування: якщо вас обманули, але у вас ще є токени на інших платформах, необхідно обережно їх виводити та переносити. Хакери можуть у будь-який момент контролювати вашу адресу, і як тільки з'являться токени, вони можуть бути перенесені. Рекомендується звернутися за допомогою до професійної безпекової команди, використовуючи такі технічні засоби, як MEV-перенесення.
У майбутньому кількість фішингових атак на основі Permit2 може зростати. Цей спосіб фішингу з використанням підписів є надзвичайно прихованим і важко захистити, а з розширенням сфери застосування Permit2 ризиків для адрес, які піддаються загрозі, також стане більше. Сподіваюся, читачі зможуть поширити цю інформацію серед більшої кількості людей, щоб спільно підвищити обізнаність про безпеку.