# Generowanie sterowników fuzzingu przez modele językowe

EN: **LLM-based fuzz driver generation** · id `fuzzdrivergen` · aliases: fuzz harness generation, fuzz target generation, LLM fuzz drivers, OSS-Fuzz-Gen, generowanie harnessów fuzzingowych

Path: [AI Atlas](https://aiatlasgraph.com/llms.txt) › [AI w cyberbezpieczeństwie](https://aiatlasgraph.com/t/cyberai.md) › [Szukanie i łatanie podatności z AI](https://aiatlasgraph.com/t/vulndiscovery.md) › [Fuzzing wspomagany modelami językowymi](https://aiatlasgraph.com/t/llmfuzzing.md) › Generowanie sterowników fuzzingu przez modele językowe

## Description

- PL: Automatyczne pisanie przez modele językowe kodu łączącego fuzzer z funkcjami biblioteki, tak by losowe dane trafiały głęboko w testowany kod.
- EN: Language models automatically writing the glue code that connects a fuzzer to a library's functions so random inputs reach deep into the tested code.

## In one sentence

- PL: Model pisze mały program-pośrednik, który pozwala automatycznie bombardować bibliotekę milionami dziwnych danych w poszukiwaniu błędów.
- EN: A model writes a small go-between program that lets a library be automatically bombarded with millions of odd inputs to find bugs.

## Problem it solves

- PL: Testy losowymi danymi znajdują wiele błędów, ale do każdej funkcji ktoś musi najpierw ręcznie napisać kod podłączenia.
- EN: Random-input testing finds many bugs, but someone must first hand-write the hook-up code for each function.

## What it does

- PL: Jak adapter do gniazdka w obcym kraju: sam niczego nie testuje, ale bez niego maszyna testująca w ogóle się nie podłączy.
- EN: Like a plug adapter abroad: it tests nothing itself, but without it the testing machine can't connect at all.

## Everyday example

- PL: Projekt otwartego kodu dostaje od automatu kilkadziesiąt nowych programów testujących dla nieprzetestowanych funkcji; jeden w ciągu doby znajduje przepełnienie pamięci.
- EN: An open-source project receives dozens of new test programs for untested functions from an automated system; within a day one finds a memory overflow.

## This concerns you if you…

- PL: utrzymujesz bibliotekę w C lub C++
- PL: chcesz zacząć fuzzing bez pisania kodu od zera
- PL: badasz agentów testujących oprogramowanie
- EN: maintain a C or C++ library
- EN: want to start fuzzing without writing code from scratch
- EN: research software-testing agents

## Keywords

OSS-Fuzz-Gen · libFuzzer · OSS-Fuzz · AFL++ · fuzz harness · code coverage · iterative prompting · AddressSanitizer

## How it works

- PL: Model dostaje sygnaturę funkcji, dokumentację i przykłady użycia z repozytorium, po czym pisze funkcję przyjmującą bajty od fuzzera i wywołującą API we właściwej kolejności. Kod kompiluje się i krótko uruchamia; błędy kompilacji i fałszywe awarie wracają do modelu w kolejnych iteracjach. Ocena to pokrycie kodu i znalezione błędy.
- EN: The model gets the function signature, documentation and repository usage examples, then writes a function that takes bytes from the fuzzer and calls the API in the right order. The code is compiled and briefly run; build errors and false crashes go back to the model for further iterations. It is judged by code coverage and bugs found.

## Limits

- PL: Modele mylą się przy API o złożonych zależnościach i kolejności wywołań, a błędny sterownik zgłasza fałszywe awarie. Generowanie na dużą skalę kosztuje dużo zapytań i czasu obliczeń. Sterownik nie wykryje błędów logicznych bez osobnych sprawdzeń.
- EN: Models stumble on APIs with complex dependencies and call ordering, and a faulty driver reports false crashes. Generating at scale costs many queries and compute time. A driver won't catch logic bugs without separate checks.

## Key terms

- PL: **fuzzing**: Testowanie programu ogromną liczbą automatycznie zmienianych danych wejściowych.
- PL: **sterownik fuzzingu**: Kod przekazujący dane od fuzzera do testowanej funkcji.
- PL: **pokrycie kodu**: Jaka część programu została wykonana w czasie testów.
- EN: **fuzzing**: Testing a program with huge numbers of automatically mutated inputs.
- EN: **fuzz driver**: Code passing fuzzer data to the function under test.
- EN: **code coverage**: How much of a program was executed during testing.

## Know first

- [Przykłady w poleceniu (few-shot) (Few-shot prompting and in-context learning)](https://aiatlasgraph.com/t/fewshotprompting.md)
- [Podpowiadanie kodu w edytorze (Inline code completion (fill-in-the-middle))](https://aiatlasgraph.com/t/codecompletion.md)

## Sources

- [How Effective Are They? Exploring Large Language Model Based Fuzz Driver Generation](<https://arxiv.org/abs/2307.12469>) `zhang-llm-fuzz-driver-generation-2024` · by Cen Zhang, Yaowen Zheng, Mingqiang Bai, Yeting Li, Wei Ma, Xiaofei Xie, Yuekang Li, Limin Sun, Yang Liu

---

AI Atlas revision 122 (2026-10-30) · HTML: https://aiatlasgraph.com/t/fuzzdrivergen · index: https://aiatlasgraph.com/llms.txt · everything: https://aiatlasgraph.com/llms-full.txt · updated 2026-10-30
