Semantic-Aware Fuzzing: An Empirical Framework for LLM-Guided, Reasoning-Driven Input Mutation
2509.19533v1
cs.SE, cs.AI, cs.CR
2025-09-26
Авторы:
Mengdi Lu, Steven Ding, Furkan Alaca, Philippe Charland
Резюме на русском
## Контекст
Многочисленные проблемы безопасности в системах, таких как Интернет вещей (IoT), мобильные платформы и автоматизированные системы, становятся все более критичными. Традиционные мутационные методы тестирования, такие как fuzzing, эффективно исследуют код, но часто ограничиваются мутациями в пределах байтов или битов, не учитывая семантическую логику и синтаксические зависимости. Автоматизированные инструменты, такие как AFL++, используют словари, грамматики и гибридные техники для применения структурных ограничений, но не полностью раскрывают глубинные семантические зависимости и отраслевые требования. С другой стороны, мощные технологии тестирования, основанные на технологиях ИИ и глубокого обучения, такие как модели Больших Языковых Моделей (LLMs), могут использоваться для семантического понимания структуры информации, предлагая более эффективные и точные мутации, что повышает качество тестирования. Однако отсутствие "правильного" метода мутации делает применение супервизированного обучения нецелесообразным, что приводит к заинтересованности в использовании нескольких способов мутации на основе заданий. В нашей работе мы сочетаем возможности LLMs с традиционным методом fuzzing, ориентируясь на ассинхронность и различные специфики тестирования.
## Метод
Предлагаемая микросервисная архитектура объединяет методы тестирования fuzzing с моделями Больших Языковых Моделей (LLMs), используя структуру открытого фреймворка AFL++. Мы используем техники few-shot learning для обучения моделей LLM в режиме предварительной подготовки к работе. В качестве моделей используются Deepseek-r1-Distill-Llama-70B, Llama3.3, QwQ-32B и Gemma3. Мы разработали новый алгоритм, который включает модель LLM в цикл мутации, что позволяет ей анализировать интерфейсную логику, выявлять зависимости между полями и создавать высококачественные инструменты fuzzing. Таким образом, мы стремимся решить несколько задач: (R1) обеспечить интеграцию LLMs в модель fuzzing, (R2) исследовать качество мутаций, полученных с помощью few-shot способа, (R3) проверить влияние преобразований на выборку входных данных, а (R4) протестировать конкретные модели LLM для использования в таких средах.
## Результаты
Мы проводили эксперименты с помощью 4 моделей LLM, используя протоколы запросов и анализ функционального поведения. Для оценки качества мутаций мы применяли метрики сложности и выявляли значимость мутаций в реальных сценариях. Мы демонстрируем, что Deepseek-r1-Distill-Llama-70B показал высокую эффективность в создании высококачественных мутаций, лучше отражающих слож
Abstract
Security vulnerabilities in Internet-of-Things devices, mobile platforms, and
autonomous systems remain critical. Traditional mutation-based fuzzers -- while
effectively explore code paths -- primarily perform byte- or bit-level edits
without semantic reasoning. Coverage-guided tools such as AFL++ use
dictionaries, grammars, and splicing heuristics to impose shallow structural
constraints, leaving deeper protocol logic, inter-field dependencies, and
domain-specific semantics unaddressed. Conversely, reasoning-capable large
language models (LLMs) can leverage pretraining knowledge to understand input
formats, respect complex constraints, and propose targeted mutations, much like
an experienced reverse engineer or testing expert. However, lacking ground
truth for "correct" mutation reasoning makes supervised fine-tuning
impractical, motivating explorations of off-the-shelf LLMs via prompt-based
few-shot learning. To bridge this gap, we present an open-source microservices
framework that integrates reasoning LLMs with AFL++ on Google's FuzzBench,
tackling asynchronous execution and divergent hardware demands (GPU- vs.
CPU-intensive) of LLMs and fuzzers. We evaluate four research questions: (R1)
How can reasoning LLMs be integrated into the fuzzing mutation loop? (R2) Do
few-shot prompts yield higher-quality mutations than zero-shot? (R3) Can prompt
engineering with off-the-shelf models improve fuzzing directly? and (R4) Which
open-source reasoning LLMs perform best under prompt-only conditions?
Experiments with Llama3.3, Deepseek-r1-Distill-Llama-70B, QwQ-32B, and Gemma3
highlight Deepseek as the most promising. Mutation effectiveness depends more
on prompt complexity and model choice than shot count. Response latency and
throughput bottlenecks remain key obstacles, offering directions for future
work.
Ссылки и действия
Дополнительные ресурсы: