Filesystem Fuzz Testing Framework
Name
Vladislav Alenitsev
Abstract
The need for software testing increases in proportion to the software's cyclomatic complexity. Even expert programmers might make mistakes while developing complex software. Discovering those mistakes is a difficult and time consuming task which can be simplified through different instruments. In the present thesis a fuzz testing framework was built, which can be used for finding time-of-check-to-time-of-use type bugs in Linux filesystems.
The main difference between this framework and already existing fuzzing tools, is that this framework executes its testing on filesystem level. As a result of this work, a flexible framework was constructed, which solves the data transfer problem and simplifies the implementation of different types of fuzzers. Despite the fact that the development was focused on Ext4 filesystem, it is possible to extend the tool to include other filesystems.
The main difference between this framework and already existing fuzzing tools, is that this framework executes its testing on filesystem level. As a result of this work, a flexible framework was constructed, which solves the data transfer problem and simplifies the implementation of different types of fuzzers. Despite the fact that the development was focused on Ext4 filesystem, it is possible to extend the tool to include other filesystems.
Graduation Thesis language
Estonian
Graduation Thesis type
Bachelor - Computer Science
Supervisor(s)
Meelis Roos; Kristjan Krips
Defence year
2017