Децентралізовані фінанси безпеки: розкриття поширених вразливостей та стратегій захисту

robot
Генерація анотацій у процесі

Децентралізовані фінанси безпеки: поширені вразливості та заходи запобігання

Нещодавно один експерт з безпеки поділився курсом з безпеки DeFi для членів спільноти. Цей експерт переглянув значні події безпеки, з якими стикалася індустрія Web3 за останній рік, обговорив причини цих подій та способи їх запобігання, а також підсумував поширені вразливості смарт-контрактів та заходи запобігання, водночас надавши деякі рекомендації з безпеки для проектів та звичайних користувачів.

Cobo Децентралізовані фінанси безпеки (частина 2): Звичайні безпекові вразливості в DeFi та їх запобігання

Загальні типи вразливостей у Децентралізованих фінансах

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

Швидкий кредит

Хоча блискавичні позики є інновацією в Децентралізованих фінансах, їх також використовують хакери для атак. Зазвичай зловмисники беруть в позикy велику суму коштів через блискавичні позики, маніпулюють цінами або атакують бізнес-логіку. Розробники повинні враховувати, чи може функціональність контракту призвести до аномалій через величезні суми коштів, або чи можливо отримати неналежну винагороду, взаємодіючи з кількома функціями в одній транзакції через великі суми.

Багато проектів DeFi здаються дуже прибутковими, але насправді здатності розробників різняться. Деякі проекти можуть мати код, куплений на стороні, і навіть якщо сам код не має вразливостей, логічно можуть виникати проблеми. Наприклад, деякі проекти виплачують винагороди залежно від кількості токенів у власності, але зловмисники можуть використати флеш-кредити для покупки великої кількості токенів, отримуючи більшу частину винагород.

маніпуляція цінами

Проблема маніпуляції цінами тісно пов'язана з миттєвими кредитами. Ці проблеми в основному виникають через те, що певні параметри, які використовуються для розрахунку ціни, можуть контролюватися користувачами. Існує два основних типи проблем:

  1. При розрахунку ціни використовуються дані з третіх сторін, але неналежне їх використання або відсутність перевірки призводить до маніпуляцій з ціною.
  2. Використання кількості токенів з деяких адрес як обчислювальної змінної, при цьому баланс токенів на цих адресах може тимчасово збільшуватися або зменшуватися.

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

Одним з основних ризиків виклику зовнішніх контрактів є те, що вони можуть перехопити контрольний потік і внести непередбачувані зміни в дані. Наприклад, у функції виведення, якщо баланс користувача встановлюється на 0 лише в кінці функції, то повторний виклик може призвести до багаторазового виведення залишку.

При вирішенні проблеми повторного входу слід звернути увагу на такі моменти:

  1. Потрібно не лише запобігти проблемі повторного входу одного функції.
  2. Дотримуйтеся моделі Checks-Effects-Interactions під час кодування.
  3. Використовуйте модифікатор захисту від повторного входу, перевірений часом.

Слід зазначити, що повторне створення колеса часто підвищує ризик помилок. Використання вже існуючих найкращих практик безпеки в галузі, як правило, є більш надійним, ніж самостійна розробка.

Рекомендації з безпеки

Рекомендації з безпеки для проекту

  1. Дотримуйтесь найкращих практик безпеки під час розробки контрактів.
  2. Реалізувати функції оновлення і призупинення контракту.
  3. Використання механізму часових замків.
  4. Збільшити інвестиції в безпеку, створити вдосконалену систему безпеки.
  5. Підвищення обізнаності всіх співробітників щодо безпеки.
  6. Запобігання внутрішнім зловживанням, одночасно підвищуючи ефективність, зміцнюючи управління ризиками.
  7. Обережно впроваджуйте сторонні послуги, проводьте безпекову перевірку для всіх учасників.

Користувач/LP як визначити безпеку смарт-контракту

  1. Перевірте, чи є контракт відкритим.
  2. Підтвердьте, чи використовує Owner децентралізований мультипідпис.
  3. Переглянути вже існуючу торгову ситуацію контракту.
  4. Досліджуйте, чи є контракт агентським, чи можна його оновити, чи є часовий замок.
  5. Підтвердіть, чи контракт проходив аудит у кількох установах, і оцініть, чи надто великі повноваження Owner.
  6. Зверніть увагу на тип оракула, який використовується в проєкті, та його надійність.

Зосередившись на цих аспектах, користувачі можуть краще оцінити безпеку проекту та знизити ризики участі.

DEFI-9.57%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 7
  • Поділіться
Прокоментувати
0/400
NFTArtisanHQvip
· 15год тому
фасцинуючий аналіз, але замість запобігання давайте обговоримо естетичну топологію експлуатацій defi...
Переглянути оригіналвідповісти на0
BloodInStreetsvip
· 15год тому
Скорочення втрат – це найнадійніший захист.
Переглянути оригіналвідповісти на0
GateUser-e51e87c7vip
· 15год тому
Вивчив безпеку, але все ж був обкрадений.
Переглянути оригіналвідповісти на0
mev_me_maybevip
· 15год тому
Ай, голова погано пам'ятає.
Переглянути оригіналвідповісти на0
ForumMiningMastervip
· 15год тому
Невдахи, перед входом на ринок, обов'язково спершу вивчіть.
Переглянути оригіналвідповісти на0
GweiTooHighvip
· 15год тому
Знову говорять про вразливості безпеки, набридло.
Переглянути оригіналвідповісти на0
CommunitySlackervip
· 16год тому
Знову наливаєш курячий бульйон
Переглянути оригіналвідповісти на0
  • Закріпити