Detecting Functional Bugs in Smart Contract through LLM-powered and Bug-Oriented Compose Analysis
Binbin Zhao, Xingshuang Lin, Yuan Tian, Saman Zonouz, Na Ruan, Jiliang Li, Raheem Beyah, Shouling Ji
2025
Разбор статьи ч.4
Оценка нахождения 0-day уязвимостей
6й датасет. Как показано в рисунке 1, PromFuzz успешно находит 30 багов нулевого дня в 6 DeFi-проектах. О них сообщили соответствующим разработчикам, и 24 из них уже получили CVE ID. Общая рыночная стоимость DeFi-проектов, затронутых этими багами, оценивается примерно в $18.2 миллиарда.
Далее авторы приводят два сценария взлома, которые были обнаружены с помощью PromFuzz, один из них реализует рискованный первый депозит, а второй манипуляцию ценой оракула. Обе уязвимости тянут на отдельные небольшие посты, так что я пропущу.
Послесловие
Хотя PromFuzz достигает значительных результатов в обнаружении функциональных багов в смарт-контрактах, у него есть несколько ограничений.
Во-первых, некоторые пропущенные баги (false negatives) возникают из-за неточностей при извлечении критических переменных и присущей случайности анализа на основе LLM. Несмотря на эти проблемы, PromFuzz всё равно превосходит существующие методы в выявлении более сложных функциональных багов.
Кроме того, анализ багов на данный момент ориентирован на четыре основные категории с десятью подкатегориями, что может приводить к пропуску некоторых более сложных типов багов. В будущем авторы планируют дообучить специализированную LLM для более точного обнаружения функциональных багов в смарт-контрактах и разработать новые промпты, чтобы охватить более широкий спектр категорий багов, тем самым повысив полноту PromFuzz.
Более того, поскольку анализ частично опирается на ItyFuzz, который изначально не предназначен для функциональных багов и не использует информацию о состоянии контракта в полной мере, будущие усилия будут направлены на более тесную интеграцию LLM с динамическими методами анализа. Это позволит эффективнее и более полно использовать данные о состоянии контракта, чтобы находить ещё более глубокие функциональные баги.
Мои впечатления
В целом, это хорошая динамика для отрасли, такие исследования и разработки однозначно пойдут на пользу всему сообществу. На данный момент наверное немного замороченно ставить эту систему на свою машину (авторы об этом тоже пишут в начале), но сама структурированность подхода может только восхищать. Даже если не внедрять в свой рабочий процесс PromFuzz полностью, то использование отдельных частей может помочь, написание инвариантов на данный момент краеугольный камень в работе любого аудитора. Потому что это и непросто, и может давать потрясающие результаты одновременно. В любом случае, буду ждать продолжения
Post #22
182

- ❤ 3