Головне завдання при виявленні компрометації — якомога швидше перевести активи на новий, повністю контрольований гаманець. У цій інструкції описано точний порядок дій: від підготовки безпечного місця призначення до фінальної перевірки балансу. Припускається, що ви вже виконали перші кроки з реакції на інцидент, описані в розділі Що робити після компрометації гаманця.

Передумови: новий безпечний гаманець

Перш ніж ініціювати будь-яку транзакцію, переконайтеся, що місце призначення надійне. Без цього кроку переміщення активів не має сенсу — ви просто перенесете їх на іншу скомпрометовану адресу.

Де створювати новий гаманець

  • Ізольоване середовище. Використовуйте фізично інший пристрій, ніж той, на якому сталася компрометація. Якщо такого немає — принаймні окремий чистий профіль користувача в операційній системі.
  • Офіційне джерело. Завантажуйте гаманець лише з офіційного сайту розробника. Перевірте URL посимвольно.
  • Тип гаманця. Для зберігання значних сум найбезпечніший варіант — апаратний гаманець (hardware wallet). Якщо його немає під рукою, підійде програмний некастодіальний гаманець (наприклад, Phantom або Solflare), створений на чистому пристрої.

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

  1. Запишіть відновлювальну фразу (seed-фразу) на фізичний носій — папір або металеву пластину. Не зберігайте її в цифровому вигляді на жодному пристрої.
  2. Перевірте, що гаманець відкривається за цією фразою на іншому пристрої — це підтверджує, що фраза записана без помилок.
  3. Скопіюйте адресу нового гаманця та збережіть її окремо — вона знадобиться для перевірки.

Тільки після цих кроків можна переходити до переміщення коштів.

Покрокове переміщення SOL і токенів

Порядок дій важливий: спочатку переміщуєте нативний SOL, потім — SPL-токени. Причина в тому, що кожна транзакція на Solana вимагає комісії в SOL, і на скомпрометованому гаманці має залишитися достатньо коштів для оплати всіх переказів.

Крок 1. Оцініть ситуацію

  • Відкрийте скомпрометований гаманець і зафіксуйте: скільки SOL, які токени та в яких кількостях знаходяться на балансі.
  • Перевірте, чи є закриті токен-рахунки (closed token accounts) — вони теж містять мінімальний депозит у SOL, який можна повернути.
  • Визначте орієнтовну суму комісій: кожна транзакція зазвичай коштує близько 0.000005 SOL, але для точної оцінки перевірте поточний пріоритет-fee у мережі.

Крок 2. Перемістіть SPL-токени

Саме токени переміщуються першими — поки на гаманці є SOL для комісій.

  1. У скомпрометованому гаманці натисніть «Send» біля кожного токена.
  2. Вставте адресу нового безпечного гаманця. Обов'язково порівняйте перші 4 і останні 4 символи адреси призначення з тими, що ви записали раніше.
  3. Укажіть повну суму токенів.
  4. Підтвердьте транзакцію.
  5. Повторіть для кожного токена окремо.

Наслідок помилки при введенні адреси: токени будуть надіслані на чужий гаманець. Повернути їх практично неможливо без згоди власника цієї адреси. Саме тому перевірка адреси — обов'язковий крок, а не рекомендація.

Крок 3. Закрийте токен-рахунки (за потреби)

Кожен SPL-токен на Solana зберігається на окремому рахунку (associated token account), для якого був сплачений депозит. Після переміщення токенів ці рахунки залишаються порожніми, але депозит у SOL на них заблоковано. Щоб його повернути:

  1. У гаманці знайдіть розділ із закритими або порожніми токен-рахунками.
  2. Використовуйте опцію «Close account» для кожного порожнього рахунку.
  3. Депозит (зазвичай близько 0.00203 SOL за рахунок) повернеться на ваш баланс.

Крок 4. Перемістіть SOL

SOL переказується останнім — після того, як всі токени та депозити з токен-рахунків зібрані.

  1. Натисніть «Send» для SOL.
  2. Вставте адресу нового гаманця. Знову перевірте перші та останні символи.
  3. Укажіть суму. Не вказуйте максимальну суму автоматично — залиште трохи SOL на випадок, якщо попередні транзакції ще не підтвердилися або потрібно буде закрити залишкові рахунки. Наприклад, якщо на балансі 0.1 SOL, перекажіть 0.098 SOL.
  4. Підтвердьте транзакцію.

Крок 5. Перемістіть залишок SOL

Після підтвердження основної транзакції перевірте залишок на скомпрометованому гаманці. Якщо там ще є SOL — перекажіть і його повністю на нову адресу. Тепер можна вказати максимальну суму, оскільки інших транзакцій з цього гаманця не планується.

Перевірка результату: баланс нового гаманця

Переміщення активів не завершено, поки ви не переконалися, що кошти дійсно надійшли на новий гаманець. Не довіряйте лише інтерфейсу гаманця — виконайте незалежну перевірку.

Як перевірити

  1. Відкрийте новий гаманець на чистому пристрої та звірте баланси SOL і кожного токена з тими, що ви фіксували на етапі оцінки.
  2. Відкрийте блокчейн-експлорер (наприклад, Solscan або SolanaFM) і введіть адресу нового гаманця.
  3. Перевірте, що кожна транзакція має статус «Success», а не «Failed» або інший.
  4. Переконайтеся, що кількість токенів у транзакції збігається з очікуваною.

Що робити, якщо транзакція не підтверджується

  • Перевірте статус у блокчейн-експлорері за ідентифікатором транзакції (signature).
  • Якщо статус «Dropped» — транзакція не потрапила в блок. Спробуйте повторити з дещо вищою комісією.
  • Якщо статус «Failed» — перевірте причину в деталях транзакції. Найчастіша причина — недостатньо SOL для комісії або спроба закрити рахунок, який не порожній.
  • Тільки після того, як усі транзакції мають статус «Success» і баланси збігаються, можна вважати переміщення завершеним.

    Ризики та типові помилки

    Під час переміщення активів зі скомпрометованого гаманця існує кілька специфічних ризиків, які відрізняються від звичайних переказів.

    Помилка Наслідок Як уникнути
    Переміщення SOL першим На гаманці не залишиться SOL для комісій за переказ токенів. Токени будуть заблоковані. Спочатку токени, потім SOL. Завжди залишайте запас на комісії.
    Створення нового гаманця на тому ж пристрої Зловмисник може мати доступ до нового гаманця теж. Переміщення марне. Ізольоване середовище або інший пристрій.
    Копіювання адреси з неперевіреного джерела Адреса підмінена. Активи надійдуть зловмиснику. Беріть адресу безпосередньо з нового гаманця, перевіряйте посимвольно.
    Використання максимальної суми SOL одразу Не вистачить SOL для закриття токен-рахунків або повторних транзакцій. Залишайте невеликий запас, перекажіть залишок окремо.
    Паніка й поспішні дії без перевірки Транзакція на неправильну адресу, подвійний переказ, втрата коштів. Дійте послідовно за інструкцією. Кожну адресу перевіряйте двічі.

    Специфічний ризик: MEV-боти

    У мережі Solana існують боти, які аналізують транзакції в мемпулі й намагаються перехопити великі перекази. Хоча прямий вивід коштів з вашого гаманця без вашого підпису неможливий, бот може спробувати фронтранити вашу транзакцію, якщо ви використовуєте дуже низьку комісію. Щоб мінімізувати цей ризик — встановлюйте адекватну пріоритет-fee (priority fee), щоб транзакція швидко потрапила в блок.

    Безпечний наступний крок

    Після успішного переміщення всіх активів скомпрометований гаманець стає порожнім і більше не використовується. Не намагайтеся його «відновити» або повторно використовувати — вважайте його назавжди втраченим для вас.

    Логічний наступний крок — забезпечити довгострокову безпеку нового гаманця:

    • Апаратний гаманець. Якщо ви використовували програмний гаманець як тимчасове рішення — плануйте перенести активи на апаратний гаманець, щойно він буде під рукою.
    • Перевірка підключень. Новий гаманець не підключайте до застосунків, яким не довіряєте. Кожне підключення (connect wallet) — це новий вектор ризику.
    • Моніторинг. Періодично перевіряйте адресу скомпрометованого гаманця в блокчейн-експлорері. Якщо на нього надійдуть кошти (наприклад, airdrop або повернення від деяких протоколів) — не намагайтеся їх забрати через старий гаманець. Зв'яжіться з підтримкою відповідного протоколу та поясніть ситуацію.

    Якщо під час переміщення ви помітили, що якась транзакція була підписана без вашої ініціативи, або активи зникали в процесі — перейдіть до інструкції Що робити, якщо підписав підозрілу транзакцію.

Джерела