liu.seSearch for publications in DiVA
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Automatic Generation of Fuzzing Benchmark Suites: Generated Based on Genetic Algorithms
Linköping University, Department of Computer and Information Science.
2026 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesisAlternative title
Automatisk generering av testsviter för fuzzers (Swedish)
Abstract [en]

Security testing is performed to find security bugs which are harder to find since security bugs cannot be connected to function requirements. That makes it much harder to find security bugs. To make security testing easier, a technique known as fuzzing is used to generate random or semi-valid data to test the program's ability to handle malformed or malicious input. By catching security bugs before the program is released, the number of potential exploits that could be used by an attacker is decreased. To increase the efficiency of these fuzzers there have been works to create benchmark suites to evaluate fuzzer performance on different types of security bugs. These suites evaluate fuzzers in different ways and the results are usually not comparable. Some benchmark suites generate synthetic bugs while other manually re-introduces bugs or write intentionally buggy programs. The most difficult metric to evaluate fuzzers on is how many unique bugs were found by a fuzzer. A crash in the program from a fuzzer might be caused by a single bug or a set of bugs in the program, and it is very hard to know which bug caused the crash without manual inspection. The aim of this thesis was to develop a benchmark test suite that could automatically generate test suites for fuzzers that could automatically determine which bug caused the program to crash. This was done by re-introducing fixed known vulnerabilities into the latest stable version of a program. A diff of the code for each vulnerability from before it was fixed to the latest version was used and reduced with the use of a genetic algorithm. The genetic algorithm managed to reduce 99,6% of 250 000 lines of code changes to 974 lines of code changes from 25 diffs from five different projects in an average time of 4 hours per project. From the 25 reduced diffs only 19 could be used in the generated test suites with 4 of the selected bugs included on average for each project with a yield of 76% on average. However, more research is needed to investigate how the yield changes when more vulnerabilities are added and how well these re-introduced bugs are found by different fuzzers.

Place, publisher, year, edition, pages
2026. , p. 60
Keywords [en]
Security testing, fuzzing, fuzzing evaluation, vulnerabilities, genetic algorithms
National Category
Computer Sciences
Identifiers
URN: urn:nbn:se:liu:diva-224417ISRN: LIU-IDA/LITH-EX-A--26/012--SEOAI: oai:DiVA.org:liu-224417DiVA, id: diva2:2065020
Subject / course
Computer science
Presentation
2026-05-04, John von Neumann, Linköpings universitet, Linköping, 10:15 (English)
Supervisors
Examiners
Available from: 2026-06-03 Created: 2026-06-02 Last updated: 2026-06-03Bibliographically approved

Open Access in DiVA

fulltext(2740 kB)13 downloads
File information
File name FULLTEXT01.pdfFile size 2740 kBChecksum SHA-512
4a27201d8ba92123839f2838b41a24ba792d7b456a8ccbd401267b5e3c677ea92228cea54b0dc4921e7e5cc036a5163cd7363e0e1d0f8f9314f60ac3eef9525e
Type fulltextMimetype application/pdf

By organisation
Department of Computer and Information Science
Computer Sciences

Search outside of DiVA

GoogleGoogle Scholar
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 91 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • oxford
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf