0

AI-Augmented Compiler Fuzzing Framework

A greybox fuzzing framework integrating AFL++ and LLMs to analyze compiler optimizations.

Overview

As a researcher at ARC Laboratory, I’m developing an experimental greybox fuzzing framework that uses AFL++ and Clang to analyze how compiler optimizations transform program structure. By instrumenting compiled binaries, the tool identifies patterns in optimization-induced code changes.

AI Integration

  • LLM-Driven Mutations: Leverages large language models to generate targeted code mutations that explore edge-case optimization paths
  • Pipeline Fusion: Integrates AI-generated snippets directly into the AFL++ mutation loop for smarter, context-aware fuzzing

Key Features

  • Clang Instrumentation: Hooks into the compilation pipeline to record optimization passes
  • Fuzzing Harness: Uses AFL++’s coverage feedback to guide input generation
  • Structural Analysis: Detects recurring transformation patterns across multiple compilation runs
  • AI Mutation Strategy: Employs GPT-based code suggestions to uncover hidden optimization bugs

Built With

  • Python 3.10+
  • Clang & LLVM tooling
  • AFL++ fuzzing engine
  • OpenAI GPT API (or local LLM)

Impact & Next Steps

  • Early experiments show improved coverage of optimization-specific branches
  • Planning to extend to multi-optimization scenario testing and integrate differential fuzzing across compiler versions