USENIX Security '25 — Waltzz: фаззинг в среде выполнения WebAssembly с преобразованием, инвариант...
Автор: USENIX
Загружено: 2025-10-30
Просмотров: 10
Описание:
Waltzz: Фаззинг WebAssembly в среде выполнения с использованием стек-инвариантного преобразования
Линмин Чжан, Чжэцзянский университет; Бинбин Чжао, Чжэцзянский университет, Технологический институт Джорджии и Центр инженерных исследований применения, контроля и управления блокчейном (Юго-Восточный университет), Министерство образования; Цзячэн Сюй и Пэйюй Лю, Чжэцзянский университет; Цинжэ Се, Технологический институт Джорджии; Юань Тянь, Калифорнийский университет в Лос-Анджелесе; Цзяньхай Чэнь и Шоулин Цзи, Чжэцзянский университет
WebAssembly (Wasm) — это формат двоичных инструкций, предложенный крупными производителями браузеров для достижения производительности, близкой к нативной, в веб-браузерах и других платформах. По своей сути, модули Wasm должны выполняться в безопасной для памяти среде выполнения, которая выступает в качестве надежной вычислительной базы. Поэтому уязвимости безопасности в реализации среды выполнения могут иметь серьезные последствия и должны быть своевременно выявлены и устранены. Фаззинг — практичный и широко распространённый метод обнаружения ошибок в реальных программах. Однако для эффективного применения фаззинга в среде выполнения Wasm крайне важно решить две основные проблемы: (1) Wasm — это стековый язык, и среды выполнения должны проверять корректность семантики стека, что требует от фаззеров тщательного поддержания желаемой семантики стека для достижения более глубоких состояний. (2) Wasm выступает в качестве целевой области компиляции и включает сотни инструкций, что затрудняет фаззерам анализ различных комбинаций инструкций и эффективное покрытие входного пространства.
Для решения этих проблем мы разрабатываем и внедряем Waltzz — практичный фреймворк для фаззинга в режиме «серого ящика», адаптированный для среды выполнения Wasm. В частности, Waltzz предлагает концепцию инвариантного к стеку преобразования кода для сохранения соответствующей семантики стека во время фаззинга. Далее Waltzz представляет универсальный набор мутаторов, предназначенных для систематического обхода различных комбинаций инструкций с точки зрения как управления, так и потока данных. Более того, Waltzz разрабатывает алгоритм генерации на основе скелета для создания фрагментов кода, которые редко встречаются в исходном корпусе. Чтобы продемонстрировать эффективность Waltzz, мы протестировали его на семи известных средах выполнения Wasm. По сравнению с передовыми разработками, Waltzz превосходит ближайшего конкурента, обнаруживая на 12,4% больше кода даже в больших кодовых базах и обнаруживая в 1,38 раза больше уникальных ошибок. В общей сложности Waltzz обнаружил 20 новых ошибок, все из которых были подтверждены, и которым было присвоено 17 идентификаторов CVE.
С полной программой конференции USENIX Security '25 можно ознакомиться по адресу https://www.usenix.org/conference/use...
Повторяем попытку...
Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: