На головну / Блог / Крипторозслідування

Підписали підозрілу транзакцію або Approve: як перевірити та відкликати дозволи гаманця

9 хв читання Крипторозслідування
Підписали підозрілу транзакцію або Approve: як перевірити та відкликати дозволи гаманця
Користувач підключив гаманець до сайту, натиснув Approve або підписав незрозуміле повідомлення — а вже після цього запідозрив фішинг. У такій ситуації важливо діяти швидко, але не хаотично. Підпис, дозвіл на витрачання токенів і передавання seed-фрази створюють різні ризики, тому універсальна порада «просто відключіть сайт» може бути недостатньою.
Відключення dApp від гаманця не відкликає on-chain дозволи. Якщо смартконтракт отримав право витрачати токени, цей дозвіл може залишатися активним після закриття вкладки, видалення сайту зі списку підключень і навіть перезавантаження гаманця. Спочатку потрібно зрозуміти, що саме було підписано, а потім обрати відповідну реакцію.

Що саме ви могли підписати і чим відрізняються ризики

Словом «підпис» часто називають кілька технічно різних дій. Перед будь-якими операціями відкрийте історію активності гаманця й транзакцію у відповідному блокчейн-оглядачі. Зверніть увагу на мережу, адресу смартконтракту, функцію, токен, суму та адресу, якій надано право керування.
  • Підключення гаманця до сайту. Зазвичай сайт бачить публічну адресу та може пропонувати запити на підпис. Саме підключення не повинно давати права списувати активи, але шахрайський сайт може одразу показати небезпечний наступний запит.
  • Підпис повідомлення. Він не завжди створює звичайну транзакцію й може не вимагати gas. Проте деякі структуровані підписи використовуються як дозвіл для подальших операцій, тому твердження «без комісії — отже безпечно» є хибним.
  • Approve для взаємозамінного токена. Власник дозволяє певній адресі-оператору (spender) витрачати токени в межах установленого ліміту. Якщо ліміт необмежений, ризик стосується не лише однієї запланованої операції.
  • Дозвіл на NFT. Функції на кшталт setApprovalForAll можуть надати оператору право керувати всіма активами певної NFT-колекції у гаманці.
  • Звичайна on-chain транзакція. Це може бути безпосередній переказ, обмін або виклик смартконтракту. Якщо транзакція вже підтверджена мережею, просто «скасувати» її заднім числом зазвичай неможливо.
  • Компрометація seed-фрази або приватного ключа. Це найсерйозніший сценарій: стороння особа може повністю контролювати гаманець. Відкликання одного Approve не усуне цей ризик.
Не кожний Approve є шахрайським: децентралізованим біржам та іншим протоколам дозволи потрібні для роботи з токенами. Небезпека виникає, коли користувач не впізнає сайт чи контракт, не розуміє обсяг дозволу або підписав запит після переходу з реклами, приватного повідомлення чи підробленої сторінки підтримки. Базове пояснення token approval — у довідці MetaMask; окремо варто прочитати матеріал про signature phishing.
Отримати консультацію Коротка оцінка ситуації — без зобовʼязань

Як перевірити активні дозволи та правильно їх відкликати

Перевірку проводять окремо для кожної адреси та мережі. Дозвіл у Ethereum не відображає автоматично дозволи тієї самої адреси в інших EVM-мережах. Так само потрібно окремо перевіряти взаємозамінні токени та операторів NFT.
  1. Зафіксуйте підозрілу дію. Збережіть URL сайту, час, адресу гаманця, мережу, хеш транзакції, скриншот запиту та всі повідомлення. Не підписуйте нові запити, які сайт називає «скасуванням» або «верифікацією».
  2. Перевірте історію в офіційному оглядачі мережі. Визначте адресу контракту й функцію, яку було викликано. Для Approve знайдіть токен, адресу spender та розмір allowance.
  3. Відкрийте перевірений сервіс керування дозволами. Використовуйте вбудований інструмент виробника гаманця або офіційно рекомендований approval checker. Адресу сервісу вводьте самостійно чи переходьте з офіційної документації, а не з рекламного оголошення. Інструкція MetaMask: How to revoke smart contract allowances.
  4. Змініть мережу та перегляньте дозволи. Перевірте невідомі контракти, необмежені ліміти, старі dApp і дозволи, видані незадовго до інциденту. Те, що токен зараз має малий баланс, не завжди робить необмежений дозвіл безпечним у майбутньому.
  5. Відкличте підозрілий дозвіл. Revocation зазвичай є окремою on-chain транзакцією, яка встановлює allowance на нуль або скасовує право оператора. Для неї потрібна невелика кількість нативної монети мережі на оплату gas.
  6. Перевірте результат. Після підтвердження транзакції оновіть список allowances і переконайтеся, що дозвіл більше не активний. Повторіть перевірку в інших мережах, якими користувався гаманець.
Просте відключення сайту в налаштуваннях гаманця лише припиняє поточну взаємодію інтерфейсу з адресою. Воно не змінює дані вже виданого дозволу в блокчейні. Водночас відкликання Approve не може повернути токени, які вже були списані до скасування дозволу.
Будьте обережні з фальшивими «revoke-сервісами». Сторінка для перевірки дозволів не повинна просити seed-фразу або приватний ключ. Перед підтвердженням revocation звіряйте мережу, контракт і зміст транзакції в гаманці; за можливості перевіряйте дані на екрані апаратного гаманця. Корисні критерії оцінки контракту — у матеріалі MetaMask How to tell if a smart contract is safe.

Що робити після підозрілого підпису або списання активів

Якщо кошти ще на місці, припиніть взаємодію з підозрілим сайтом, перевірте та відкличте релевантні дозволи. Потім перегляньте всі мережі, токени й NFT, якими користувалися з цієї адреси. Змініть паролі пов’язаних сервісів, увімкніть двофакторну автентифікацію там, де це можливо, та перевірте пристрій на шкідливе програмне забезпечення.
Якщо seed-фразу або приватний ключ вводили на сторонньому сайті, вважайте гаманець повністю скомпрометованим. Створіть новий гаманець на чистому пристрої та перенесіть туди активи, якщо це ще безпечно зробити. Не використовуйте стару seed-фразу для нового гаманця. Якщо зловмисник уже автоматично забирає нативну монету для gas, не поповнюйте адресу навмання: це може лише збільшити втрати, і сценарій потребує окремої технічної оцінки.
Якщо токени вже списані, зафіксуйте хеші всіх транзакцій, адреси, мережі, час, суми та зв’язок інциденту з фішинговим сайтом. Не надсилайте шахраям додаткових платежів за «розблокування» чи «повернення». Публічні дані блокчейну дозволяють простежувати подальший рух коштів, а взаємодія адреси з централізованими сервісами може стати важливою для звернень до платформ і правоохоронних органів. Див. як повернути викрадену криптовалюту.
Якщо в інциденті брав участь акаунт криптобіржі або після підозрілої операції платформа обмежила виведення, див. також що робити, якщо заблокували акаунт або виведення на біржі. Звернення само по собі не гарантує повернення активів: результат залежить від маршруту коштів, швидкості реагування, правил платформи та юрисдикції.

Підписали незрозумілий Approve і не знаєте, чи активи в безпеці?

ProDefence допомагає визначити тип підпису, перевірити активні дозволи в потрібних мережах, дослідити підозрілі контракти та зафіксувати рух уже списаних активів. Ми формуємо технічну картину інциденту та практичний план подальших дій без доступу до вашої seed-фрази або приватного ключа.
Не відкладайте первинну перевірку: чим раніше встановлено, який саме дозвіл отримав сторонній контракт, тим швидше можна обмежити подальший ризик. Зверніться до ProDefence через офіційну форму сайту — фахівець оцінить ситуацію та пояснить реалістичні варіанти реагування.

Перевірка дозволів

Підписали підозрілий Approve або повідомлення?

Опишіть мережу, хеш і сайт. ProDefence допоможе оцінити тип підпису та активні allowances без запиту seed-фрази.

Перевірити дозволи

Без гарантій «миттєвого розблокування» активів.