Genetic algorithm in code coverage guided fuzz testing

Esa Jääskelä · 2016

The security of computers is a growing concern when the amount of devices increases. New and more comprehensive testing methods need to be done to avoid damages to the users and their computers. Fuzzing is a testing method that inserts semi-valid input to the tested system and has before been considered as a good method for the security testing. However, it usually either does not get high code coverage or it requires a long set-up process or a source code analysis to achieve better code coverage. This work presents a genetic algorithm that automatically balances the probabilities of multiple mutators in a fuzzing program. This balancing aims to maximize the code coverage fuzz testing. After fuzzing two different open source libraries it was found that the grey-box approach in fuzzing gives better results than pure black-box fuzzing.

Read the paper · More papers on PaperTik