Эксплойт Solana. Как защитить свои SOL и USDC

icon USDC
Фото - Эксплойт Solana. Как защитить свои SOL и USDC
Притча о том, что Solana пребывает только в двух агрегатных состояниях (либо в состоянии шатдауна, либо эксплойта), видимо, никогда не устареет.
Как мы уже писали, 8 тысяч пользовательских кошельков были ограблены в среднем на $1000 каждый. 

Итак, если ваши SOL и USDC всё еще остаются у вас на балансе - то это не ваша заслуга, а недоработка хакеров. Шутка, но, как известно, в каждой шутке есть доля истины. Сейчас, пока Solana и хакеры в белых шляпах сотрудничают с командами взломанных кошельков по поиску уязвимостей, есть смысл снова задуматься о собственной кибербезопасности. 

Попробуем решить эту нетривиальную задачу с помощью простой школьной схемы “Дано-Найти-Решение”. Для этого нам всего лишь нужно знать достоверно известные параметры (“Дано”), а также четко представлять, какой результат нас интересует (“Найти”).

Дано

‘a’ = Пользователей ограбили очень брутально. Они ничего не подписывали, они не ходили на фишинговые сайты, и вообще не совершали никаких активностей. Многие из них мирно спали. При этом, транзакции были совершены, а записи в блокчейне были легитимны. 

‘b’ = Уже установлено, что прямого взлома блокчейнов Solana/Ethereum не происходило. 

‘c’ = Взломанными оказались некоторые мобильные кошельки для iOS/Android. Например, аппаратные кошельки типа Ledger сохранили активы. Также в безопасности были аккаунты на централизованных биржах (типа FTX или WhiteBIT).

‘d’ = Все пострадавшие кошельки не были активны в последние 6 месяцев (т.е. пострадали HODL’еры, а не какие-то там нубы).  

‘e’ = предварительное расследование показало, что скомпрометированными могли оказаться библиотеки соответствующих кошельков на Github.

‘f’ = “крипта - не скам”. Мы пока не готовы разочаровываться в технологии, чтобы уходить шлифовать болванку на заводе, и до конца своих дней копить резаные бумажки с портретами умерших людей, которые, с высокой вероятностью, еще и обесценятся. 

Найти:

План, при котором наши SOL и USDC всегда находятся там, куда мы их положили в последний раз,  независимо от того, повторит ли хакер свой маневр. 

Решение:

Если предположить, что хакер повторит свой алгоритм (а почему не повторить, если ты пока не в тюрьме, на кону $8 млн, и у тебя это уже получалось?), то напрашиваются следующие выводы: 

  1. Необходимо переместить свои средства в заведомо безопасное место. Как мы уже поняли, это могут быть аппаратные хранилища, или или надежные кастодиальные кошельки, типа кошелька blockchain.com
  2. Учитывая, что проблема касается именно мобильных приложений, следует подумать о  переходе на браузерные версии кошельков с двухфакторной аутентификацией.
  3. Есть смысл отменить все автоматические подтверждения (“галочки”), которые вы могли опрометчиво оставить в каких-либо DApp на своем телефоне.
  4. HODL - это слишком серьезный и долгосрочный проект, которому не по пути с хранением на смартфоне, который может зависать, ломаться и теряться.


Update

С итогами своих расследований выступили все команды, пользователи которых были затронуты эксплойтом (Solana Labs, Slope, Phantom, Trust Wallet), а также ряд публичных блокчейн-инженеров. Версия, которая остается предварительно доказанной и единственной, состоит в проблеме на стороне кошельков Slope. 

“Скомпрометированные адреса были сгенерированы, импортированы, или использованы именно в мобильном кошельке Slope”. 

Разработчики Slope порекомендовали юзерам немедленно перевести оставшиеся средства на новые кошельки, обязательно изменив сид-фразу. Однако, изменит ли это что-то в случае, если будет доказано хранение пользовательских сид-фраз на сервере кошелька? Вопрос риторический.