
Nikolai Shaplov
PostgresPro
16:40
26 September
45 min
Fuzzing research on PostgreSQL. How we performed it and what was found
Fuzzing research is feeding random input data to a program (or a part of it) (in fact, randomness is very conditional) and seeing what we get out of it. And we repeat it many times on many processors.
Fuzzing a large monolithic program complex is never a simple task. It requires extraordinary solutions. In this talk, I will tell you what and how we searched with the help of fuzzing and what results it led to.
- Investigation of data type parsing functions (input-functions): for warming up;
- Investigation of functions implementing operations between types (op-functions): it is better to consider the structure here;
- Network subsystem fuzzing: let's pretend we are POSIX calls, it's cheaper that way;
- Recovering disk context: we need Groundhog Day.
A story about funny bugs and ridiculous hand gestures will be included.
Video
Slides are available to logged-in participants