Fuzzing is the process of penetration testing an application for security-related bugs.
Two types of fuzzing currently exist: