DeFi-приложения по-прежнему уязвимы перед атаками хакеров. С начала года мошенникам удалось взломать сразу несколько децентрализованных протоколов и украсть токены на миллионы долларов. CEO Fringe Finance Брайан Пасфилд рассказал редакции BeInCrypto о типичных атаках на DeFi-приложения, а также о том, как их предотвратить
О ключевых проблемах безопасности в секторе DeFi
DeFi — это совершенно новая отрасль. Эфириум представил полные по тьюрингу смарт-контракты менее восьми лет назад. Поэтому безопасность смарт-контрактов требует больше внимания и усилий, чем создание обычных финансовых систем. Более того, транзакции необратимы, а украденные средства можно скрыть через миксеры и тамблеры. Если хакер сможет выявить и использовать ошибку команды разработчиков, это позволит ему украсть миллиарды.
Между тем, разработчики часто поддаются внешнему давлению и спешат показать новые функции, нередко без надлежащего аудита и тщательного тестирования. На сегодняшний день обеспечение их приоритетности в новых и давно существующих проектах — это ключевая задача с точки зрения безопасности DeFi.
О самых популярных векторах атак в 2021-2022 годах
Брайан Пасфилд выделяет несколько векторов атак на смарт-контракты DeFi-протоколов.
«Первое: отсутствующая ивент эмиссия, когда функции не генерируют события после изменения критической переменной. Отсутствие блокировки версии компилятора позволяет генерировать разные байт-коды для одного и того же кода. Кроме того, неправильная проверка ввода может привести к тому, что контракт получит недопустимый ввод», — говорит эксперт.
Даже имея хороший опыт написания несвязанных с блокчейном приложений, некоторые разработчики не учитывают нюансы разработки смарт-контрактов при написании dApp. Одним из таких нюансов может быть неучет атак повторного входа: в них контракт A вызывает контракт B перед обновлением его состояния. Когда это происходит, у B есть шанс повторить предыдущую операцию, как если бы обстоятельства — например, баланс ETH у A — не изменились.
«Другой тип атак касается полагания на управляемые данные для внутренней логики. У майнеров и майнинговых пулов достаточно мощности для изменения хэша блока, временной метки и порядка транзакций, что создает ненадежные источники случайности. Использование пулов ликвидности AMM в качестве оракулов цен также очень проблематично, поскольку ими легко манипулировать с помощью дешевых мгновенных кредитов, которые могут сбросить весь протокол. Из-за этого переход к децентрализованным оракулам и источникам случайности критично важен для развития отрасли», — подчеркивает Пасфилд.
Еще одной распространенной проблемой является использование сторонних зависимостей. Они могут быть модифицированы, что меняет поведение контракта без предварительного уведомления. На сегодняшний день наиболее распространенной уязвимостью является централизация, которая, вдобавок к риску rug pulls, делает кражу средств такой же простой, как получение доступа к нескольким плохо управляемым закрытым ключам.
Читайте также: Объем взлома DeFi за I квартал обогнал показатели 2021 года
О конкретных проблемах, связанных с централизацией
Как говорит Брайан Пасфилд, централизация создает единые точки отказа, открывая несколько векторов атак. Самый очевидный из них — это rug pull. Неправильно управляемые ключи могут оказаться в руках хакеров, которые затем могут использовать их для кражи средств. Владельцы ключей могут потерять их или умереть, оставив средства недоступными навсегда.
«Проблемы централизации не всегда очевидны. Аудиты необходимы для выявления самого широкого спектра возможных уязвимостей, и, к сожалению, на большинстве DeFi-платформ комплексные аудиты не предусмотрены. Ответом на централизацию является, конечно же, децентрализация. DAO очень важны для достижения этой цели, но структура протокола может сделать вмешательство централизованных объектов абсолютно ненужным», — комментирует эксперт.
О проведении аудита смарт-контрактов
Проведение аудита смарт-контракта позволяет выявить и устранить все уязвимости. Процедуру можно разделить на несколько этапов. Сторона, заказавшая аудит, описывает детали процесса: какие контракты будут изучены аудиторской фирмой и до какой степени. В идеале надо провести аудит всего протокола, а не только нескольких контрактов, но всегда есть возможность подойти к этому стратегически.
«Эксперты аудиторской фирмы будут изучать кодовую базу, использовать инструменты автоматического тестирования для выявления неисправных компонентов, применять широкий спектр известных эксплойтов, которые могут появиться в результате дефектов кода, и вручную проверять наличие уязвимостей. В результате создается репорт, на основании которого команда будет действовать, исправляя уязвимости, начиная с наиболее критичных», — говорит Брайан Пасфилд.
После повторной отправки кода аудиторская фирма еще раз проверит и протестирует все ранее выявленные проблемы, а также найдет новые уязвимости. В идеале проект должен повторять этот процесс до тех пор, пока аудиторская фирма не перестанет находить какие-либо уязвимости.
Важно понимать, что аудит должен проводиться именно так. Ввиду высокой стоимости каждого раунда аудита, нередко можно увидеть, как люди пытаются срезать углы, чтобы сократить расходы. Следовательно, утверждение, что что-то было «проверено», во многих случаях следует воспринимать с нюансами.
О защите средств от злоумышленников
Брайан Пасфилд дает несколько советов по защите средств от удаленных и прямых атак мошенников, которым стоит следовать при использовании криптовалюты.
«Прежде всего, ваши приватные ключи — это ваше самое большое сокровище. Никогда не делитесь ими ни с кем и, если можете, храните их на хардвер кошельке. То же самое относится и к вашей seed-фразе, так как это все тот же приватный ключ, просто в другом формате. Внимательно проверяйте транзакции перед их осуществлением, потому что иначе вы можете случайно отправить свои токены мошеннику», — говорит эксперт.
Также пользователи должны понимать, во что они инвестируют: от токеномики до репутации команды. Следует остерегаться мем-коинов. Они создаются пачками каждый день, и абсолютное большинство из них — это rug pull. И последнее, но не менее важное: использовать только те платформы, которые недавно были проверены авторитетными фирмами.
«Ищите DeFi-платформы с опытными командами, хорошей репутацией, серьезным подходом к безопасности и недавними успешными аудитами. Двойные аудиты — это золотой стандарт», — рекомендует Брайан Пасфилд.
Здесь мы рассказывали, как защитить криптовалюту от хакеров
Согласно правилам Trust Project, данная статья отражает точку зрения автора и может не совпадать с мнением редакции BeInCrypto. Политика BeInCrypto — освещать любые события беспристрастно и соблюдать высочайшие стандарты журналистики. BeInCrypto рекомендует читателям самостоятельно проверять информацию и консультироваться со специалистом, прежде чем принимать любые финансовые решения на основе этого контента. Также обратите внимание, что наши «Условия и положения», «Политика конфиденциальности» и «Дисклеймеры» были обновлены