Иссл едование MoveBit от BitsLab | Belobog: фреймворк для фузз-тестирования Move, ориентированный на реальные атаки
Автор: 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 "картой". Он строит type graph на основе типовой системы Move для целевого контракта, а затем генерирует или мутирует последовательности транзакций, опираясь на эту карту. Иными словами, он не слепо соединяет вызовы, а строит более логичные, исполнимые и способные проникать глубже в состояние системы комбинации вызовов, следуя типовым связям.
Для исследований безопасности это означает не "более навороченный алгоритм", а очень практичные и важные преимущества:
Больше валидных образцов, выше эффективность исследования, больше шансов достичь тех глубоких путей, где часто скрываются реальные уязвимости.
Работа с комплексными ограничениями: Belobog внедряет Concolic Execution, чтобы "открыть двери"
В реальных Move-контрактах ключевая логика часто окружена множеством проверок, утверждений и ограничений. Если полагаться только на традиционную мутацию, можно бесконечно "биться в дверь": условия не выполняются, ветвления недостижимы, состояния недостижимы.
Для решения этой проблемы Belobog реализует concolic execution (гибрид конкретного исполнения и символьного вывода). Проще говоря:
С одной стороны, он сохраняет "работоспособное" конкретное исполнение, с другой — использует символьный вывод для более целенаправленного приближения к условиям ветвлений, что позволяет эффективнее проходить сложные проверки и углублять покрытие.
Это особенно важно для экосистемы Move, ведь "безопасность" Move-контрактов часто строится на многоуровневых ограничениях, а настоящие проблемы прячутся в их пересечениях. Задача Belobog — продвинуть тестирование именно к этим "щелям".
Ориентация на реальный мир: не просто запуск demo, а приближение к реальным путям атаки
Мы не хотим, чтобы подобные разработки ограничивались "работающим демо". Оценка Belobog проводится на реальных проектах и реальных уязвимостях. Согласно экспериментам из статьи: Belobog был протестирован на 109 реальных проектах Move смарт-контрактов, и результаты показали, что Belobog обнаруживает 100% Critical-уязвимостей и 79% Major-уязвимостей, подтверждённых ручным аудитом специалистов по безопасности.
Более того: 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-приложений.
Дисклеймер: содержание этой статьи отражает исключительно мнение автора и не представляет платформу в каком-либо качестве. Данная статья не должна являться ориентиром при принятии инвестиционных решений.


