Как трехфазный детектор идентифицирует уязвимости интеллектуального контракта

Как трехфазный детектор идентифицирует уязвимости интеллектуального контракта

16 июля 2025 г.

Аннотация и 1. Введение

  1. Фон

    2.1 Ethereum Primer

    2.2 Проверка адреса белого списка

    2.3 Анализ Taint по интеллектуальным контрактам и 2,4 модели угрозы

  2. Мотивирующий пример и проблемы

    3.1 Мотивирующий пример

    3.2 Проблемы

    3.3 Ограничения существующих инструментов

  3. Дизайн Avverifier и 4.1 Обзор

    4.2 обозначения

    4.3 Компонент № 1: График кода

    4.4 Компонент № 2: симулятор EVM

    4.5 Компонент № 3: детектор уязвимости

  4. Оценка

    5.1 Экспериментальная настройка и исследовательские вопросы

    5.2 RQ1: эффективность и эффективность

    5.3 RQ2: характеристики уязвимых контрактов реального мира

    5.4 RQ3: обнаружение в реальном времени

  5. Дискуссия

    6.1 Угрозы для достоверности и 6.2 ограничения

    6.3 Этическое рассмотрение

  6. Связанная работа

  7. Заключение, доступность и ссылки

4.5 Компонент № 3: детектор уязвимости

На основании информации, собранной у симулятора, то есть, F и CTCT, детектор способен определить, является ли контракт уязвим. В частности, как показано на рис. 1, детектор риска состоит из трех последовательных фаз, соответствующих трем принципам, упомянутым в §3.1 (П1кP3) Мы подробно описываем эти три этапа в следующем.

4.5.1 Фаза I: проверка белого списка

Обратите внимание, что первые два шага возвращаютсяИстинный, указывая на проверку в белом списке неприменима или проводится нормально. Другими словами, только государства сЛОЖЬВозврат хранятся и отправляются на чек на фазе II.

4.5.2 Фаза II: Проверка внешнего вызова

Точно так же, чтобы избежать бессмысленного потребления ресурсов, только состояния, которые соответствуютИстинныйВозвратное значение передается в третью фазу проверки. Мы относимся к тем, что сЛОЖЬвозвращаемая стоимость как бесполезные уязвимые контракты.

4.5.3 Фаза III: модификации состояния после вызовов

4.5.4. Уязвимые контракты.

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

Состоянием анализа, передаваемых из симулятора, детектор может получить набор кортежей, состоящих из потенциальных жертв:

Через трехфазное обнаружение осталось только ценные и уязвимые состояния:

Если у контракта есть состояние, которое соответствует кортежу вОстался, договор уязвим к уязвимости проверки адреса.

Авторы:

(1) Tianle Sun, Университет науки и техники Хуажонга;

(2) Ningyu HE, Peking University;

(3) Цзян Сяо, Университет науки и техники Хуажонга;

(4) Yinliang Yue, лаборатория Zhongguancun;

(5) Сяпу Луо, Гонконгский политехнический университет;

(6) Хаою Ван, Университет науки и техники Хуажонга.


Эта статья естьДоступно на ArxivПод CC по лицензии 4.0.


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE