--- ## **PoC** - fuzzing a kernel module Step-by-Step guide is [here](https://albocoder.github.io/fuzzing/exploitation/linux%20kernel/hacking/ai/gpt/llm/2023/11/27/GPT-syzkaller.html?utm_source=tldrsec.com&utm_medium=referral&utm_campaign=tl-dr-sec-211-llms-fuzzing-navigating-the-incident-response-maze-product-security-hashicorp) for fuzzing a kernel module using LLM generated content on system calls. ## **Details** By [albocoder](twitter.com/albocoder) [Video]() [Paper](https://albocoder.github.io/fuzzing/exploitation/linux%20kernel/hacking/ai/gpt/llm/2023/11/27/GPT-syzkaller.html?utm_source=tldrsec.com&utm_medium=referral&utm_campaign=tl-dr-sec-211-llms-fuzzing-navigating-the-incident-response-maze-product-security-hashicorp) **3/10/24 update:** A great thread [here](https://twitter.com/moyix/status/1765967602982027550)on using Claude Opus for this task, and the incredible performance it obtained. ## **PoC** - Fuzzing c/c++ libs [The code](https://github.com/google/oss-fuzz-gen) ## Details This framework generates fuzz targets for real-world `C`/`C++` projects with various Large Language Models (LLM) and benchmarks them via the [`OSS-Fuzz` platform](https://github.com/google/oss-fuzz). This work has really great prompt engineering which is [worth a look](https://storage.googleapis.com/oss-fuzz-llm-targets-public/jsoncpp-json-value-removeindex/prompts.txt). [paper](https://security.googleblog.com/2023/08/ai-powered-fuzzing-breaking-bug-hunting.html) ## **PoC** - Fuzzing network protocols [The code](https://github.com/ChatAFLndss/ChatAFL) ## Details Network protocol fuzzer based on benchmark for protocol fuzzing [ProFuzzBench](https://github.com/profuzzbench/profuzzbench) and [AFLNet](https://github.com/aflnet/aflnet). The LLM generates a grammar for the protocol and follows the state machine to send messages after mutating them. The LLM is also used to increase randomness of mutation and coverage. [paper](https://mengrj.github.io/files/chatafl.pdf) ## **Survey** - Large Language Models Based Fuzzing Techniques Comprehensive survey for LLM applications in fuzzing. Notable bullet points: - promt engineering based LLM fuzzers - ParaFuzz - synonym mutations - Fuzz4All - CHATAFL - Fuzz Driver Generation - BertRLFuzzer - seed mutation LLM fuzzers - [Titanfuzz](https://github.com/ise-uiuc/TitanFuzz) - CodeX generates data - Part of data is masked - Use fill in models to fill in the blanks - Fuzzing parsers - [Fuzz4all](https://zenodo.org/records/10456883) - use starcoder and chatgpt - [WhiteFox](https://github.com/google/oss-fuzz) - white box fuzzing - CHATAFL - LLM assistant for network protocols - Smart Fuzzing of 5G - ChatFuzz - InputBlaster - CHEMFUZZ - OSS-Fuzz - collect and analysis - Smart Fuzzing of 5G - Fuzz Driver Generation - [Understanding Zero-Shot Fuzz Driver Generation](https://sites.google.com/view/llm4fdg/home) [paper](https://arxiv.org/abs/2402.00350)