Анализ уязвимостей безопасности в Децентрализованных финансах: руководство по предотвращению Срочных займов, манипуляций с ценами и атак повторного входа

robot
Генерация тезисов в процессе

Общие уязвимости безопасности DeFi и меры предосторожности

Недавно один из экспертов по безопасности провел для членов сообщества урок по безопасности Децентрализованных финансов, в котором рассмотрел重大安全事件, произошедшие в Web3 индустрии за последний год, обсудил причины их возникновения и способы их предотвращения, обобщил распространенные уязвимости смарт-контрактов и меры по их предотвращению, а также дал несколько рекомендаций по безопасности для проектных команд и пользователей.

Распространенные типы уязвимостей DeFi в основном включают в себя флеш-кредиты, манипуляцию ценами, проблемы с правами функции, произвольные внешние вызовы, проблемы с функцией fallback, уязвимости бизнес-логики, утечку приватных ключей, повторные атаки и т.д. Ниже мы подробно рассмотрим три типа: флеш-кредиты, манипуляция ценами и повторные атаки.

Мгновенный кредит

Хотя闪电贷 является инновацией в области Децентрализованные финансы, его также часто используют хакеры:

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

В последние два года многие проекты Децентрализованные финансы столкнулись с проблемами из-за闪电贷. Например, некоторые проекты выдают вознаграждения в зависимости от объема владения, но злоумышленники используют闪电贷 для покупки большого количества токенов, чтобы получить большую часть вознаграждения. Также проекты, рассчитывающие цену через токены, могут быть подвержены влиянию价格 от闪电贷. Команды проектов должны быть к этому бдительны.

Манипуляция ценами

Проблема манипуляций с ценами тесно связана с мгновенными займами, в основном существует два типа:

  1. При расчете цены используются данные третьих сторон, но неправильное использование или отсутствие проверки приводит к злонамеренному манипулированию ценами.
  2. Используйте баланс токенов определенных адресов в качестве вычисляемой переменной, при этом эти балансы могут быть временно увеличены или уменьшены.

Атака повторного входа

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

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

Формы атак повторного входа разнообразны и могут затрагивать несколько функций или контрактов. Для предотвращения повторного входа следует обратить внимание на:

  1. Не только предотвращает повторный вход одной функции
  2. Следуйте модели Checks-Effects-Interactions при кодировании
  3. Используйте проверенный модификатор предотвращения повторного входа

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

Рекомендации по безопасности для проектов

  1. Разработка контрактов следует лучшим практикам безопасности
  2. Контракты могут быть обновлены и приостановлены, чтобы вовремя реагировать на атаки
  3. Используйте временные замки, чтобы оставить время для выявления и реагирования на риски
  4. Увеличить инвестиции в безопасность, создать完善ную систему безопасности
  5. Повышение безопасности всех сотрудников
  6. Предотвращение внутреннего злоупотребления, повышение эффективности и усиление контроля рисков
  7. Осторожно вводите третьи стороны, по умолчанию как верхнее, так и нижнее звено не безопасны.

Как пользователю определить безопасность смарт-контракта

  1. Является ли контракт открытым исходным кодом
  2. Использует ли владелец децентрализованную мультиподпись
  3. Проверьте существующие сделки по контракту
  4. Можно ли обновлять контракт, есть ли таймлок
  5. Принято ли аудит от нескольких организаций, не слишком ли велико право владельца?
  6. Обратите внимание на надежность оракулов

В общем, в области Децентрализованных финансов проектные команды и пользователи должны оставаться на高度 бдительности и принимать многоуровневые меры безопасности, чтобы эффективно снизить риски.

Cobo Децентрализованные финансы безопасность курса (часть 2): Часто встречающиеся уязвимости безопасности DeFi и меры предосторожности

DEFI8.89%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 3
  • Поделиться
комментарий
0/400
MidnightSnapHuntervip
· 07-25 08:52
Я уже много раз видел такие уязвимости...
Посмотреть ОригиналОтветить0
GhostWalletSleuthvip
· 07-25 08:51
Уязвимости всегда будут кошкой и мышкой между командой проекта и Хакером.
Посмотреть ОригиналОтветить0
FlatlineTradervip
· 07-25 08:45
Старые проекты уже подвергались повторным входам.
Посмотреть ОригиналОтветить0
  • Закрепить