Деякі дрейнери Solana не просто виводять ваші SOL. Вони змінюють сам акаунт гаманця, після чого він більше не може надсилати SOL, а будь-які додані SOL може вивести зловмисник. Токени та NFT зазвичай лишаються на місці, але звичайний спосіб їх перенести, надсилання з застосунку гаманця, не спрацьовує або дає зловмиснику ще більше SOL.
У цьому посібнику пояснено, що змінилося, чому не варто надсилати SOL на гаманець і як перенести решту на новий гаманець, поки комісії сплачує інший гаманець.
Як зрозуміти, що ваш гаманець Solana перетворено?
Надсилання з гаманця не проходять, хоча на ньому ще є токени, а оглядач показує адресу як nonce-акаунт з authority, яке вам не належить, або як акаунт, що належить програмі. Коли ви підключаєтеся до Sol Incinerator, він показує «Ваш гаманець зламано» з часом захоплення та посиланням на транзакцію.
Звичайний гаманець Solana — це простий акаунт System Program без даних. Перетворений гаманець лишається за тією самою адресою, але акаунт за нею змінився. Перевірте це трьома способами:
- Відкрийте адресу в оглядачі. Solana Explorer показує для перетвореного гаманця дані nonce-акаунта, зокрема адресу authority. Якщо це authority не ваша адреса, SOL акаунта контролює хтось інший.
- Знайдіть транзакцію, яка це зробила. У досліджених нами випадках жертва підписала разом зі зловмисником транзакцію з двома інструкціями System Program:
allocateнадала адресі гаманця 80 байтів даних, аinitializeNonceперетворила її на durable nonce-акаунт зі зловмисником як authority. Мережеву комісію сплатив зловмисник. В одному випадку виведення SOL жертви відбулося через 30 секунд. - Підключіть гаманець до Sol Incinerator. Він читає акаунт під час підключення і, якщо знаходить захоплення, показує попередження з часом захоплення та посиланням на Solscan.
Деякі дрейнери діють інакше: призначають адресу програмі. Результат для вас той самий: гаманець більше не може сам оплачувати свої витрати.
Чому зламаний гаманець не може платити мережеві комісії?
Durable nonce-акаунт — це звичайна функція Solana для підписання транзакцій заздалегідь. Він зберігає значення nonce та authority, і лише це authority може просунути nonce, змінити authority або вивести SOL акаунта. Коли дрейнер перетворює вашу адресу на такий акаунт, він стає authority над SOL вашої адреси.
- SOL більше не може вийти звичайним шляхом. System Program відмовляється переказувати SOL з акаунта, що містить дані, а ваш гаманець тепер містить дані nonce.
- Комісії сплачуються з SOL, які може забрати зловмисник. Nonce-акаунт може платити мережеві комісії лише з SOL понад свій резерв rent, а authority може вивести ці SOL, щойно вони з’являться.
- Адреса, що належить програмі, взагалі не може платити комісії. Solana приймає комісії лише від простого акаунта System або від nonce-акаунта.
- Скасувати це неможливо. Лише поточне authority може змінити authority nonce-акаунта, тож жодна підписана вами транзакція його не поверне.
З токенами інакше. Кожен токен-акаунт записує вашу адресу як власника, а токен-програма перевіряє ваш підпис, а не стан акаунта гаманця. Ваш ключ і далі може перенести кожен токен і кожен NFT; потрібно лише, щоб мережеву комісію сплатив інший гаманець.
Не надсилайте SOL на зламану адресу, навіть невелику суму на комісії. Вважайте, що за нею стежить бот. Не підписуйте нічого із сайту чи особистого повідомлення, де обіцяють «розблокувати» чи «полагодити» гаманець: платні пропозиції відновлення в особистих повідомленнях — поширене шахрайство після зламу.
Як вивести токени зі зламаного гаманця Solana?
Використайте транзакцію, у якій інший гаманець платить мережеву комісію, а зламаний гаманець підписує лише як власник токенів. Застосунки гаманців списують комісію з гаманця-відправника, тому скористайтеся інструментом відновлення, створеним для скомпрометованих гаманців, наприклад Sol Recovery, і надішліть усе на новий гаманець.
Sol Recovery — незалежний сервіс для скомпрометованих гаманців Solana. Він розпізнає перетворені гаманці, а його безкоштовний акаунт розділяє гаманець, який отримує ваші активи, і гаманець, який платить комісії.
- Створіть новий гаманець. Якщо ви колись вводили seed-фразу чи приватний ключ на сайті, створіть новий гаманець з новою seed-фразою. Ще один акаунт під старою фразою — це не новий гаманець.
- Подивіться, що лишилося. Вставте зламану адресу в Sol Recovery. Він сканує токени, застейкані позиції, позиції DeFi, колекційні активи та домени без підключення гаманця.
- Укажіть безпечний гаманець і платника. Додайте новий гаманець як отримувача та окремий гаманець для сплати мережевих комісій. Поповнюйте лише гаманець-платник, ніколи не зламану адресу.
- Перевірте й підпишіть. Зламаний гаманець підписує кожен переказ як власник токенів. Перед схваленням перевірте, що робить кожна транзакція, і переконайтеся, що активи надійшли.
Sol Recovery також має бот-сервіс для застейканих або заблокованих позицій, які розблоковуються в заданий час, щоб випередити зловмисника в момент розблокування. Цей сервіс бере 10% від урятованого й потребує приватного ключа зламаного гаманця, щоб підписувати миттєво. Це серйозне рішення про довіру: передавайте лише ключ гаманця, який уже скомпрометовано, і ніколи не передавайте seed-фразу нового гаманця.
Sol Recovery не пов’язаний із Sol Incinerator. Перед підписанням перевірте його поточні комісії та кожну транзакцію. Розробники можуть зібрати такий самий переказ самостійно: переказ токенів дійсний, коли його підписує власник токенів, незалежно від того, який гаманець платить комісію.
Чи можна ще забрати SOL із токен-акаунтів?
Так. Порожні токен-акаунти містять поворотний депозит rent, і їх закриття повертає ці SOL. Звичайне отримання виплачує їх на сам гаманець, тобто в цьому випадку зловмиснику, тому Sol Incinerator обробляє перетворені гаманці інакше.
Коли ви підключаєте перетворений гаманець, Sol Incinerator просить адресу безпечного гаманця й виплачує повернені SOL туди. Він сам сплачує мережеву комісію, а ця комісія та звичайна комісія за очищення вираховуються з повернених SOL. На зламану адресу нічого не надсилається. Підтримуються закриття порожніх токен-акаунтів і виведення надлишкового rent; спалювання та інші дії, за яких гаманець має сам платити комісії, не підтримуються.
Після перенесення токенів їхні токен-акаунти лишаються порожніми. Якщо ваш інструмент відновлення їх не закриває, заберіть SOL ще раз, щоб отримати й цей rent.
Що ще варто перевірити?
- Прочитайте транзакцію захоплення повністю. Вона могла також перевести активи чи схвалити делегата. Запишіть підпис і всі незнайомі адреси для скарг.
- Складіть список застейканих і заблокованих позицій. Деяким потрібен анстейкінг або період очікування, перш ніж їх можна перенести, а зловмисник може чекати того самого моменту.
- Замініть стару адресу всюди, куди надходять кошти. Списки виведення на біржах, налаштування виплат і реєстрації в airdrop, які платять на зламану адресу, тепер платять зловмиснику.
- Припиніть користуватися цією адресою. Коли активи виведено, не використовуйте гаманець знову, навіть для невеликих сум.

Sol Incinerator
Підключіть зламаний гаманець і заберіть SOL, які з нього можна повернути, на адресу безпечного гаманця. На зламану адресу нічого не надсилається.