Tuesday, April 08, 2025

Нечеловеческий анализ смарт-контрактов

Смарт-контракты являются фундаментальными столпами блокчейна, играя важную роль в содействии различным бизнес-транзакциям. Однако эти смарт-контракты уязвимы для эксплуатируемых ошибок, которые могут привести к значительным денежным потерям. Недавнее исследование показывает, что более 80% этих эксплуатируемых ошибок, которые в основном являются функциональными ошибками, могут ускользнуть от обнаружения текущими инструментами. Автоматическое выявление функциональных ошибок в смарт-контрактах представляет собой сложности с нескольких точек зрения. Основная проблема заключается в значительном разрыве между пониманием высокоуровневой логики бизнес-модели и проверкой низкоуровневых реализаций в смарт-контрактах. Кроме того, выявление глубоко укоренившихся функциональных ошибок в смарт-контрактах требует автоматизированной генерации эффективных оракулов обнаружения на основе различных функций ошибок. Для решения этих проблем мы проектируем и внедряем PromFuzz, автоматизированную и масштабируемую систему для обнаружения функциональных ошибок в смарт-контрактах. В PromFuzz мы сначала предлагаем новую структуру анализа на основе Large Language Model (LLM), которая использует стратегию двухагентной оперативной инженерии для выявления потенциально уязвимых функций для дальнейшего изучения. Затем мы реализуем двухэтапный подход связывания, который фокусируется на создании инвариантных контролеров, которые используют логическую информацию, извлеченную из потенциально уязвимых функций. Наконец, мы разрабатываем ориентированный на ошибки механизм фаззинга, который сопоставляет логическую информацию из высокоуровневой бизнес-модели с низкоуровневыми реализациями смарт-контрактов и выполняет ориентированный на ошибки фаззинг на целевых функциях. Мы оцениваем PromFuzz с 4 точек зрения на 6 наборах данных наземной истины и сравниваем его с несколькими современными методами. Результаты показывают, что PromFuzz достигает 86,96% отзыва и 93,02% F1-оценки при обнаружении функциональных ошибок, что означает улучшение как минимум на 50% по обеим показателям по сравнению с передовыми методами. Более того, мы проводим углубленный анализ 6 реальных проектов DeFi и обнаруживаем 30 ошибок нулевого дня. Наши дальнейшие исследования случаев, рискованной ошибки первого депозита и ошибки манипуляции ценовым оракулом AMM в реальных проектах DeFi, демонстрируют серьезные риски эксплуатируемых функциональных ошибок в смарт-контрактах. На сегодняшний день 24 ошибкам нулевого дня были присвоены идентификаторы CVE. Наши открытия защитили активы на общую сумму 18,2 млрд долларов от потенциальных денежных потерь. - Detecting Functional Bugs in Smart Contracts through LLM-Powered and Bug-Oriented Composite Analysis

No comments: