Fuzzing For Software Security Testing and Quality Assurance
Fuzzing For Software Security Testing and Quality Assurance
assurance
Chapter 1 - Introduction :
--------------------------------------------------------------
>> the purpose of fuzzing is to send anomalous data to a system to
crash it, therefore revealing reliability problems.
>> A stack overflow involves memory on the stack getting corrupted due to improper
bounds checking when a memory write operation takes place
>> RATS tool to analyse the program file and lists out the details in it, it also
highlights the buffer overflow present in the code
>> Input Source and Input Space are similar terms that refer how data will be
generated to the application to be fuzzed, Input Space is the entire set of all
possible permutations that
sent to the target
>> a network server that needs to be able to run at very high speeds would not be
written in Python
or Ruby, because it would be too slow. C would be the best choice for speed. This
is because C provides the programmer the ability to manage low-level operations,
such as memory management (malloc(), free(), etc.).
>> Expected number bugs = Number of tests * Probability of finding a defect per
test