Состояние крипто-безопасности, часть 1

  • ❗️Уважаемые форумчане, ознакомьтесь с правилами форума. Все сообщения и темы должны быть опубликованы в разделах, которые соответствуют их тематике и с четким соблюдением правил форматирования. Нарушение этих правил приведет к блокировке вашего аккаунта.

    Для благодарности на форуме существует кнопка "LIKE", а все сообщения с благодарностями - флуд и захламление тем. Так вы только усложняете поиск информации на форуме. Все кто будут оставлять подобные сообщения - будут восприняты как спам и приведут к блокировке.

    Прежде чем создавать тему с вопросом или добавлять новый вопрос в теме - используйте поиск по форуму, с вероятностью 99% ответ на данный вопрос уже есть на форуме. В противном случае флуд с вопросами будет воспринят как накрутка сообщений и ваш аккаунт будет заблокирован.

  • 🤝 Партнерская программа. Пригласи друга и получи 500 баллов. Подробнее
  • 🤑 Общайся на форуме за деньги. На форуме существует оплата за создание тем и сообщений. За публикацию полезной информации, пользователи получают баллы, которые можно обменять на криптовалюту

DonTouch

Начинающий
Топикстартер
15 Авг 2022
178
46
TON Testnet
0
Баллы
0
В этом году хакеры украли более $2.000.000.000 из криптовалюты. Проблема будет только усугубляться по мере роста экосистемы криптовалют и привлечения новых злоумышленников. Что-то должно измениться. Пришло время сделать шаг назад, задуматься о прошлых ошибках и изменить подход к обеспечению безопасности в этой отрасли.

В этой серии статей я:
  • Представлю схему классификации криптовалютных взломов
  • Опишу методы, использованные в самых прибыльных на сегодняшний день взломах
  • Рассмотрю сильные и слабые стороны инструментов, которые в настоящее время используются для предотвращения взломов
  • Обсудим будущее безопасности в криптовалютах

Виды взломов

Экосистема криптоприложений состоит из взаимодействующих протоколов, управляемых смарт-контрактами, которые опираются на базовую инфраструктуру цепочки хостов и интернета.

Каждый слой этого стека имеет свои уникальные уязвимости. Мы можем классифицировать взломы криптовалют в зависимости от того, какой слой стека был использован и какой метод был применен.

Инфраструктура
Атаки на инфраструктурный уровень используют слабые места в базовых системах, поддерживающих криптоприложение: блокчейн, на который оно опирается, интернет-сервисы, используемые для фронтенда, и инструменты, используемые для управления закрытыми ключами.

Язык смарт-контрактов
Взломы на этом уровне используют слабые места в языках смарт-контрактов, таких как Solidity. Существуют общеизвестные уязвимости в языках смарт-контрактов, такие как реентерабельность и опасность плохой реализации delegatecall, которые можно устранить, следуя лучшим практикам.

Забавный факт: Reentrancy, уязвимость, использованная для взлома печально известного DAO за 60 миллионов долларов, была обнаружена в ходе аудита безопасности Ethereum компанией Least Authority. Забавно подумать о том, насколько все изменилось бы, если бы эта проблема была устранена до запуска.

Логика протокола
Атаки в этой категории используют ошибки в логике отдельного приложения. Если хакер находит ошибку, он может использовать ее для запуска поведения, которое не было задумано разработчиками приложения.

Например, если новая децентрализованная биржа имеет ошибку в математическом уравнении, определяющем, сколько пользователь получает от обмена, то эта ошибка может быть использована для получения большего количества денег от обмена, чем должно было быть.

Атаки на уровне логики протокола также могут использовать преимущества систем управления, созданных для контроля параметров приложения.

Экосистема
Многие из наиболее серьезных взломов криптовалют используют взаимодействие между несколькими приложениями. Наиболее распространенный вариант - когда хакеры используют логические ошибки в одном протоколе, используя средства, заимствованные из другого, для усиления масштаба атаки.

Обычно средства, используемые в экосистемной атаке, заимствуются с помощью флэш-кредитования. При флэш-кредитовании вы можете взять столько денег, сколько хотите, из пулов ликвидности таких протоколов, как Aave и dYdX, без предоставления залога, при условии, что средства будут возвращены в той же транзакции.

Анализ данных
В сети имеются данные о 100 крупнейших взломах криптовалют, начиная с 2020 года, общая сумма похищенных средств составила 5 млрд долларов.

Чаще всего происходили атаки на экосистемы. Они составляют 41% от группы выборки.

Эксплойты логики протокола привели к потере наибольшего количества денег.

Три крупнейших взлома в наборе данных - атака на мост Ronin (624 млн долларов), взлом Poly Network (611 млн долларов) и взлом моста Binance (570 млн долларов) - оказывают огромное влияние на результаты.

Если исключить три самые крупные атаки, то взломы инфраструктуры являются самой влиятельной категорией по объему потерянных средств.


Как осуществляются взломы?

Инфраструктурные атаки

В 61% случаев использования инфраструктуры в группе выборки закрытые ключи были скомпрометированы неизвестным способом. Хакеры могли получить доступ к этим закрытым ключам с помощью атак социальной инженерией, таких как фишинговые электронные письма и поддельные объявления о работе.

Jy9CEab6fh_ANXClZWTkR-ZK9KjWjOwowqQeEWEj7l1reMpD5lbuS5esZ14jAAK_0RBWBVoGu--8UjqSpR0ndvDlqQYszF14nnKgeXPQYsjZGTw0p-EBe0ERXnvbyQXWx1Y7qlBAmuLX1ShNBX26kkk9dZCzPjNNqyrBQegPBqIstiy6mNMAz4XtBQ


Атаки на язык смарт-контрактов
Атаки реентерабельности были самым популярным видом атак на уровне языка смарт-контрактов.

При атаке реентерабельности функция в уязвимом смарт-контракте вызывает функцию на вредоносном контакте. Или же функция во вредоносном контракте может быть запущена, когда уязвимый контракт отправляет токены вредоносному контракту. Затем эта вредоносная функция обращается к уязвимой функции в рекурсивном цикле до того, как контракт обновит свой баланс.

Например, во взломе Siren Protocol функция для вывода токенов залога была уязвима к реентерабельности и вызывалась многократно (каждый раз, когда вредоносный контракт получал токены), пока весь залог не был израсходован.
PYqgD7UMvUhwFc8VxuFY2-QOefI2BFq0Y83BzwS8x4yqEnQGtwNWUodIFC6GluPqcmMtji4rgsGs8Uuzd-QI9Yyc8f-86m-Dl9LwVzWQINc3Zr8HJRzBksLyAQ9BkVJTg2eQzp0spjqW9HdtWz_o4KYg0kor8eJjWRK4PXTJSXU9PWqEbfQMpPn9cg



Атаки на логику протокола
Большинство эксплойтов на протокольном уровне уникальны для конкретного приложения, поскольку каждое приложение имеет уникальную логику (если только это не чистый форк).

Ошибки контроля доступа были наиболее часто повторяющейся проблемой в группе выборки. Например, во взломе Poly Network контракт "EthCrossChainManager" содержал функцию, которую мог вызвать любой желающий для выполнения межцепочечной транзакции.

Этот контракт владел контрактом "EthCrossChainData", поэтому, если установить "EthCrossChainData" в качестве цели кросс-цепной транзакции, можно было обойти проверку onlyOwner().

Оставалось только составить нужное сообщение, чтобы изменить публичный ключ, определенный как "хранитель" протокола, захватить контроль и слить средства. Обычные пользователи никогда не должны были иметь доступ к функциональности контракта "EthCrossChainData".

Примечание: Было много случаев, когда несколько протоколов были взломаны с помощью одной и той же техники, потому что команда форкнула кодовую базу, в которой была уязвимость.

Например, многие форки Compound, такие как CREAM, Hundred Finance и Voltage Finance, стали жертвами атак реентерабельности, потому что код Compound не проверяет эффект от взаимодействия, прежде чем разрешить его. Это прекрасно работало для Compound, поскольку они проверяли каждый новый токен, который они поддерживали, на наличие этой уязвимости, но команды, создающие форки, не проявляли такого усердия.
NYhP7NoYIQBtUKewGST7wkct8GB3UWotgbavVYLJDu49oHq7y0Q6aungLD5v0ZiuVRFcA6wVRIp_pUR7D5FyBQ8cj-grd5SvvNmHU_GWCyjfF1p1_qcn0uQ0nye2IzH0dvJ_A2bQBZRbPsci4ukeLrJeFaCeq59HwlEjqiWmH1-LxM6023EiUt6XWQ


Экосистемные атаки
Флэш-кредиты использовались в 98% экосистемных атак.

Атаки с использованием флеш-кредитов обычно следуют следующей формуле: Используйте кредит для совершения массивных свопов, которые повышают цену токена на AMM, который кредитный протокол использует в качестве ценового фида. Затем, в той же транзакции, используйте этот раздутый токен в качестве залога, чтобы взять кредит намного выше его истинной стоимости.
uWrH85BzEmTZIDIEDN5rbIpnNj34NvEsfi-0lOlhWs7GZdEiQzU5GOEAkI2LN98mgodcfgdVtIBvnDbc9MQDKYIu9tnBeGAb_z08qbYJESZLko-MgFxx7vDnjxlyZwp2GfEhfbpQiMc8fxPif4ouOtz7UGYp0Vdnkg1uoyRS5QXPuPxDBUHHHucXXw