Bitget App
Торгуйте разумнее
Купить криптоРынкиТорговляФьючерсыEarnПлощадкаПодробнее
Исследование MoveBit от BitsLab|Belobog: фреймворк для фузз-тестирования Move, ориентированный на реальные атаки

Исследование MoveBit от BitsLab|Belobog: фреймворк для фузз-тестирования Move, ориентированный на реальные атаки

AIcoinAIcoin2025/12/16 09:34
Показать оригинал
Автор:AIcoin
MoveBit — это компания, специализирующаяся на безопасности блокчейнов в экосистеме Move, которая первой применила формальную верификацию, чтобы сделать экосистему Move самой безопасной Web3-экосистемой.

Автор: BitsLab

Move как язык, который нельзя игнорировать Web3-разработчикам, отличается строгой типизацией и семантикой ресурсов, что делает его крайне «жёстким» в вопросах владения активами, незаконных переводов и гонок данных.

Экосистемы Sui, Aptos и другие размещают всё больше ключевых активов и основных протоколов на Move именно благодаря его основным характеристикам, которые позволяют создавать более безопасные и менее рискованные смарт-контракты.

Однако наш многолетний опыт аудита и практики атак и защиты показывает: значительная часть сложных проблем возникает не в очевидных местах вроде «синтаксических ошибок» или «несовпадения типов», а на более сложном и реальном уровне системы — при межмодульных взаимодействиях, предположениях о правах доступа, границах конечных автоматов и в тех последовательностях вызовов, где каждый шаг по отдельности кажется разумным, но их комбинация может быть использована в атаке.

Именно поэтому, несмотря на более совершенные парадигмы безопасности языка Move, в его экосистеме всё же происходили значимые атаки. Очевидно, что исследования безопасности Move должны идти дальше.

Мы выявили ключевую проблему: в языке Move отсутствует эффективный инструмент для fuzzing-тестирования. Из-за более строгих ограничений Move традиционный fuzzing смарт-контрактов сталкивается с серьёзной трудностью: генерация «типизированных» и «семантически достижимых» последовательностей транзакций крайне сложна. Если входные данные недостаточно точны, вызов не удаётся; если вызов невозможен, невозможно покрыть глубокие ветвления и достичь критических состояний, а значит, легко упустить действительно уязвимые пути.

Исходя из этой давней проблемы, мы совместно с университетской исследовательской группой завершили и опубликовали исследование:

«Belobog: Move Language Fuzzing Framework For Real-World Smart Contracts»

arXiv:2512.02918 (препринт)

Ссылка на статью:

В настоящее время статья опубликована на arXiv как препринт, что позволяет сообществу быстрее ознакомиться с результатами и дать обратную связь. Мы подали работу на рассмотрение в PLDI’26 и ожидаем процесса peer review. После подтверждения результатов и завершения рецензирования мы незамедлительно сообщим о дальнейших новостях.

Как сделать так, чтобы Fuzzing действительно «запускался» на Move: от случайных попыток к типизированному управлению

Ключевая идея Belobog проста: если типовая система Move — это его основное ограничение, то и fuzzing должен использовать типы как навигатор, а не как препятствие.

Традиционные подходы часто полагаются на случайную генерацию и мутацию, но в Move это быстро приводит к большому количеству невалидных образцов: несоответствие типов, недостижимость ресурсов, невозможность корректно сформировать параметры, тупиковые места в цепочке вызовов — в итоге вы получаете не покрытие тестами, а кучу «провалов на старте».

Метод Belobog больше похож на то, что Fuzzer получает «карту». Исходя из типовой системы Move, строится type graph на основе семантики типов для целевого контракта, а затем на его основе генерируются или мутируются последовательности транзакций. Иными словами, это не слепое соединение вызовов, а построение более разумных, исполнимых и способных глубже проникать в состояние системы комбинаций вызовов по типовым связям.

Для исследований в области безопасности это изменение приносит не «более изощрённые алгоритмы», а очень простую, но ключевую выгоду:

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

В условиях сложных ограничений: Belobog внедряет Concolic Execution, чтобы «открыть дверь»

В реальных Move-контрактах ключевая логика часто окружена множеством проверок, утверждений и ограничений. Если полагаться только на традиционные мутации, легко застрять у порога: условия не выполняются, в ветвления не попасть, до нужного состояния не дойти.

Чтобы решить эту проблему, Belobog дополнительно реализует concolic execution (гибрид конкретного исполнения и символьного вывода). Проще говоря:

С одной стороны, он сохраняет конкретное исполнение, с другой — использует символьный вывод, чтобы целенаправленно приближаться к условиям ветвлений, тем самым эффективнее проходя сложные проверки и углубляя покрытие.

Это особенно важно для экосистемы Move, ведь «чувство безопасности» Move-контрактов часто строится на многоуровневых ограничениях, а настоящие проблемы обычно скрываются в их пересечениях. Задача Belobog — продвинуть тестирование ближе к этим «щелям».

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

Мы не хотим, чтобы подобные работы ограничивались «запуском демо». Оценка Belobog проводится на реальных проектах и реальных уязвимостях. Согласно экспериментальным результатам из статьи: Belobog был протестирован на 109 реальных проектах Move смарт-контрактов, и результаты показали, что Belobog способен обнаружить 100% критических уязвимостей и 79% крупных уязвимостей, подтверждённых ручным аудитом специалистов по безопасности.

Более того, Belobog способен воспроизводить полноценные атаки (full exploits) на реальных событиях в сети без использования априорных знаний об уязвимостях. Это особенно ценно, ведь в реальных атаках злоумышленники добиваются успеха не за счёт «ошибки в одной функции», а благодаря полному пути и эволюции состояния.

Смысл этой работы — не просто «создать инструмент»

Эта статья заслуживает внимания не только потому, что предлагает новую платформу, но и потому, что отражает более прагматичный подход: абстрагировать передовой опыт безопасности в воспроизводимые методы и реализовать их в проверяемых инженерных решениях.

Мы считаем, что ценность Belobog не в том, что это «ещё один Fuzzer», а в том, что он делает fuzzing на Move более приближённым к реальности — способен запускаться, проникать глубже и лучше соответствовать реальным путям атаки. Belobog — это не закрытый инструмент для узких специалистов, а developer-friendly фреймворк: он максимально снижает порог входа, позволяя разработчикам интегрировать тестирование безопасности в привычный рабочий процесс, а не превращать fuzzing в разовую или постфактум задачу.

Мы также выпустим Belobog в open source, чтобы он стал инфраструктурой, которую сообщество сможет совместно использовать, расширять и развивать, а не оставался экспериментальным проектом на уровне инструмента.

Статья (препринт):

(Данная работа также подана на рассмотрение в PLDI’26, ожидает peer review.)

О MoveBit

MoveBit (莫比安全), дочерний бренд BitsLab, — это компания, специализирующаяся на безопасности блокчейнов в экосистеме Move, которая первой применила формальную верификацию, чтобы сделать экосистему Move самой безопасной Web3-экосистемой. MoveBit уже сотрудничает с рядом известных мировых проектов и предоставляет партнёрам комплексные услуги по аудиту безопасности. Команда MoveBit состоит из ведущих экспертов в области безопасности из академической и корпоративной среды с 10-летним опытом, которые публиковали исследования на ведущих международных конференциях по безопасности, таких как NDSS, CCS. Кроме того, они являются одними из первых участников экосистемы Move и совместно с разработчиками Move разрабатывают стандарты для безопасных Move-приложений.

0
0

Дисклеймер: содержание этой статьи отражает исключительно мнение автора и не представляет платформу в каком-либо качестве. Данная статья не должна являться ориентиром при принятии инвестиционных решений.

PoolX: вносите активы и получайте новые токены.
APR до 12%. Аирдропы новых токенов.
Внести!
© 2025 Bitget