Нещодавно у відомому проекті цифрових колекцій було виявлено два серйозні вразливості в смартконтрактах, що викликало широкий інтерес у галузі. Команда безпеки під час аналізу контрактів цього проекту виявила ці потенційні ризики.
Перший вразливість пов'язана з механізмом повернення коштів. Функція повернення коштів у контракті використовує циклічний підхід для повернення коштів користувачам, але цей дизайн має суттєвий недолік. Якщо адреса, яка отримує повернення коштів, є зловмисним контрактом, вона може відмовитися від прийняття і привести до невдачі транзакції, що вплине на процес повернення коштів для всіх інших користувачів. На щастя, ця вразливість не була фактично використана.
!
У зв'язку з такими ситуаціями, експерти з безпеки радять сторонам проекту вжити такі заходи для забезпечення безпеки повернення коштів:
Обмеження, що тільки звичайні користувачі можуть брати участь у проекті
Використовуйте ERC20 токени, такі як WETH, замість рідних активів
Розробити механізм, який дозволяє користувачам активно запитувати повернення коштів, щоб уникнути масових повернень.
Другий вектор вразливості виникає через логічну помилку в коді. У функції витягання коштів проекту є умова порівняння, яка мала б порівнювати дві певні змінні, але помилково використовує іншу змінну для порівняння. Це призводить до того, що умова ніколи не може бути виконана, і команда проекту не може витягти активи з контракту. За оцінками, наразі понад 34 мільйони доларів активів назавжди заблоковані в контракті.
!
Ця подія ще раз підкреслює, що навіть у відомих проєктах можуть виникати базові помилки. Вона нагадує нам, що під час розробки всебічні тестові випадки та базове усвідомлення безпеки є незамінними. Хоча в сфері DeFi безпековий аудит став звичайною практикою, у проєктах цифрових колекцій цей етап, здається, все ще ігнорується. Ці величезні втрати є прямим наслідком відсутності безпекового аудиту.
Ця подія повинна стати попередженням для всієї галузі, нагадуючи всім учасникам звернути увагу на безпеку смартконтрактів, посилити аудит коду та процеси тестування, щоб запобігти повторенню подібних значних втрат.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
13 лайків
Нагородити
13
4
Поділіться
Прокоментувати
0/400
HodlKumamon
· 3год тому
Вершина, ймовірність логічної помилки при вилученні користувача становить сто відсотків.
Переглянути оригіналвідповісти на0
shadowy_supercoder
· 10год тому
Що роблять аудиторські компанії?
Переглянути оригіналвідповісти на0
BlockchainWorker
· 07-20 20:31
смартконтракти знову зазнали невдачі? Чекаємо на події
Відомий проект цифрових колекційних предметів, смартконтракти якого мали вразливість, призвели до блокування 34 мільйонів доларів.
Нещодавно у відомому проекті цифрових колекцій було виявлено два серйозні вразливості в смартконтрактах, що викликало широкий інтерес у галузі. Команда безпеки під час аналізу контрактів цього проекту виявила ці потенційні ризики.
Перший вразливість пов'язана з механізмом повернення коштів. Функція повернення коштів у контракті використовує циклічний підхід для повернення коштів користувачам, але цей дизайн має суттєвий недолік. Якщо адреса, яка отримує повернення коштів, є зловмисним контрактом, вона може відмовитися від прийняття і привести до невдачі транзакції, що вплине на процес повернення коштів для всіх інших користувачів. На щастя, ця вразливість не була фактично використана.
!
У зв'язку з такими ситуаціями, експерти з безпеки радять сторонам проекту вжити такі заходи для забезпечення безпеки повернення коштів:
Другий вектор вразливості виникає через логічну помилку в коді. У функції витягання коштів проекту є умова порівняння, яка мала б порівнювати дві певні змінні, але помилково використовує іншу змінну для порівняння. Це призводить до того, що умова ніколи не може бути виконана, і команда проекту не може витягти активи з контракту. За оцінками, наразі понад 34 мільйони доларів активів назавжди заблоковані в контракті.
!
Ця подія ще раз підкреслює, що навіть у відомих проєктах можуть виникати базові помилки. Вона нагадує нам, що під час розробки всебічні тестові випадки та базове усвідомлення безпеки є незамінними. Хоча в сфері DeFi безпековий аудит став звичайною практикою, у проєктах цифрових колекцій цей етап, здається, все ще ігнорується. Ці величезні втрати є прямим наслідком відсутності безпекового аудиту.
Ця подія повинна стати попередженням для всієї галузі, нагадуючи всім учасникам звернути увагу на безпеку смартконтрактів, посилити аудит коду та процеси тестування, щоб запобігти повторенню подібних значних втрат.
!